Mar*_*eon 4 java json list jaxb jersey
我们有一个Java列表的对象,它是通过泽西创建的JSON编组的.
List被称为"行".当有数据我们有:
{"records":"1","page":"1","total":"1","rows":[{"id":"692334","cell":["ECS","D","201009","","0","ABCD","11","11","","201009"]}]}
Run Code Online (Sandbox Code Playgroud)
当我们没有数据时:
{"page":0,"records":0,"total":0}
Run Code Online (Sandbox Code Playgroud)
rows
即使列表的大小为0,我们怎样才能使泽西包括该字段?我们想要的是:
{"page":0,"records":0,"total":0,"rows":[]}
Run Code Online (Sandbox Code Playgroud)
请注意,我们已经在使用JAXB ContextResolver来确保单行的JSON正确.不确定我们是否可以配置此解析器来解决我们的问题.
使用Jackson JAX-RS提供程序而不是替代品(badgerfish/jettison),它不进行XML到JSON的转换.丢失数组很可能是由于此转换造成的.有多种方法可以配置它(jersey邮件列表应该有一些),最新版本可以直接通过Jersey API公开它.