[英]Jettison and JAXB Automatically Changes Data Type in JSON Response
我正在使用Resteasy 2.0.1.GA和Resteasy-jettison-provider-1.2.GA与JAXB annontations,每当我有一个包含所有数字的String属性(即String groupName="1111";
)时,JSON响应将显示它通过删除双引号作为数字。 如果我将其更改为String groupName="oneoneoneoneone";
JSON响应会将其视为Sting并在响应中保留双引号。 反正有没有让Jettison提供商根据其类型而不是其价值严格解释数据的响应?
这似乎是Jettison隐含的“特征”; 它试图反省实际数据,并找出最适合的类型。 我之前遇到过这种情况,令人气愤。
我强烈建议完全抛弃Jettison,并使用RestEasy Jackson支持 。 杰克逊是一个质量更好的图书馆,并没有遭受这些“有用”的功能。 它也像Jettison一样支持JAXB注释 。
具有在服务器启动时设置以下系统属性的列表器。
System.setProperty("jettison.mapped.typeconverter.class"
,"org.codehaus.jettison.mapped.SimpleConverter");
一旦属性设置为simpleConverter
则jettison将值始终作为字符串输出,无论数据类型是字符串还是int都无关紧要。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.