我从v0.7.1升级到v0.8,发现我们使用的Jersey过滤器功能已被弃用.下一行:
environment.jersey().getResourceConfig().getContainerRequestFilters().add(new FilterAuthentication());
(与DW manual几乎相同)
现在给出了编译器错误:
"The method
getContainerRequestFilters()is undefined for the Type
ResourceConfig"
请有人可以向我指出如何升级此功能的正确方向.
非常感谢
解决方法:
Dropwizard 0.8.x使用Jersey2.x. ResourceConfig中的大多数方法已更改.对于Jersey 2,可以使用通用的register
方法,该方法用于绑定任何JAX-RS组件.
Dropwizard还具有链接到jersey()的注册方法,因此我们不必调用getResourceConfig(),因为jersey().register()将转发到配置的register方法.
所以这些都可以用
env.jersey().register(...);
env.jersey().getResourceConfig().register(...);
另请参阅球衣2 ResourceConfig API