【发布时间】:2018-12-12 11:42:45
【问题描述】:
工具:
Weblogic 12c
球衣 2.21.1
杰克逊 2
public class Profile implements Serializable
{
private List<Status> orderStatus;
public void setOrderStatus(List<Status> orderStatus)
{
this.orderStatus = orderStatus;
}
public void getOrderStatus()
{
return orderStatus;
}
我有一个如上所述的简单 POJO 类。
我在使用Jersey 2 with Jackson 时面临以下问题。
1) 当 Profile 类被序列化时,JSON 被创建为:{"OrderStatus":[{}]}
2)所以生成的密钥是OrderStatus 而不是orderStatus
3) 当这个 JSON 被反序列化时,它会抛出错误 -
Caused by: org.codehaus.jackson.map.exc.UnrecognizedPropertyException: Unrecognized field "OrderStatus" since it cannot
find field with OrderStatus but has field as orderStatus
I have tried adding :
@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.ANY,getterVisibility = JsonAutoDetect.Visibility.NONE, setterVisibility = JsonAutoDetect.Visibility.NONE)
希望序列化只使用字段作为键(不会使用属性),生成JSON为{"orderStatus":[{}]} .
但是它不工作并且抛出同样的错误。 有什么方法可以将 POJO 序列化为字段而不是属性。
有人可以帮忙吗?
【问题讨论】:
标签: jersey-2.0 weblogic12c jackson2