我在这里遇到了一堵墙,目前我有两个在JBoss Soa 5中配置并运行的Web服务端点,并且和ESB标准一样,每个端点都作为单独的操作发布。在JBoss SOA上发布自定义web服务
一端点为交易提交:
<service description="writes Transactions to DB." name="TransactionsSubmit">
<listeners>
<jms-listener busidref="transactionSubmitChannel" name="transactionSubmit" />
</listeners>
<actions faultXsd="/resources/xsd/transactions-fault.xsd"
inXsd="/resources/xsd/ws-submit-trx.xsd"
mep="RequestResponse"
outXsd="/resources/xsd/ws-trx-response.xsd">
<action class="org.timo.service.SubmitTransaction">
</action>
</actions>
</service>
和其他错误提交:
<service description="writes errors to DB." name="ErrorsSubmit">
<listeners>
<jms-listener busidref="errorSubmitChannel" name="errorSubmit" />
</listeners>
<actions faultXsd="/resources/xsd/transactions-fault.xsd"
inXsd="/resources/xsd/ws-errorsubmit-trx.xsd"
mep="RequestResponse"
outXsd="/resources/xsd/ws-errorsubmit-response.xsd">
<action class="org.timo.service.SubmitError">
</action>
</actions>
</service>
我想要做的就是用我自己的WSDL文件来创建自定义Web服务在单个proxy
服务中发布这两个操作,将这些流重定向到已定义的服务ErrorsSubmit
和TransactionsSubmit
。
可以这样做吗?
注意:我可以通过向ESB包添加WAR应用程序来部署自己的WSDL服务,但我无法将流重定向到内部服务。
能否请您解释一下好(我用简短的回答很慢)。我所做的(并且它的工作原理)是创建一个代理Web服务,它通过在运行时创建SOAP请求(使用Java SOAPMessage本机组件)来调用ESB服务。我接近你的方法吗? –