JBoss 7.1.1의 WAR 아카이브에 Jax-rs 끝점이 배포되었습니다. JSON 응답에서 내 null
필드 이름을 포함시키지 않으므로 @JsonSerialize
을 입력하십시오.JBoss 7.1.1에서 maven dependecy가 제공되도록 설정된 경우 @@JsonSerialize가 무시되었습니다.
class MyResponse {
private Long id;
@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL)
private String name;
private List<String> addresses;
// getters and setters
}
내 pom.xml
는 resteasy-jackson-provider
에 대한 scope
가이 주석을 무시하고 JSON 응답에 null
을 반환 provided
로 설정되어 다음
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxrs</artifactId>
<version>2.3.2.Final</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jackson-provider</artifactId>
<version>2.3.2.Final</version>
<scope>provided</scope>
</dependency>
있습니다. 그러나 내가 Maven 종속성에서 scope
을 제거하면 작동합니다.
여기 페이지에서 https://docs.jboss.org/author/display/AS71/Implicit+module+dependencies+for+deployments Jax-RS 배포가 발견되면 JBoss가이 모듈을 자동로드해야합니다.
이제 이것이 버그인지 그리고이 종속성을 포함해야하는지 (잘 모르겠다면 provided
). 아니면 뭔가 잘못하고있는 것일까 요?
Mark, 제게는 JBoss EAP 6.3을 사용하고 있습니다. –