我正在查看wsdl,它包含一个soap:address location
标记,其值为jms:/queue?destination=...
。JMS在WSDL中的SOAP地址位置上:这是什么意思?
soap:address
值在WSDL上的用途是什么?- 它会影响客户端连接到Web服务的方式吗?
此外,我试图搜索谷歌的jms:/queue?destination=...
和术语'SOAP over JMS'是在结果上。
- 什么是'JMS'和'SOAP over JMS'是什么?
我在客户端工作,所以我担心如果我需要为它做任何措施。目前,我只知道如何通过HttpUrlConnection
连接到REST和SOAP Web服务。下面是一个WSDL文件的示例:(如下所示,所使用的传输协议是HTTP,但随后服务也将它与JMS地址一起使用?我在这里有点困惑。通过HTTP或SOAP通过JMS?)
<wsdl:binding name="MethodSOAP_JMS_Binding" type="tns:MethodPortType">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" />
<wsdl:operation name="methodName">
<soap:operation soapAction="" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" />
<wsdl:input name="method_Input">
<soap:body parts="RequestBean" use="literal" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" />
</wsdl:input>
<wsdl:output name="method_Output">
<soap:body parts="ResponseBean" use="literal" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="MethodSOAP_JMS_Service">
<wsdl:port binding="tns:MethodSOAP_JMS_Binding" name="MethodSOAPPort">
<soap:address location="jms:/queue?..." xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" />
</wsdl:port>
</wsdl:service>
谢谢先进!
谢谢Petter!现在我更清楚了。但我还有一个问题。服务器的所有者给了我一个包含一组方法的WSDL。每种方法都有自己的soap地址标签。肥皂地址的价值就像你的解释。但除此之外,他们还向我提供了一个包含连接到哪里的文件。它的格式是这样的:http:// ipAddress:port/methodName。它与JMS的soap地址位置不同。我应该如何连接到他们的服务? – Arci 2012-07-19 01:47:13
我是否需要通过JMS方式连接到他们的服务,或者我可以通过调用他们给我的URL来连接到他们的服务,并将SOAP传递到正文中,就像在普通的Web服务中一样? – Arci 2012-07-19 01:49:19
进一步检查WSDL后,我发现这些方法的soap绑定正在使用基于HTTP的SOAP。但是我很困惑,因为它使用的soap地址位置是JMS格式。将添加我的WSDL文件的样本。 – Arci 2012-07-19 03:26:08