jerseyのデフォルトjsonマッパーは、リストの要素サイズが1のときにJSONオブジェクトを与え、要素のサイズが2以上のときにJSON配列を与えるので、jacksonをrest jerseyプロジェクトに追加しました。Rest jsonでジャクソン@typeが追加されていないJSON
ジャーソンのデフォルトjsonマッパー(デフォルトではidk)は、@ typeと呼ばれる諺を与えることができます.Jacksonを実装するとき、吹き出しはJSONリターンに追加されません。
私はウッシング前:@XmlRootElement で@XmlType(名=「型名」)は、今私は@JsonTypeInfo、ジャクソン2.5.4および2.22.2が、成功しません@JsonTypeNameにしようとしています。
@type proppertyを追加するにはどうすればよいですか?
編集1:
<servlet>
<servlet-name>jersey-servlet</servlet-name>
<servlet-class>com.sun.jersey.spi.spring.container.servlet.SpringServlet</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>my.package.webservice</param-value>
</init-param>
<init-param>
<param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
編集2:(追加のweb.xml)web.xmlの
私はこれを持っているよう
jackson-jaxrs-json-provider:2.7.4
jersey-media-json-jackson:2.22.2
jackson-annotations:2.7.4
jackson-jaxrs-base:2.7.4
jackson-databind:2.7.4
jackson-core:2.7.4
jackson-module-jaxb-annotations:2.7.4
jersey-entity-filtering:2.22.2
jersey-common:2.22.2
どのサーバーを使用していますか? –
私はJBoss AS 7.1.1を使用しています –
あなたのジャクソン2.xが使用されていることを確認するための確認を行いましたか? AFAIK、Jackson 1.xはJBoss 7のデフォルトのJSONプロバイダです –