在春季表格中,我隐藏了输入
喜欢
<form:form method="post" modelAttribute="order" name="..." action="processListOrdersSelect.html">
<p>
<label for="username">Select Username:</label>
<form:select path="username">
<form:option value="j2ee" label="j2ee" />
</form:select>
</p>
<input type="hidden" name="test" value="test" />
<form:button onclick="submit()">View Orders</form:button>
</form:form>
当我提交此表单时,Hdiv安全性会授予我未经授权的访问权限, 我认为Hdiv在为参数篡改生成Hdiv _HDIV_STATE_时没有使用输入的隐藏字段。 如何让Hdiv使用我的隐藏输入而不使用
<form:hidden path="test" value="test" />
因为该属性标签没有任何值bean。 我希望Hdiv验证隐藏的输入,不要使用
跳过它们<hdiv:paramsWithoutValidation>
<hdiv:mapping url="/.*" parameters="test" />
</hdiv:paramsWithoutValidation>
请告诉我如何解决这个问题?
答案 0 :(得分:1)
Hdiv知道使用<form:hidden>
之类的标签生成的表单字段,因为参数的值是从Spring MVC标签获得的。
如果生成的表单字段没有Spring MVC标记,则Hdiv不会对其进行处理,并将其视为客户端包含的新字段。
使用Spring标记或排除问题中提到的参数验证。