2

我必须在我的项目中使用 ColdFusion 网络服务。我已经在我的项目中添加了服务引用,它已成功加载,但在我的 Web 应用程序中无法访问服务。

我所做的是假设我有一个 url http://www.server/service.cfc?wsdl- 我添加了上述服务引用并将服务引用名称指定为MyServiceReference.

当我MyServiceReference在我的类文件中访问时,它是不可访问的。

4

1 回答 1

2

本周我在使用 Coldfusion 网络服务时遇到了类似的问题。为了解决它,我建议您可以:

1. 使用旧的“添加 Web 引用”(如 .NET 2.0)而不是使用“添加服务引用”来使用 WS

就我而言,问题是 web 服务的方法是使用 return void 生成的,并且它们没有参数,但是当我使用这种技术添加服务时,代理已正确生成。这篇文章帮助了我。

2.尝试使用Visual Studio Developer Command Tools中的WSDL.exe,看看服务描述是否有错误

如果有可能您将无法正确生成代理,您应该要求开发人员更正服务。
我提到的工具可以在“开始菜单\程序\Microsoft Visual Studio 2012\Visual Studio Tools\Developer Command Prompt for VS2012”中找到(也适用于 VS2010)。就我而言,我看到了以下错误:

“此 Web 参考不符合 WS-I Basic Profile v1.1.R2706:描述中的 wsdl:binding 必须为所有 soapbind:body、soapbind:fault、soapbind 中的 use 属性使用“literal”值: header 和 soapbind:headerfault 元素。”

于 2013-06-12T15:38:09.510 回答