欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

如何在Spring Boot應(yīng)用程序中配置了兩個(gè)不同的SOAP Web服務(wù)端點(diǎn)

 更新時(shí)間:2023年08月23日 09:48:08   作者:weixin_37370093  
這篇文章主要介紹了如何在Spring Boot應(yīng)用程序中配置了兩個(gè)不同的SOAP Web服務(wù)端點(diǎn),本文通過示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

在Spring Boot應(yīng)用程序中配置了兩個(gè)不同的SOAP Web服務(wù)端點(diǎn)

新建一個(gè)CustomMessageDispatcherServlet類,以擴(kuò)展以下MessageDispatcherServlet類,

import org.springframework.ws.transport.http.MessageDispatcherServlet;
import javax.servlet.http.HttpServletRequest;
public class CustomMessageDispatcherServlet extends MessageDispatcherServlet {
    @Override
    protected String transformWsdlLocation(HttpServletRequest request, String wsdlLocation) {
        String requestUri = request.getRequestURI();
        if (requestUri.contains("/WebservicesConnector/services/countries")) {
            return "countries.wsdl";
        } else if (requestUri.contains("/FinancingService/FinancingUpdate.asmx")) {
            return "kinsai.wsdl";
        }
        return super.transformWsdlLocation(request, wsdlLocation);
    }
}

messageDispatcherServlet 

@Bean
public ServletRegistrationBean<CustomMessageDispatcherServlet> messageDispatcherServlet() {
    CustomMessageDispatcherServlet servlet = new CustomMessageDispatcherServlet();
    servlet.setApplicationContext(applicationContext);
    servlet.setTransformWsdlLocations(true);
    return new ServletRegistrationBean<>(servlet, "/ws/*");
}

擴(kuò)展:基于SpringBoot 的SOAP WebService實(shí)現(xiàn)

一、使用postman工具調(diào)用服務(wù)接口

成功啟動(dòng)springboot應(yīng)用后,使用postman新建POST請(qǐng)求,地址: http://localhost:8080/soap/userManagement

 正文body選擇raw,XML格式。

headers填入如下鍵值對(duì):

 其中xlms字段是 WSDL中的namespace字段。

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://service.tmy.example.org/">
   <soapenv:Header/>
   <soapenv:Body>
     <ser:getUserByName>
        <name>Jerry</name>
     </ser:getUserByName>
   </soapenv:Body>
</soapenv:Envelope>

發(fā)送請(qǐng)求,返回了一個(gè)User類 。

至此,webservice SOAP服務(wù)發(fā)布測(cè)試成功。

二、使用客戶端測(cè)試接口

新建客戶端模塊,maven依賴和服務(wù)端相同。

實(shí)體類User、服務(wù)接口UserManagement.java和服務(wù)端保持一致。

客戶端結(jié)構(gòu)如下:

測(cè)試類如下:

@SpringBootApplication
public class WebserviceClientApplication {
    public static void main(String[] args) {
        SpringApplication.run(WebserviceClientApplication.class, args);
        JaxWsDynamicClientFactory dcflient=JaxWsDynamicClientFactory.newInstance();
        Client client=dcflient.createClient("http://localhost:8080/soap/userManagement?wsdl");//http://localhost:8080/soap/userManagement
        System.out.println("client= "+client);
        try{
            //namespace= http://service.tmy.example.org/
            QName opname=new QName("http://service.tmy.example.org/","getUserByName");          
            Object[] objects=client.invoke(opname,"Jerry");//getUserByName
            System.out.println("getUserByName 調(diào)用結(jié)果:"+objects[0].toString());
        }catch (Exception e){
            e.printStackTrace();
        }
    }
}

啟動(dòng)服務(wù)端后,運(yùn)行客戶端,返回了一個(gè)User類,說明客戶端測(cè)試成功。

到此這篇關(guān)于在Spring Boot應(yīng)用程序中配置了兩個(gè)不同的SOAP Web服務(wù)端點(diǎn)的文章就介紹到這了,更多相關(guān)Spring Boot應(yīng)用程序配置了兩個(gè)不同的SOAP Web服務(wù)端點(diǎn)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 根據(jù)list中對(duì)象的屬性去重和排序小結(jié)(必看篇)

    根據(jù)list中對(duì)象的屬性去重和排序小結(jié)(必看篇)

    下面小編就為大家?guī)硪黄鶕?jù)list中對(duì)象的屬性去重和排序小結(jié)(必看篇)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-05-05
  • ProtoStuff不支持BigDecimal序列化及反序列化詳解

    ProtoStuff不支持BigDecimal序列化及反序列化詳解

    這篇文章主要為大家介紹了ProtoStuff不支持BigDecimal序列化/反序列化,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • 使用Filter實(shí)現(xiàn)登錄權(quán)限驗(yàn)證

    使用Filter實(shí)現(xiàn)登錄權(quán)限驗(yàn)證

    這篇文章主要為大家詳細(xì)介紹了使用Filter實(shí)現(xiàn)登錄權(quán)限驗(yàn)證,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • 一篇文章教你使用SpringBoot如何實(shí)現(xiàn)定時(shí)任務(wù)

    一篇文章教你使用SpringBoot如何實(shí)現(xiàn)定時(shí)任務(wù)

    這篇文章主要給大家介紹了關(guān)于如何利用一篇文章教你使用SpringBoot實(shí)現(xiàn)定時(shí)任務(wù)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • SpringBoot讀取properties中文亂碼解決方案

    SpringBoot讀取properties中文亂碼解決方案

    本文主要介紹了在Spring?Boot中讀取帶有中文字符串的application.properties文件時(shí)遇到亂碼問題的解決方案,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-12-12
  • Java使用POI將多個(gè)Sheet合并為一個(gè)Sheet

    Java使用POI將多個(gè)Sheet合并為一個(gè)Sheet

    這篇文章主要為大家詳細(xì)介紹了Java使用POI將多個(gè)Sheet合并為一個(gè)Sheet,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • Spring基礎(chǔ)之AOP的概念介紹

    Spring基礎(chǔ)之AOP的概念介紹

    AOP是Spring的關(guān)鍵特性之一,雖然Spring的IOC特性并不依賴于AOP,本文重點(diǎn)介紹AOP編程中的一些術(shù)語,這些術(shù)語不僅僅局限于Spring,它適用于所有的AOP編程,感興趣的朋友一起看看吧
    2022-06-06
  • 基于@PathVariable注解的用法說明

    基于@PathVariable注解的用法說明

    這篇文章主要介紹了基于@PathVariable注解的用法說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • Java讀取resources中資源文件路徑以及jar中文件無法讀取的解決

    Java讀取resources中資源文件路徑以及jar中文件無法讀取的解決

    這篇文章主要介紹了Java讀取resources中資源文件路徑以及jar中文件無法讀取的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • SpringBoot使用AOP+注解實(shí)現(xiàn)簡(jiǎn)單的權(quán)限驗(yàn)證的方法

    SpringBoot使用AOP+注解實(shí)現(xiàn)簡(jiǎn)單的權(quán)限驗(yàn)證的方法

    這篇文章主要介紹了SpringBoot使用AOP+注解實(shí)現(xiàn)簡(jiǎn)單的權(quán)限驗(yàn)證的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-05-05

最新評(píng)論