[英]How to invoke existing SOAP webservice into REST API Spring boot application
[英]SOAP and Rest Webservice using Spring boot
我正在開發我的第一個包含Soap和rest webservice
Spring Boot
應用程序。 我必須在網址中傳遞Request作為參數。 我可以在URL中傳遞針對Rest服務的請求。 是否可以在URL中發送針對SOAP
webservice
請求?
好的,我不確定您的意圖是什么,但是關於SOAP。
--------------- ----------------
| | someMethodInvoke | |
| Your API | -------------------->| WEB Service |
| |<-------------------- | |
--------------- someResult ----------------
現在,與WS進行通信時,首先需要具有該API或.WSDL
的架構,您可以從中生成用於進行所需調用的對象。
我個人正在使用JAXB
從架構生成.java
類。
調用之后,自我org.springframework.ws.client.core.WebServiceTemplate
是完成工作的事情。 您可以使用marshalSendAndReceive
。
例如:
public class SomeService extends WebServiceGatewaySupport {
ObjectFactory oFactory = new ObjectFactory();
public ExpectedResultObject someMethodInvoke(RequestObjectGeneratedFromSchema request){
JAXBElement<ExpectedResultObject> response = (JAXBElement<ExpectedResultObject>) getWebServiceTemplate()
.marshalSendAndReceive("http://yourURL.com", oFactory.createreRequestObjectGeneratedFromSchemaInputMessage(request));
return response.getValue();
}
}
首先擴展WebServiceGatewaySupport
以便您可以調用getWebServiceTemplate()
,它恰好返回所需的內容: org.springframework.ws.client.core.WebServiceTemplate
。 這是如何使用WebServiceTemplate
的示例
當然,應該設置許多因素,例如安全性,連接性等。 但這取決於WS。 但基本上就是全部:
希望我給你一些指示。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.