我想通过调用方法名称在代理中路由进程。我必须从Web服务中获得只允许的方法。例如,webService1有一个(),b(),c()方法。 webService2有d(),e()方法。我想为客户端只获取a(),b()和d()方法。所以,我必须得到请求方法来做到这一点。我可以通过像这样的肥皂动作属性来做到这一点:
<property name="MY_SOAP_ACTION"
expression="get-property('Action')"
scope="default"
type="STRING"/>
<switch source="get-property('MY_SOAP_ACTION')">
<case regex="add">
<send>
<endpoint>
<address uri="http://localhost:1111/MockService1?wsdl"/>
</endpoint>
</send>
</case>
<case regex="sgrsControlInspection">
<send>
<endpoint>
<address uri="http://localhost:2222/MockService2?wsdl"/>
</endpoint>
</send>
</case>
&#13;
但是,网络服务属于另一个基础,这些方法没有肥皂动作注释。那么如果没有动作属性我怎么能这样做呢?
答案 0 :(得分:1)
SOAP操作产生要在端点调用的方法。它不需要指定注释。你做的方式似乎是正确的。另请从结束点删除'?wsdl'部分。您的终点配置应更正如下。
<address uri="http://localhost:1111/MockService1"/>
其他配置似乎很好。