spring cxf 集合(仅含一个元素)json 不正常 ,急急急急急急~~~

DAO 2014-11-12 10:20:55

public class User{
String id;
String name;
//get and set
}

public class Root{
String returnCode;
List<User> userList;
//get and set
}

当root.userList 仅包含一个元素时,Json格式为
{userList:{id:1, name:n}}
两个时格式正常:
{userList:[{id:1, name:n},{id:2, name:n}]}
怎么样让一个元素时,集合外层也含 “[ ]” ?????
网上说设置:
<bean id="jsonProvider" class="org.apache.cxf.jaxrs.provider.json.JSONProvider">
<property name="serializeAsArray" value="true" />
</bean>
试过了,没有用,求大神给条出路~~~~
...全文
250 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
DAO 2015-02-09
  • 打赏
  • 举报
回复
<!--把成员变量配置在此处即可--> <util:list id="jsonKeys"> <value>appList</value> </util:list> <util:list id="jsonTypes"> <value>application/json</value> <value>application/jettison</value> </util:list> <bean id="jsonProvider" class="org.apache.cxf.jaxrs.provider.JSONProvider"> <property name="arrayKeys" ref="jsonKeys" /> <property name="serializeAsArray" value="true" /> <property name="produceMediaTypes" ref="jsonTypes" /> <property name="consumeMediaTypes" ref="jsonTypes" /> </bean>
  • 打赏
  • 举报
回复
不能手动将UserList转成 JsonArray么?
qq_17390259 2014-11-13
  • 打赏
  • 举报
回复
cxf传递复杂对象挺麻烦的,建议传递xml然后在客户端解析比较好
suciver 2014-11-13
  • 打赏
  • 举报
回复
楼主是输出json的时候吗,那你替换JSONProvider即可,之前做jaxrs的cxf时做过,你可以自己定义个JSONProvider继承org.apache.cxf.jaxrs.provider.json.JSONProvider只需对public boolean isWriteable(Class<?> type, Type genericType, Annotation[] anns, MediaType mt) ;方法和public void writeTo(T obj, Class<?> cls, Type genericType,Annotation[] anns, MediaType m,MultivaluedMap<String, Object> headers, OutputStream os) throws IOException方法进行重写,isWriteable方法是用来writeTo之前判断是否能输出,writeTo则是真正的输出方法,原来的JSONProvider是用JAXB方式输出json对象的,你可以改成用其他的例如json-lib ,jackson, gson,这种json的标准工具包来序列化输出,jackson的有提供jaxrs的jsonProvider的第三方jar你可以到maven的中心仓库搜jackson-jaxrs就能看到。写好后只需在你spring配置cxf的地方 <jaxrs:server> <jaxrs:providers> <ref bean="你的jsonProvider"/> </jaxrs:providers> </jaxrs:server> 关于Provider的配置cxf的官网说的非常详细http://cxf.apache.org/docs/jax-rs-data-bindings.html#JAX-RSDataBindings-ConfiguringJSONprovider

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧