Jaxb json缺少一个元素数组的括号
我正在使用JAXB/Jersey(1.3)在RESTAPI中将java转换为json。 我读了很多关于这个问题的书,我尝试了这个,它工作了一半:Jaxb json缺少一个元素数组的括号,json,jaxb,brackets,Json,Jaxb,Brackets,我正在使用JAXB/Jersey(1.3)在RESTAPI中将java转换为json。 我读了很多关于这个问题的书,我尝试了这个,它工作了一半: @XmlRootElement public class ArrayWrapper { public List<String> list = new LinkedList<String>(); } 新包装器() 我得到{“aw”:{“list”:“test”} 有人知道如何修复吗?我不太确定
@XmlRootElement
public class ArrayWrapper
{
public List<String> list = new LinkedList<String>();
}
新包装器()我得到{“aw”:{“list”:“test”}
有人知道如何修复吗?我不太确定你是否能让它工作,所以我贡献我的一份力量 我最近也偶然发现了这个问题。我发现stackoverflow对我有帮助,但更有用的是这一点(介绍Jackson可能会有所帮助) 我希望这对你也有帮助。对我来说,解决这个问题只需5分钟。我用了这个,这篇文章的第一个答案就行了
@Provider
public class JAXBContextResolver implements ContextResolver<JAXBContext> {
private JAXBContext context;
private Class[] types = {ArrayWrapper.class,Wrapper.class};
public JAXBContextResolver() throws Exception {
MappedBuilder builder = JSONConfiguration.mapped();
builder.arrays("list");
builder.rootUnwrapping(true);
this.context = new JSONJAXBContext(builder.build(), types);
}
@XmlRootElement
public class Wrapper
{
public ArrayWrapper aw;
public Wrapper()
{
aw=new ArrayWrapper();
aw.list.add("test");
}
}