繁体   English   中英

RESTeasy,JSON和null字段

[英]RESTeasy, JSON and null fields

当RESTeasy将POJO编组为XML时,默认情况下它将跳过空值。

但是,在封送到JSON时,包含null属性。 有没有办法强制JSON输出匹配XML输出?

我也试过@XmlElement(required = false,nillable = true))并且它没有用。 我只使用了RESTeasy with Annotations。

使用Jackson 2.设置以下提供程序:

package com.recruitinghop.swagger;

import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.ext.Provider;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider;
import com.fasterxml.jackson.module.scala.DefaultScalaModule;

@Provider
@Produces(MediaType.APPLICATION_JSON)
public class JacksonJsonProvider extends JacksonJaxbJsonProvider {

    public JacksonJsonProvider() {
          ObjectMapper mapper = new ObjectMapper();
          mapper.registerModule(new DefaultScalaModule());
          mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
          mapper.setSerializationInclusion(JsonInclude.Include.NON_DEFAULT);
          mapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);
          mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
          super.setMapper(mapper);
    }

}

Scala模块是可选的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM