2017-04-12 75 views
2

我想从JSP发送值到struts Bean。在Bean中,我有一张我想要设置的值。它正在为所有其他的关键。但是当密钥名称如下所示时,它不接受。struts2 acceptParamNames不适用于以下值

键名:Proximus Voice Continuity.CUSTOMERID.value

在我的Struts配置我有如下配置:

<interceptor-ref name="params"> 
    <!-- For maps to work --> 
    <param name="acceptParamNames">[a-zA-Z0-9\.\]\[\(\)_'\s"/-]+</param> 
</interceptor-ref> 
+0

为什么首先修改'acceptParamNames'?不清楚键名是什么。 –

回答

1

我测试过你的正则表达式,它指定的键匹配。但是,您的密钥由其他不能在OGNL表达式中使用的密钥组成。

如果您从拦截器中删除acceptParamNames参数,则您的密钥与默认模式列表不匹配。

此正则表达式模式是默认使用

\w+((\.\w+)|(\[\d+\])|(\(\d+\))| (\['(\w|[\u4e00-\u9fa5])+'\])|(\('(\w|[\u4e00-\u9fa5])+'\)))* 

如果您删除键名称空间则此模式匹配。

相关问题