我们在Resteasy版本3.1.0.Beta2上有jax.rs rest application build。
通过扩展Application
课程,我们添加了其余资源以及其他过滤器和提供者。
其中一个也是ResteasyJacksonProvider
@ApplicationPath("")
public class ApplicationConfig extends Application {
final private Set<Class<?>> resources = new HashSet<>();
public ApplicationConfig() {
this.resources.add(ResteasyJacksonProvider.class);
this.resources.add(UserProfileResource.class);
this.resources.add(StatsResource.class);
}
@Override
public Set<Class<?>> getClasses() {
return Collections.unmodifiableSet(this.resources);
}
}
Everythings工作正常,直到我扩展它并替换为我的自定义提供商。
@Provider
@Consumes({"application/*+json", "text/json"})
@Produces({"application/*+json", "text/json"})
public class SecureJacksonProvider extends ResteasyJacksonProvider {
}
但是现在我正在为其中一个电话获得奇怪的例外:
直接自我引用导致循环(通过参考链......
所以问题是:如果有一些参考周期,为什么它适用于默认ResteasyJacksonProvider
但不适用于其子项。
注意:
我也尝试使用JacksonJsonProvider
,它是ResteasyJacksonProvider
的父级,它也会抛出异常。 - 它让我思考是否存在依赖关系的问题,但我什么都没找到。