在 Oracle Service Bus 中如何使用 WSDL? [英] How WSDL is Used in Oracle Service Bus?

查看:23
本文介绍了在 Oracle Service Bus 中如何使用 WSDL?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用 WSDL 创建了一个 OSB 服务并选择了一个绑定.现在,当我的客户尝试使用我提供的 WSDL 调用服务时,他们收到错误消息.此外,我提供的 WSDL 中的绑定名称与他们从 URL 中提取的 WSDL 不同.发生了什么?

I created an OSB Service using a WSDL and selected a Binding. Now, when my client is trying to call the service using the WSDL I provided, they are getting errors. Also, the binding name in the WSDL that I provided and the WSDL that they are pulling from the URL is different. What is happening?

推荐答案

根据 OSB 文档,

当您基于 WSDL 资源创建服务时,您必须将该服务基于 WSDL 端口或基于 WSDL 绑定:

When you create a service based on a WSDL resource, you must base the service on a WSDL port or on a WSDL binding:

  • 当您基于 WSDL 资源中的绑定创建新服务时,您将选择在 WSDL 资源中所选元素中定义的协议和数据格式.
  • 当您基于 WSDL 资源中的端口创建新服务时,您将选择元素中定义的绑定和网络地址.

在创建或修改服务时,您可以更改传输,但不能覆盖数据格式.

When creating or modifying the service, you can change the transport, but you cannot override the data format.

原始 WSDL 资源中的端口和绑定定义在有效 WSDL 中根据多种因素进行修改,如下所述.

The port and binding definitions from the original WSDL resource are modified in the effective WSDL depending on a number of factors, as described below.

如果服务基于绑定:

  • 如果服务是从 WSDL 资源中的绑定 Y 生成的,则有效的 WSDL 定义新的服务和端口(QSService 和 QSPort).WSDL 资源中定义的任何端口都不包含在有效 WSDL 中.
  • 该 WSDL 中可能有多个端口与该绑定关联.每个端口可以使用不同的 URL.因此,有效的 WSDL 使用该绑定,但会根据该绑定的服务配置生成一个人工端口.所有其他端口都将被删除."

粗体部分是导致问题的原因.使用 port 而不是 binding 总是更好,因为 OSB 如上所述修改了有效的 WSDL.

The bold part is what is causing issue. It is always better to use port instead of binding as OSB modifies the effective WSDL as explained above.

这篇关于在 Oracle Service Bus 中如何使用 WSDL?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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