FastJSON和Jersey冲突解决该怎么解决

这期内容当中小编将会给大家带来有关FastJSON和Jersey 冲突解决该怎么解决,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

成都网站制作、网站建设中从网站色彩、结构布局、栏目设置、关键词群组等细微处着手,突出企业的产品/服务/品牌,帮助企业锁定精准用户,提高在线咨询和转化,使成都网站营销成为有效果、有回报的无锡营销推广。成都创新互联公司专业成都网站建设十余年了,客户满意度97.8%,欢迎成都创新互联客户联系。

在测试 hugegraph 时,按照官方默认的Example Code 怎么都调用不通过,Debug 发现HTTPClient 发送的 PropertyKey 序列化 JSON 的时候无字段。

说明:我的工程是实际项目中的,有大量的依赖无法去除。 经过查看 PropertyKey 代码发现,JSON 绑定了 jackson 实现,对于Builder模式,FastJSON生成JSON一直都是不太智能的,初步怀疑是 fastjson 引起冲突。

public class PropertyKey extends SchemaElement {
    @JsonProperty("data_type")
    private DataType dataType;
    @JsonProperty("cardinality")
    private Cardinality cardinality;
    @JsonProperty("aggregate_type")
    private AggregateType aggregateType;
}

度娘了部分资料,原来是fastjson在1.2.36后,加入JerseyAutoDiscoverable的实现,在jersey启动的时候,会自动去加载FastJsonProvider。降级 fastjson 为 1.2.35,无问题。个人有点偏执,jersey 和 fastjson 都不想降级。查看 FastJsonAutoDiscoverable 代码发现有个 autoDiscover 开关:

public volatile static boolean autoDiscover = true;
@Override
public void configure(final FeatureContext context) {
    final Configuration config = context.getConfiguration();
    if (!config.isRegistered(FastJsonFeature.class) && autoDiscover) {
        context.register(FastJsonFeature.class);
    }
}

因此在 工程启动类加个静态代码域,把 autoDiscover 设置为 false,则问题解决。

static {
    FastJsonAutoDiscoverable.autoDiscover = false;
}

上述就是小编为大家分享的FastJSON和Jersey 冲突解决该怎么解决了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注创新互联行业资讯频道。

分享题目:FastJSON和Jersey冲突解决该怎么解决
本文路径:https://www.cdcxhl.com/article26/jsspcg.html

成都网站建设公司_创新互联,为您提供网站设计软件开发营销型网站建设品牌网站制作网站策划网站制作

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

小程序开发