The Design Time Application Manager |
The DTAppMgr is comprised of the following main components:
org.eclipse.jst.jsf.designtime.context.AbstractDTExternalContextFactory
.
To set your external context factory as the current one, use
DesignTimeApplicationManager.setExternalContextProvider(String)
.
Note that by changing the current ExternalContextProvider on a project,
you will significantly change the behavior of how variables are
resolved in EL expressions.
Meta-data Trait |
Valid Values |
Description |
contributes-value-binding |
true or false |
This
property alerts the model
processor that this attribute contributes a variable to the EL name
space at runtime. If no further meta-data is provided, this will
cause a default variable using the text of the attribute as the name to
be added to the name space for this document at 'request' scope.
The variable will have no properties or methods. More
information about the variable can be provided using the extra
meta-data defined below. |
value-binding-scope |
'request', 'session', 'application' |
This property will set the runtime scope for the contribute variable. The default is 'request' if not provided. |
value-binding-symbol-factory |
An corresponding to a 'factoryId' field on a valid extension of 'org.eclipse.jst.jsf.common.contextSymbolFactory'. |
If you wish to customize the
variable created for this attribute, you can specify this factory
extension. Your factory will be passed all available context,
including DOM context, with which you can decide how to create a custom
symbol for your variable. See Contributing EL Variables for
more details. |
<entity id="loadBundle"> <entity id="var"> <trait id="contributes-value-binding"> <value>true</value> </trait> <trait id="value-binding-scope"> <value>request</value> </trait> <trait id="value-binding-symbol-factory"> <value>org.eclipse.jst.jsf.designtime.core.loadBundle</value> </trait> </entity> </entity>
This fragment defines meta-data for the attribute 'var' of tag element 'loadBundle' (the uri for the tag library is declared in the extension point). The meta-data tells the processor to add a variable with scope 'request' using the factory defined by the extension factory id 'org.eclipse.jst.jsf.designtime.core.loadBundle'.