不能对泽西岛中的单个对象使用自定义对象映射器(适用于集合)



我在玻璃鱼服务器上使用最新版本的泽西岛(2.13)以及最新版本的杰克逊(版本2.4)。我已经编写并注册了一个自定义 ObjectMapper,但它似乎只有集合由我的自定义对象映射器序列化。

我在此页面上看到了类似的问题:https://java.net/jira/browse/GLASSFISH-20815但是那里提出的解决方法对我不起作用。

我的球衣映射器提供程序类:

@Providerpublic class JerseyMapperProvider 实现 ContextResolver {

private static ObjectMapper apiMapper = null;
public JerseyMapperProvider() {
}
@Override
public ObjectMapper getContext(Class<?> type) {
    System.out.println(type.toString() + " this is only printed for collections...");
    if (apiMapper == null) {
        apiMapper = getDefaultObjectMapper();
    }
    return apiMapper;
}

好的,突然间它通过向我的资源配置添加以下功能来工作...

@ApplicationPath("/")
public class JerseyConfig extends ResourceConfig {
public JerseyConfig() {
    super();
    Map<String, Object> map = new HashMap<>();
    map.put(CommonProperties.MOXY_JSON_FEATURE_DISABLE, true);
    map.put(CommonProperties.JSON_PROCESSING_FEATURE_DISABLE, true);
    addProperties(map);
    ....// more configuration here..
}
}

相关内容

  • 没有找到相关文章

最新更新