wcm*_*sen 5 jax-rs jersey guice
我正在使用Jersey和Guice作为我的IOC容器。我想知道是否可以将ExceptionMapper与特定的URI关联。原因是我想根据访问的URI不同地映射相同的异常。例如,假设我为自定义异常提供了以下两个异常映射器:
public class MyExceptionMapperForFirstURI implements
ExceptionMapper<MyException> {..return response based on first URI..}
public class MyExceptionMapperForSecondURI implements
ExceptionMapper<MyException> {..return response based on second URI..}
Run Code Online (Sandbox Code Playgroud)
据我了解,您在ServletModule中绑定了ExceptionMapper,如下所示:
public class MyModule extends ServletModule {
@Override
public void configureServlets() {
super.configureServlets();
bind(MyCustomExceptionMapper.class);
}
}
Run Code Online (Sandbox Code Playgroud)
我将如何进行绑定MyExceptionMapperForFirstURI,MyExceptionMapperForSecondURI以使它们与正确的URI相关联。这可能吗?如果可能的话:这是正确的方法吗?
这是很晚的答案;-)但是你总是可以注入 UriInfo 和分支。所以,
@Context
UriInfo uriInfo;
Run Code Online (Sandbox Code Playgroud)
……
if (matchesA(uriInfo.getAbsolutePath())) {
// do something
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1429 次 |
| 最近记录: |