由于我在@transaction注释中发现的问题,我正在将我的guice应用程序转换为spring。这样做时,我遇到了一个问题,即使用spring / resteasy配置自定义objectmapper。我想注册hibernate4Module(fasterxml jackson)和自定义反序列化器。
我在使用spring mvc时找到了很多解决方案,但我没有使用spring mvc。 我正在看resteasyboostrap类,因为你可以控制你的工厂,但我不知道如何在那里注册我的新SimpleModule。
有经验的人吗?当我在网上搜索时,似乎没有人试图做同样的事情。也许我在寻找错误的地方?
答案 0 :(得分: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());
}
}