如果一个字符串看起来像一个数字,例如。 111 CXF 不将其作为字符串返回,而是作为数字返回。
<bean id="jsonProvider" class="org.apache.cxf.jaxrs.provider.json.JSONProvider">
<property name="serializeAsArray" value="true" />
<property name="arrayKeys" ref="jsonKeys" />
</bean>
正如您所看到的,我使用 JSON 提供程序。
我如何强制它提供正确的 JSON 字符串?
{object:{"name":"111"}} instead of {object:{"name":111}}
提前致谢...
您可以将 SimpleConverter 添加到 JSONProvider,这样它就不会将字符串转换为数字。默认情况下它使用DefaultConverter。但请确保相关 bean 作为字段的字符串类型。
<bean id="simpleConverter" class="org.codehaus.jettison.mapped.SimpleConverter"/>
<bean id="jsonProvider" class="org.apache.cxf.jaxrs.provider.JSONProvider">
<property name="typeConverter" ref="simpleConverter"/>
</bean>
您可以在 Jetison 中找到有关此缺陷的更多信息http://jira.codehaus.org/browse/JETTISON-61 http://jira.codehaus.org/browse/JETTISON-61
http://jira.codehaus.org/browse/JETTISON-36 http://jira.codehaus.org/browse/JETTISON-36
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)