1

根据这篇博客文章,我们正在尝试使用 WebService OutFaultInterceptor ,但它似乎在 JBoss 7.x 中不起作用。

问题很简单,因为它只是忽略了 @OutFaultInterceptor 注释。我通过输入错误的拦截器名称对此进行了测试,但它没有出错。拦截器中的日志根本不会被调用(当拦截器名称正确时)。

我也尝试过使用WEB-INF/jboss-webservices.xml 来定义拦截器,但这似乎也被忽略了。

删除 @Stateless 注释似乎也没有帮助。

这在 JBoss 5.1 上运行良好,但在 JBoss 7.x 上似乎不起作用。我在这里想念什么?

是否有另一种方法可以将异常“翻译”为肥皂错误?

4

1 回答 1

1

为了使用 Apache CXF API 和实现类,您需要向 org.apache.cxf(API)模块和/或 org.apache.cxf.impl(实现)模块添加依赖项。

Dependencies: org.apache.cxf services

根据文件:

在端点/处理程序上使用注释时,例如 Apache CXF (@InInterceptor、@GZIP、...),请记住在清单中添加正确的模块依赖项。否则 JBoss Application Server 7 不会拾取您的注释并将其添加到注释索引中,从而导致它们被完全忽略

另请参阅:JBoss 模块

我希望这会有所帮助。

于 2014-11-03T20:49:12.790 回答