Я верю, что джерси использует джексон для сериализации. Для исключения нулевых полей из сериализованного json попробуйте аннотировать целевой класс с помощью @JsonInclude(Include.NON_NULL)
. Как объяснено в этой записи.
Если вы не можете изменять объекты, вы должны настроить свой собственный ObjectMapper:
@Provider
public class MyObjectMapperProvider implements ContextResolver {
final ObjectMapper mapper;
public MyObjectMapperProvider() {
mapper = new ObjectMapper();
mapper.setSerializationInclusion(Include.NON_NULL);
}
@Override
public ObjectMapper getContext(Class> type) {
return mapper
}
}
, а затем зарегистрировать своего настраиваемого поставщика клиенту:
Client client = ClientBuilder
.newClient()
.register(MyObjectMapperProvider.class)
.register(JacksonFeature.class);
описано здесь