我有SOAP端点和SOAP信封有效负载请求,我想从我的Spring启动应用程序中调用SOAP端点。
我担心的是如何使用下面的有效负载请求来调用SOAP端点,我是SOAP服务的新手-我尝试在google中搜索最佳方法,但大多数方法令人困惑。我感到困惑的是,在调用SOAP服务时如何在SOAP负载请求下方发送消息,我是否需要转换Java对象?我不需要任何编码,只是我需要使用Spring Boot编写Soap客户端的正确方法
SOAP端点:http://localhost:8080/services/helloService
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:oas="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
xmlns:sys="http://adsfdf/sadfasdf/sdfdas" xmlns:urn="urn:com.dsafasdfdsfsaf"
xmlns:v1="http://sdfasdfdasf">
<soapenv:Header>
<v1:ServiceRequestInfo>
<v1:RequestID>8383</v1:RequestID>
</v1:ServiceRequestInfo>
</soapenv:Header>
<soapenv:Body>
</soapenv:Body>
</soapenv:Envelope>
答案 0 :(得分:0)
首先,您需要一个描述消息模型的模式(WSDL文件)。您将其放入源代码(或在线)中,并使用一个从架构生成Java类的插件。例如可以是maven-jaxb2-plugin
一旦生成了类,就应该使用WS客户端。例如,可以是spring-ws-core软件包中的WebServiceGatewaySupport。
有关更多详细信息,我推荐本教程:https://spring.io/guides/gs/consuming-web-service/
答案 1 :(得分:0)
首先,您必须选择是使用axis还是cxf调用服务。
创建一个动态Web项目。 使用WSDL和cxf或axis库创建一个Web服务客户端并生成客户端文件。 https://help.eclipse.org/mars/index.jsp?topic=%2Forg.eclipse.jst.ws.cxf.doc.user%2Ftasks%2Fcreate_client.html
您可以使用这些文件来调用服务。