您能否帮助我并提供我可以使用来自Web服务操作的流调用db调用的任何示例或方案。如果我的Web服务实现有五个操作,并且每个操作都必须调用单独的查询或存储过程。
我有另一种方法是使用spring注入注入数据库模板并调用所需的查询或存储过程,但我想用流程来完成。
答案 0 :(得分:0)
查看CXF代理服务:https://docs.mulesoft.com/mule-user-guide/v/3.7/proxying-web-services-with-cxf
它允许访问原始SOAP消息并按照您的意愿进行路由,例如在操作名称上使用选择路由器,或者您可以提取SOAPAction标头等。
<flow name="soap-api" doc:name="soap-api-orders">
<https:.... />
<cxf:proxy-service payload="body"
service="MyService-v1c" namespace="http://xmlns.oracle.com/MyService"
wsdlLocation="wsdl/MyService.wsdl" enableMuleSoapHeaders="false"
doc:name="CXF" />
<choice doc:name="Choice">
<when
expression="#[xpath('boolean(//mynamespace:MyOperation1/node()[1])')]">
<flow-ref name="flow1" />
</when>
<when
expression="#[xpath('boolean(//mynamespace:MyOperation2/node()[1])')]">
<flow-ref name="flow2" />
</when>
<otherwise>
</otherwise>
</choice>
</flow>