如何在与primefaces数据表组件集成时忽略HDIV中的验证



我使用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?

try.

<property name="userStartParameters">  
<list>
  <value>hidden1Name</value>
  <value>hidden2Name</value>
</list>
</property>

HDIV不支持Primefaces组件,只支持标准的JSF组件,如<h:dataTable>

http://www.hdiv.org/hdiv-documentation-single/doc.html

相关内容

  • 没有找到相关文章

最新更新