我在 Tomcat 上使用 jaxws-ri,版本 2.3.2
我有一个带有一些 JAX-WS 注释的简单类:
@WebService()
public class Test {
@WebMethod()
public String validateCard(String id) {
return "validateCard echo: " + id;
}
@WebMethod()
public String saveVisit(String id) {
return "saveVisit echo: " + id;
}
}
生成的 WSDL:
<binding name="..." type="...">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
<operation name="validateCard">
<soap:operation soapAction=""/>
...
<operation name="saveVisit">
<soap:operation soapAction=""/>
...
当我对每个操作执行一些测试 SOAP 请求时(使用soapUI,全部成功),在这两种情况下,HTTP SOAPAction 标头都是空字符串(这符合 WSDL)。
我的问题:当 SOAPAction HTTP 标头为空字符串时,JAX-WS 如何将 SOAP 请求路由到正确的方法?