Java 提交表单而不进行bean验证
我有一个表单,它有一个域模型,其中包含一些Java 提交表单而不进行bean验证,java,validation,jsf-2,bean-validation,Java,Validation,Jsf 2,Bean Validation,我有一个表单,它有一个域模型,其中包含一些JSR-303验证bean。现在,我想包括一个“保存草稿”功能,无需任何验证。如果我在相应的commandButton上设置了immediate=true,则跳过验证,但表单也会提交 有没有办法在“保存草稿”操作中更新模型?使用where on设置disabled属性 如果计算结果为true,则将跳过与输入值关联的属性上的所有bean验证。您应该只确保在验证阶段发生之前设置了布尔草稿属性。例如 与 或者,如果它是一个视图范围的bean,@Mana
JSR-303
验证bean。现在,我想包括一个“保存草稿”功能,无需任何验证。如果我在相应的commandButton上设置了immediate=true
,则跳过验证,但表单也会提交
有没有办法在“保存草稿”操作中更新模型?使用where on设置disabled
属性
如果计算结果为true
,则将跳过与输入值关联的属性上的所有bean验证。您应该只确保在验证阶段发生之前设置了布尔草稿
属性。例如
与
或者,如果它是一个视图范围的bean,@ManagedProperty
在其上不起作用:
public boolean isDraft() {
return "true".equals(FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("draft"));
}
另一种方法是通过确定按钮的参数名称来检查按钮是否按下。例如,使用以下表单和按钮ID
再次感谢巴卢斯克。工作起来很有魅力。
public boolean isDraft() {
return "true".equals(FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("draft"));
}