WSO2 ESB更改了wsdl [英] WSO2 ESB alters the wsdl

查看:276
本文介绍了WSO2 ESB更改了wsdl的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个后端服务,该服务在WSO2 ESB中配置为代理服务。

I have a backend service which I configure as a proxy service in WSO2 ESB.

ESB暴露的wsdl略有不同,wsdl也是有效的,并且按预期工作。

The ESB exposes slightly different wsdl, which is also valid and works as expected.

问题是我由于结构更改,无法将我的旧存根与ESB wsdl一起使用。我想以这样的方式创建服务,即ESB中的wsdl与端点服务完全相同。

The problem is I can't use my old stubs with the ESB wsdl because of the changed structure. I want to create the service in such a way that the wsdl from ESB is EXACTLY the same as my endpoint service.

这样的处理是否可行,还是我需要再次生成存根(在我的情况下,这需要大量的精力)?

Is such approch poissible or do I need to generate again the stubs (this would require a lot of effort in my case)?

编辑:端点和esb wsdl
1之间的WSDL差异。例如,我的端点具有以下标记

The difference in the WSDL between endpoint and esb wsdl 1. For example my endpoint has following tags

<xs:element name=", - Endpoint
<xsd:element name=  - ESB

2。另一个区别是:

<wsdl:service name="CasesServiceService"> - Endpoint
<wsdl:service name="CasesService"> - ESB

3。端口名:

<wsdl:port name="CasesServiceHttpSoap11Endpoint" binding="tns:CasesServiceSoap11Binding">
<wsdl:port binding="tns:CasesServiceServiceSoapBinding" name="CasesServicePort">


推荐答案

为了使WSO2 ESB保持具有完全相同的服务/端口名称的WSDL合同,您可以编辑代理服务的Apache Synapse配置文件只需在WSO2 ESB界面中单击源视图,然后添加将参数赋予< proxy> 节点:

In order to make WSO2 ESB keep the same WSDL contract with the exact same services / ports names, you can edit the Apache Synapse configuration file for your proxy service directly. Just click on "Source View" in the WSO2 ESB interface and add the following parameters to the <proxy> node:

<parameter name="useOriginalwsdl">true</parameter>
<parameter name="modifyUserWSDLPortAddress">true</parameter>

这将使其使用原始WSDL并仅修改端口地址,使其指向总线。

This will make it use the original WSDL and modify only the port address so it points to the bus.

相关文档在这里

这篇关于WSO2 ESB更改了wsdl的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆