有没有办法从JSF组件中获取显然用于更新模型的属性路径?
我问我们有一个概念,后端验证了整个内容。不要问为什么,但我不允许使用JSF内置验证。 如果例如属性为null但不应为null,则后端提供ValidationException,ValidationException包含ValidationInfos列表,其中包含验证信息所属的属性的完整属性路径。
我的任务是找到一种方法将此信息映射回相应的JSF组件,以便能够显示正确的JSF组件的消息。 允许我向组件注册/附加某种小助手,以便更容易映射信息。
我的第一个方法是编写一个标记处理程序,并在标记处理程序中找出属性路径和根bean。但是我迷失了因为我们也使用了具有延迟值表达式的JSF 2.0组件,所以我现在看到一个值表达式,如vor示例#{cc.attrs.value},但我对“调用者”表达式感兴趣,例如#{aBean.street},它是用于更新模型的属性路径。
<composite:interface>
<composite:attribute name="value" required="true"/>
</composite:interface>
<composite:implementation>
<h:inputText value="#{cc.attrs.value}" styleClass="#{!component.valid ? 'col2 error' : 'col2'}">
<my-components:registerTagHandler value="#{cc.attrs.value}"/>
</h:inputText>
</composite:implementation>
也许还有其他方法或其他想法。获得一些提示/想法对我有帮助。
最诚挚的问候, 沃尔特
PS:对不起我粗俗的英语,因为我不是母语为英语的人。