我们最近从JSF 1.x升级到JSF 2.x
我们已经有2年的运行应用程序。 我们面临的问题是:
我们在JSF中有以下代码
<h:inputText id="DescriptionText" required="true" value="#{scenarioDesc}">
<f:converter converterId="RequiredConvertor"/>
<f:attribute name="label" value="#{giamsBundle['lbl.request.summary.desc.validation']}"/>
</h:inputText>
我们使用所需的转换器获取标签值,如下所示
String componentLabel = (String) component.getAttributes().get("label");
但componentLabel返回null。我们定义资源包名称时无法获取值,但是当我们将任何字符串添加到f:attribute标记的值
时,它可以正常工作请帮忙。
答案 0 :(得分:0)
这在Mojarra 2.1.27中对我来说很好。但是,由于您正在设置现有组件属性的属性,因此其他实现可能无法以相同的顺序处理命名。
要修复,我会使用现有的标签属性:
<h:inputText id="DescriptionText" required="true" value="#{scenarioDesc}"
label="${giamsBundle['lbl.request.summary.desc.validation']}"
converter="RequiredConvertor" />
或者,使用与“标签”不同的属性名称。