Let's
suppose that we have two input components as below:
<h:inputText
id="..." value="..."/>
<h:inputText
id="..." value="... "/>
By default, both
of them will be renderer via the renderer identified by the javax.faces.Text
renderer type. But, let's suppose that we want to use the default renderer for
the first input component, and a custom renderer (provided by us with renderer
type,
dummy.foo.Text) for the second input component. Well, we can try to use
the rendererType
attribute, but you will notice that this doesn't work.
<h:inputText
id="..." value="..."/>
<h:inputText
id="..." value="... " rendererType="dummy.foo.Text"/>
Bauke
Scholtz (aka BalusC), member of JSF EG , explains: " It will work. Tooling only
doesn't recognize is because it's not listed in taglib file which the tooling
depends on. You can alternatively use f:attribute for that."
So, until
this will work, we can use <f:attribute> as below:
<h:inputText id="..." value="..."/>
<h:inputText
id="..." value="...">
<f:attribute name="rendererType" value="dummy.foo.Text"/>
</h:inputText>
Well, I saved a lot of time with this approach because I was about to write a custom component for it! I am glad that I asked Bauke!
Well, I saved a lot of time with this approach because I was about to write a custom component for it! I am glad that I asked Bauke!
Niciun comentariu :
Trimiteți un comentariu