如何忽略复合组件中的空属性?

时间:2011-08-10 15:14:16

标签: jsf attributes jsf-2 composite-component

如何忽略复合组件的空属性? 例如:

<cc:interface>
<cc:attribute name="styleClass" />
<cc:attribute name="value" />
</cc:interface>

<cc:implementation>
<h:inputText styleClass="#{cc.attrs.styleClass}"
    value="#{cc.attrs.value}">
    <cc:insertChildren />
</h:inputText>
</cc:implementation>

当我使用这个组件时:

<my:inputText />

它呈现如下:

<input type="text" class="" />

如何在没有空类属性的情况下获得输出?

1 个答案:

答案 0 :(得分:1)

你可以像这样使用它:

<my:inputText styleClass="myClass"/>

或者您可以在您的组件中设置默认值:

<cc:attribute name="styleClass" default="myClass"/>

如果未设置styleClass,则将其设置为默认值。