Overview
Other MyFaces Extensions
- ExtVal
- Ext-Script
- [Orchestra]
- [Portlet Bridge]
Community
Development
Sponsorship
Your browser does not support iframes
...
CODI provides default values via CDI beans. Therefore, it's possible to provide an alternative bean (via the std. @Specializes
or @Alternative
mechanism provided by CDI). Furthermore, there are add-ons e.g. for using the web.xml for the configuration (see External Resources).
Note | ||
---|---|---|
| ||
With CODI v0.9.2+ we made it easier for users to customize just single values. The default implementations are already available in the API modules (instead of the interfaces). So you have to use |
...
| |
In case of those versions of Weld you have to use the alternative-implementation module |
Note | ||
---|---|---|
| ||
In case of Weld v1.1.4+ you can use @Specializes again and you don't need alternative-implementation module |
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
@Specializes @ApplicationScoped public class CustomConversationConfig extends ConversationConfig { @Override public int getConversationTimeoutInMinutes() { return 45; } } |
...
...
A ConversationFactory
is responsible for creating new Conversation
instances (btw. EditableConversation
) based on a given ConversationKey
and ConversationConfig
.
...
The default implementation is a bean - so it's possible to use the @Alternative
mechanism of CDI for replacing it.
A WindowHandler
that is aware of the JSF lifecycle.
Component libs like Trinidad use very special renderkits. This factory allows support-modules to customize the default behavior of CODI.
A ViewConfigExtractor
creates all view-config meta-data for a given ViewConfig
class and returns the result as EditableViewConfigDescriptor
. It also uses LifecycleAwarePageBeanDescriptor
which is an extended PageBeanDescriptor
. This descriptor exposes all supported view-controller methods as well as RequestLifecycleCallbackEntry
for a given JSF PhaseId which provides the before- and after-callbacks.
With a custom implementation it's possible to customize e.g. the naming convention of the pages. If the custom implementation is annotated with @Advanced
it's possible to wrap the default implementation for delegating to it. The only requirement is a field called defaultViewConfigExtractor
. Furthermore, because this artifact is used during the bootstrapping process of CDI it's required to configure it for the environment - see Environment-Config Options