3

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

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

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

4

1 回答 1

2

这个最终很容易修复。删除 resteasy-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());
    }
}
于 2014-05-14T10:15:35.803 回答