I have written a custom facelet component which looks like this:
<ice:inputText
styleClass="datepicker"
required="#{required}"
id="#{cid}"
disabled="#{disabled }"
validator="notnull"
value="#{value}"
rendered="#{empty binding }">
</ice:inputText>
<ice:inputText
styleClass="datepicker"
required="#{required}"
id="#{cid}"
disabled="#{disabled }"
validator="notnull"
value="#{value}"
binding="#{binding}"
rendered="#{not empty binding}">
</ice:inputText>
As you can see there are two options, binding is set or binding is not set. The problem now is that if I use the control by using a custom tag (ft:dateInput) and do NOT set a binding value this value is there non-the-less.
<ft:dateInput cid="myId"
required="true"
value="#{mybean.user.demoDate}"
disabled="#{mybean.confirmMode }"
label="Completed Demo Date:" />
I added a debug output #{binding} and saw that it evaluates to the last com.icesoft.faces.component.ext.HtmlInputText object in the tag. Very strange!
So my question: is this behaviour normal, is it a bug? Why the single tags are sharing values? Thanks.