ColdFusion Web 服务 wsdl 元素
我正在通过 Web 服务与另一个使用 ColdFusion 的组织进行数据交换。我们都将发送和接收数据。在下面的示例中,我们将相互共享“电子邮件”。我的 WSDL(根据我的 .NET 类生成)定义了将在响应中返回的元素(比示例中多得多)和 ComplexType。他们的 WSDL 定义他们将发送回一个字符串(该字符串确实返回了我期望的格式化数据)。 他们的 WSDL 没有定义将在响应中返回的元素是否存在技术原因?如果技术上可以做到,那么在 ColdFusion 环境中实施需要付出多少努力?
注意:我是一名 .NET 开发人员,没有使用 ColdFusion 的经验,因此我不知道它们的局限性。
下面是我们的 WSDL 简化版本的相关部分,示例更改为“电子邮件”以保护无辜者。
.NET WSDL 的相关部分:
<s:element name="EmailResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="EmailResult" type="tns:Emails" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="Emails">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="Email" type="tns:ArrayOfEmailObject" />
</s:sequence>
</s:complexType>
<s:complexType name="ArrayOfEmailObject">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="EmailObject" nillable="true" type="tns:EmailObject" />
</s:sequence>
</s:complexType>
<s:complexType name="EmailObject">
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="ID" type="s:int" />
<s:element minOccurs="0" maxOccurs="1" name="subject" type="s:string" />
</s:sequence>
</s:complexType>
ColdFusion WSDL 的相关部分:
<wsdl:message name="displayEmailsResponse">
<wsdl:part name="displayEmailsReturn" type="xsd:string" />
</wsdl:message>
I am working on an exchange of data via web services with another organization that is using ColdFusion. We will both be sending and receiving data. In the sample below, we will be sharing "emails" with each other. My WSDL (generated based on my .NET classes) defines the elements (many more than in the sample) and ComplexTypes that will come back in the response. Their WSDL defines that they will be sending back a string (that string does return back the data formatted as I would expect).
Is there a technical reason that their WSDL doesn't define the elements that will be coming back in the response? If they could technically do it, how much of an effort is it to implement in a ColdFusion environment?
Note: I am a .NET developer and I have no experience with ColdFusion, so I have no idea what their limitations are.
Below is the relevant parts of a dumbed down version of our WSDLs, with the sample changed to "email" to protect the innocent.
The relevant parts of the .NET WSDL:
<s:element name="EmailResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="EmailResult" type="tns:Emails" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="Emails">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="Email" type="tns:ArrayOfEmailObject" />
</s:sequence>
</s:complexType>
<s:complexType name="ArrayOfEmailObject">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="EmailObject" nillable="true" type="tns:EmailObject" />
</s:sequence>
</s:complexType>
<s:complexType name="EmailObject">
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="ID" type="s:int" />
<s:element minOccurs="0" maxOccurs="1" name="subject" type="s:string" />
</s:sequence>
</s:complexType>
The relevant part of the ColdFusion WSDL:
<wsdl:message name="displayEmailsResponse">
<wsdl:part name="displayEmailsReturn" type="xsd:string" />
</wsdl:message>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
是的,我认为他们可以做到。
只需正确定义 CFC 和
即可镜像您的 Java 对象。请参阅:http://help.adobe.com/en_US/ColdFusion /9.0/开发/WSc3ff6d0ea77859461172e0811cbec22c24-78b2.html
Yes I think they could do it.
Just need to define the CFC's and
<cfproperty>
's properly to mirror your Java objects.see: http://help.adobe.com/en_US/ColdFusion/9.0/Developing/WSc3ff6d0ea77859461172e0811cbec22c24-78b2.html
CF 和 .NET 程序集之间还存在一些限制。我不确定它们是否适用于网络服务,但您至少应该了解它们。 http://help.adobe.com/en_US/ColdFusion/9.0 /Developing/WSc3ff6d0ea77859461172e0811cbec13e1a-7fd4.html
另请注意,ColdFusion 是用 Java 编写的,因此 Java 和 .Net 之间的任何转换问题都适用。希望这有帮助。
There are also some limitations noted between CF and .NET assemblies. I'm not sure if they apply to web services however you should at least be aware of them. http://help.adobe.com/en_US/ColdFusion/9.0/Developing/WSc3ff6d0ea77859461172e0811cbec13e1a-7fd4.html
Also note that ColdFusion is written on Java so any conversion problems between Java and .Net would apply. Hope this helps.