Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
struts2 json插件可以接受大写参数吗?_Struts2_Camelcasing_Struts2 Json Plugin - Fatal编程技术网

struts2 json插件可以接受大写参数吗?

struts2 json插件可以接受大写参数吗?,struts2,camelcasing,struts2-json-plugin,Struts2,Camelcasing,Struts2 Json Plugin,我正在使用struts2(struts2 json插件)来处理Content Type=application/json请求 在params样式为小写的情况下,一切都很好,比如{“region”:“China”,“version”:“v4”} 但是当params是上驼峰式时,它就不能工作了,比如{“Region”:“China”,“Version”:“v4”} 我已经阅读了struts文档(),但仍然没有找到解决方法 这是我的struts.xml的一部分: 它无法处理不区分大小写的json对象,

我正在使用struts2(struts2 json插件)来处理
Content Type=application/json
请求

在params样式为小写的情况下,一切都很好,比如
{“region”:“China”,“version”:“v4”}

但是当params是上驼峰式时,它就不能工作了,比如
{“Region”:“China”,“Version”:“v4”}

我已经阅读了struts文档(),但仍然没有找到解决方法

这是我的struts.xml的一部分:


它无法处理不区分大小写的json对象,因为名称被转换为action类的Java类变量,这些变量区分大小写

json插件包含名为
json
的拦截器,您应该将其配置为从请求中反序列化json内容的操作。答案指向一些负责序列化/反序列化和填充Java对象的类

如果不想填充操作,则不应使用此拦截器。而是使用此库或任何其他第三方库手动解析请求,以获取
JSONObject
。或者您可以重写拦截器并注释使用
JSONPopulator
但使用
JSONUtil
反序列化对象的代码


如果要将具有小写名称的json对象转换为camel case,则应在填充过程之前重写其中一个类,以对应于Java类变量名称。

它无法处理不区分大小写的json对象,因为名称被转换为大小写的action类的Java类变量敏感

json插件包含名为
json
的拦截器,您应该将其配置为从请求中反序列化json内容的操作。答案指向一些负责序列化/反序列化和填充Java对象的类

如果不想填充操作,则不应使用此拦截器。而是使用此库或任何其他第三方库手动解析请求,以获取
JSONObject
。或者您可以重写拦截器并注释使用
JSONPopulator
但使用
JSONUtil
反序列化对象的代码

如果您想将具有小写名称的json对象转换为camel case,那么您应该在填充过程之前重写其中一个类,以对应于Java类变量名称