Java SOAP到REST转换的代理服务期间出现WSO2问题

Java SOAP到REST转换的代理服务期间出现WSO2问题,java,web-services,soap,wso2,Java,Web Services,Soap,Wso2,我是WSO2的新手,对于一个大型项目,我们正在使用EI 6.1.1 我们的目标之一是创建一些REST服务,这些服务必须替代一些遗留SOAP服务:为此,我们正在开发Spring Boot REST,我们的想法是以SOAP方式公开这些服务,使用遗留服务的相同WSDL 我们正在WSO2上创建一个代理服务,并且我们能够在后端调用rest服务,但是,即使rest日志显示一切正常,SOAP调用也不会发送回响应,并且会随着读取超时而“死亡” 我们如何解决这个问题?我将向您发布proxyService配置: &

我是WSO2的新手,对于一个大型项目,我们正在使用EI 6.1.1

我们的目标之一是创建一些REST服务,这些服务必须替代一些遗留SOAP服务:为此,我们正在开发Spring Boot REST,我们的想法是以SOAP方式公开这些服务,使用遗留服务的相同WSDL

我们正在WSO2上创建一个代理服务,并且我们能够在后端调用rest服务,但是,即使rest日志显示一切正常,SOAP调用也不会发送回响应,并且会随着读取超时而“死亡”

我们如何解决这个问题?我将向您发布proxyService配置:

<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
       name="VerificaAmbitiSET_SOAP_AWS"
       startOnLoad="true"
       statistics="disable"
       trace="disable"
       transports="http,https">
   <target>
      <inSequence>
         <filter xmlns:ver="http://XXXXXX.XXXXXX.XXXXXX"
                 xpath="//ver:getAmbitiSet">
            <then>
               <property expression="//ver:getAmbitiSet/ver:codiceFiscale"
                         name="REST_URL_POSTFIX"
                         scope="axis2"
                         type="STRING"/>
               <property name="HTTP_METHOD" scope="axis2" type="STRING" value="GET"/>
            </then>
            <else/>
         </filter>
         <header name="Accept" scope="transport" value="*/*"/>
         <send>
            <endpoint>
               <address format="rest"
                        uri="http://localhost:8280/services/A_SERVICE/ambitiSet"/>
            </endpoint>
         </send>
      </inSequence>
      <outSequence>
         <send/>
      </outSequence>
   </target>
   <publishWSDL key="conf:/wsdl/A_WSDL.wsdl"/>
   <description/>
</proxy>

这是REST控制器标志:

@GetMapping(value = "/ambitiSet/{codiceFiscale}")
    public List<Ambito> getAmbitiSET(@PathVariable("codiceFiscale") String codiceFiscale)
@GetMapping(value=“/ambitiSet/{codiceFiscale}”)
公共列表getAmbitiSET(@PathVariable(“codiceFiscale”)字符串codiceFiscale)
最后,我的SOAP请求如下所示:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://XXXX.XXXXX.XXXXXX">
   <soapenv:Header/>
   <soapenv:Body>
      <ver:getAmbitiSet>
         <ver:codiceFiscale>XXZXZXZXZ</ver:codiceFiscale>
      </ver:getAmbitiSet>
   </soapenv:Body>
</soapenv:Envelope>

XXZXZXZXZ

问候语。

您可以通过启用wire logs来测试响应被丢弃的位置。请关注博客