[OmniFaces utilities] The
createValueExpression()
method creates an editable value expression based on the given EL expression and the given type.Method:
You can use
this method in many situations. I've used it several times to create the
value expressions for composite components. Per example, let's have this
composite component usage:
<t:welcomeComponent
value="#{welcomeBean.value}" to="#{welcomeBean.to}"/>
Now, if we
add it programmatically, then it will be something like this (the includeCompositeComponent()
is another OmniFaces utilities):
import
org.omnifaces.util.Faces;
import
org.omnifaces.util.Components;
...
UIComponent
parent = Faces.getViewRoot().findComponent("welcomeId");
UIComponent composite = Components.includeCompositeComponent(parent, "customs", "/welcome.xhtml", "welcomeMsgId");
UIComponent composite = Components.includeCompositeComponent(parent, "customs", "/welcome.xhtml", "welcomeMsgId");
And, further
I've set the value expressions for the value and to attributes, as below:
composite.setValueExpression("value",
Components.createValueExpression("#{welcomeBean.value}",
java.lang.String.class));
composite.setValueExpression("to", Components.createValueExpression("#{welcomeBean.to}",
java.lang.String.class));
Niciun comentariu :
Trimiteți un comentariu