如何为复合组件中包含的所有组件显示一条错误消息

时间:2017-06-22 07:09:52

标签: jsf

大家。我的页面上有很少的复合组件,验证失败后,每个组件都会在其中添加自己的验证消息。 我在http://docs.oracle.com/cd/E28271_01/web.1111/e28163/af_message.htm的17.4中找到了所需的能力,也许有人知道用Primefaces制作它的方法吗?

提前致谢!( - :

1 个答案:

答案 0 :(得分:0)

这个问题的解决方案很少。

  1. 那个在Link an error message to multiple UIComponent in JSF2中描述但对我不起作用的那个,因为我有六个相同的复合成分。

  2. 与最后一个组件的验证相同,但使用

    <h:inputHidden id=''datecheck" validator="#{bb.validateSomeThing}"value="needed"/>

    应该放在所有组件之后。

  3. 我的解决方案是

    <h:panelGrid id="example"> <f:event type="postValidate" listener="#{testBean.inputValidation}"/> <p:column> <my:compositeComponent param1="#{x.a[0]}" param2="#{y]}" update="#{something}" readonly="#{not editAccess}"/> </p:column> <p:column> <my:compositeComponent param1="#{x.a[1]}" param2="#{y]}" update="#{something}" readonly="#{not editAccess}"/> </p:column> <p:column> <my:compositeComponent param1="#{x.a[2]}" param2="#{y]}" update="#{something}" readonly="#{not editAccess}"/> </p:column> ... </h:panelGrid>

  4. 有关详情,建议您阅读Core JavaServer Faces (3rd Edition)

    第7章验证多个组件之间的关系和第8章多组件验证可能很有用。