我看到一个奇怪的问题.我有两个webapps.一个用于我们使用Jersey公开的其余web服务.另一个有JSF前端实现,它调用webservice以上来获取细节.我们使用Tomcat作为容器.
我面临的问题是当我调用一个rest webservice时,我会像这样抛出WebApplicationException
catch (CustomExceptions e) {
ResponseBuilder response = new ResponseBuilderImpl();
response.status(500);
response.entity(e.getStackTrace());
throw new WebApplicationException(e, response.build());
}
Run Code Online (Sandbox Code Playgroud)
另一方面,在FE webapps上,我执行以下操作:
try {
r.get(MyClass.class);
return "SUCCESS";
} catch (WebApplicationException wae) {
return "FAILURE";
} catch (UniformInterfaceException wae) {
return "FAILURE";
}
Run Code Online (Sandbox Code Playgroud)
在catch块中,我期待WebApplicationException但它抛出UniformInterfaceException这很奇怪.此外,如果它抛出UniformInterfaceException,它不会维护堆栈跟踪.即使是我从休息电话中传来的回应也会丢失.有人可以帮助我如何从其余的电话中获得原始的堆栈跟踪?
提前致谢.