如果字符串看起来像数字,例如.111 CXF不会将其作为字符串返回,而是作为数字返回.
<bean id="jsonProvider" class="org.apache.cxf.jaxrs.provider.json.JSONProvider">
<property name="serializeAsArray" value="true" />
<property name="arrayKeys" ref="jsonKeys" />
</bean>
Run Code Online (Sandbox Code Playgroud)
可以看出,我使用的是JSON提供程序.如何强制它,提供正确的JSON字符串?
{object:{"name":"111"}} instead of {object:{"name":111}}
Run Code Online (Sandbox Code Playgroud)
提前致谢...
小智 6
您可以将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>
Run Code Online (Sandbox Code Playgroud)
您可以在Jettison中找到有关此缺陷的更多信息 http://jira.codehaus.org/browse/JETTISON-61 http://jira.codehaus.org/browse/JETTISON-36
归档时间: |
|
查看次数: |
2668 次 |
最近记录: |