我在 JSF 中有一个像这样的简单表单
<h:form>
<p:inputText id="name1" value="#{bean.name1}" maxlength="100" required="true"/>
<p:inputText id="contact1" value="#{bean.contact1}" required="true"/>
<p:commandButton
value="Save"
action="#{bean.saveForm()}"
validateClient="true" />
</h:form>
我尝试删除元素检查器(F12 Chrome)中的一个输入文本,它实际上绕过了该字段的“必需”验证。
在我的 web.xml 中,我按照在 JSF 中的建议包含了以下代码,防止表单篡改的最佳方法是什么?
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>server</param-value>
</context-param>
我读到 JSF 已经使用上述方法自动将 viewState 存储在服务器中,但事实证明,我仍然可以绕过它。我错过了什么吗?
任何帮助将不胜感激。谢谢!