我正在使用契约优先方法来使用JAX-WS发布Web服务。 WSDL中没有SOAP错误,但是现有的Web服务会适当地引发错误异常。
我无法抛出类似的故障异常,因为我正在实现的服务方法要求添加throws子句。
我可以找到this question作为相关对象。
最佳答案
如果我对您的理解正确,那么您在问如何将抛出的异常添加到wsdl中?
有几个原因导致所生成的wsdl中未显示引发的异常
引发的异常不是受检查的异常,例如,因为您从RuntimeException继承了子类,RuntimeException是未经检查的异常。
您没有将throws MyException
添加到Webservice方法中(而是捕获了异常)。
有人说您必须将@WebFault
annotation添加到您的异常类中,但是根据我的经验,这不是必需的(也许取决于您使用的jax-ws版本)。