我正在使用Primefaces Datatable组件。此数据表组件在浏览器上动态创建隐藏字段。
<input type="hidden" id="formId:activitydescription_selection" name="formId:activitydescription_selection" autocomplete="off" value="" />
Primefaces数据表代码如下
<p:dataTable id="activitydescription" var="type"
value="#{activityBean.activityList}" rows="#{activityBean.rowNo}" rowKey="#{type.activitySchemeId}"
selection="#{activityBean.activityDTO}"
emptyMessage="No value found with given criteria"
paginatorPosition="bottom" sortMode="single" paginator="#{empty activityBean.activityList ? 'false':'true' }"
dynamic="true"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink}"
rowIndexVar="rowIndex">
现在提交页面时,HIDV认为在浏览器上动态创建的隐藏字段是一个黑客攻击的情况,从而重定向到控制台日志的错误页面
org.hdiv.logs.Logger log INVALID_PARAMETER_NAME;/hseadmin/pages/secured/admin/Layout.xhtml;**formId:activitydescription_selection**;;0:0:0:0:0:0:0:1;0:0:0:0:0:0:0:1;anonymous
在我的hdiv-config.xml文件中,我修改了文件,以便HDIV忽略此字段发生时的验证
<hdiv:paramsWithoutValidation>
<hdiv:mapping url=".*" parameters="formId:activitydescription_selection"/>
</hdiv:paramsWithoutValidation>
但没有运气仍然是相同的控制台错误,HDIV重定向到错误页面。 有人可以帮我解决如何在HDIV上避免这些验证吗?
答案 0 :(得分:0)
尝试..
<property name="userStartParameters">
<list>
<value>hidden1Name</value>
<value>hidden2Name</value>
</list>
</property>
答案 1 :(得分:0)
HDIV不支持Primefaces组件,只支持<h:dataTable>
等标准JSF组件。