我正在使用JWS在JAVA中使用SOAP Web服务。
我想为所有提供的web方法实现自定义的自定义标头,因此为所有提供的web方法提供与参数相同的参数并使用web param注释将它们声明为标题是低效的。
我的麻烦是我可以实现一个协议处理程序来确保我所有的自定义头参数都存在并在它们不存在的情况下抛出一个错误但是这是一个宁静的方法,因为这些参数不会在创建的WSDL中定义对我来说意味着我并没有严格遵循soap和WSDL背后的概念(即它是应用程序之间的通信契约。)这example描述了类似的东西,但是
"解析未声明的自定义headerLet' s考虑我们需要读取未在WSDL中发布的WSS UserToken:"
我需要在WSDL中描述头部和主体部分所需的所有信息。关于这个问题的所有资源和问题都是类似的,它们只是实现了处理程序,但它们没有在WSDL中描述。
先谢谢。
答案 0 :(得分:0)
您可以在Web服务接口中说所有方法都抛出CustomException。在生成的WSDL中,它们将在操作中显示为错误,然后用户或服务将意识到SOAP调用可能引发异常。您实际执行的服务不会抛出这些异常,但处理程序会这样做。