如何定义以透明方式拦截所有服务的全局JAX-WS MessageHandler?

Joa*_*ira 19 java soap web-services jax-ws

我们在JAX-WS中实现了一组Web服务,并SOAPHandler在SOAP头中添加了控制属性.今天,我们需要@HandlerChain在我们创建的每个新服务中添加注释.

这个想法是新服务实现者不需要知道@HandlerChain存在.

有没有办法配置一个Handler拦截WAR中运行的所有服务的全局?

小智 0

我认为没有直接的方法可以做到这一点。但是加入预览评论,也许您可​​以创建一个包含所有处理程序的 jar,然后在每个 war 项目中,使用您想要的链定义一个抽象类,并在您的服务中继承它。或者不要包含 WAR,而是尝试查看 JNDI 以在运行时包含。