restasy spring自定义对象映射器



由于我在@transaction注释中发现的问题,我正在将我的向导应用程序转换为基于spring的。在这样做时,我遇到了一个使用spring/restasy配置自定义objectmapper的问题。我想注册hibernate4Module (fasterxml jackson)和自定义反序列化器。

我在使用spring mvc时找到了许多解决方案,但我不使用spring mvc。我正在看restastasyboostrap类,因为在那里你可以控制你的工厂,但我不知道如何在那里注册我的新SimpleModule。

有人有经验吗?当我在互联网上搜索时,似乎没有人试图做同样的事情。也许我找错地方了?

这个问题最终很容易解决。删除restasy -jackson提供程序,并编写一个使用spring @Component注释的自定义类。Jax-RS获取提供程序并使用提供程序中的对象映射器。我在实现中搜索,但答案在jax-rs api中。

@Component
@Provider
@Consumes({"application/*+json", "text/json"})
@Produces({"application/*+json", "text/json"})
public class JacksonProvider extends JacksonJsonProvider {
    public JacksonProvider() {
        setMapper(new CustomObjectMapper());
    }
}

相关内容

  • 没有找到相关文章

最新更新