【发布时间】:2013-08-28 12:22:56
【问题描述】:
我正在尝试在 Coldfusion 中使用 .asmx 网络服务。我可以查看 WSDL,但是在尝试访问方法时,它给了我错误:
Webservice Operation ... with parameters ... cannot be found
我已尝试添加 refreshwsdl = true,如其他类似的 stackoverflow 问题中所述,但没有成功。
我错过了什么?
<cfinvoke webservice = "urlhere.asmx?wsdl"
method="LoginRequest"
ReturnVariable ="result"
refreshwsdl="true" >
<cfinvokeargument name="oid" value="a">
<cfinvokeargument name="username" value="b">
<cfinvokeargument name="password" value="c">
</cfinvoke>
这是 WSDL 的那一部分:
<s:schema elementFormDefault="qualified" targetNamespace="http://blahblah">
<s:element name="loginRequest" type="s0:LoginRequest" />
<s:complexType name="LoginRequest">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="oid" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="username" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="password" type="s:string" />
</s:sequence>
有什么想法吗?
谢谢!
【问题讨论】:
-
如果您尝试先创建对象而不是使用 cfinvoke 会发生什么?
-
尝试 createobject("webservice","blah.asmx?wsdl") ... 然后使用 cfdump 转储对象。它向您展示了哪些方法?
-
网络服务是否公开可用?如果是,我们会帮助您解决问题。
标签: web-services soap coldfusion wsdl asmx