使用jersey时混合使用jackson核心注释和jaxb注释



我在一个jaxb注释类中有一个方法,我想编组一个值,当且仅当它编组为带有jersey 1.16的JSON时,它在下面使用jackson 1.9。我希望使用jaxb的@XmlTransient和jackson的@JsonProperty以这样的方式完成这项工作:

@XmlRootElement
public class SomeClass {  
// Other XmlElement annotated methods
@XmlTransient
@JsonProperty(value="type")
public String getType(){
return this.type;
}
}

但在马歇尔看来,这根本不是。没有遇到任何错误。

  1. 我需要切换Jersey以使用POJOMappingFeature,它使用Jackson
  2. 我需要不包括XmlTransient,否则该元素似乎被忽略了。在某些情况下,我认为getType可能仍然在XML中序列化,但是,我在实际的类中使用了propOrder,并且因为没有在getType上声明XmlElement,所以这不是问题。对于其他可能存在问题的情况,我认为您需要使用类似jsonGetType的东西,以确保它在默认情况下没有序列化

最新更新