我们试图使用Jackson 1.5来利用它提供的一些多态处理,但是看起来泽西带来了它自己的过时版本的Jackson(1.1.1)。在测试Jersey序列化的JSON时,我们得到的结果与单元测试中手动序列化的结果不同。有什么方法可以覆盖或更新泽西的杰克逊版本?
{"id":"40","ticketProps":[{"id":"28","field":{"id":"28","name":"WXYZ","strict":"false","valueType":"STRING"},"value":"W"},{"id":"29","field":{"id":"29","name":"SEAT","strict":"false","valueType":"STRING"},"value":"4A"}]}
{"id":"40","ticketProps":[{"id":"28","field":{}},{"id":"29","field":{}}],"name":null}
不幸的是,使用杰克逊1.1.1不是一个选项。有没有办法让泽西使用杰克逊1.5?正在考虑设置它在泽西配置类或什么...
这是使用maven吗?在我看来,如果你不使用maven,Jersey会分发给单独的jackson JAR。 – skaffman 2010-07-12 19:36:48
是的,这是Maven项目的一部分。您建议我自己下拉泽西岛并指向那个工件,而不是java.net Maven回购站上的工件? – gmoore 2010-07-12 19:45:16
你应该只需要添加对Jackson 1.5的依赖关系并定义冲突解决策略,就可以选择1.5超过1.1。 – StaxMan 2010-07-13 20:32:08