我有一个JSF 2.0应用程序,它也使用Primefaces 3.3.目前有一个很好的功能,如果相关<p:inputText>使用required="true"属性,标签用星号装饰.
此字段绑定到bean属性,该属性使用@NotNull验证约束进行注释.required="true"当bean属性已经使用@NotNull注释时,似乎多余且容易出错也必须添加XHTML.
是否有一个钩子或某种方法来自动装饰与@NotNull绑定到属性的组件的标签?
任何想法或建议都非常感谢.
注意:这是一个黑客行为。由于使用内省,它可能会对性能产生影响
在基本层面上,如果字段用 注释,您需要了解什么@NotNull。在合理的位置执行此检查,例如@PostConstruct视图作用域 bean。声明一个全局变量来确定所需的属性
boolean requiredAttribute;
@PostConstruct
public void init{
Field theField = this.getClass().getField("theField");
NotNull theAnnotation = theField.getAnnotation(NotNull.class);
if(theAnnotation != null){
requiredAttribute = true;
}
}
Run Code Online (Sandbox Code Playgroud)将属性绑定required到支持 bean 中的变量
<p:inputText id="inputit" required="#{myBean.requiredAttribute}"/>
Run Code Online (Sandbox Code Playgroud)| 归档时间: |
|
| 查看次数: |
1003 次 |
| 最近记录: |