获取“无法加载WSDL”错误

时间:2010-12-14 23:05:23

标签: asp.net flex web-services air wsdl

当我尝试为我的Asp.Net WebService加载WSDL时,我收到此错误。

faultCode    "Server.Error.Request"   
faultDetail    "Unable to load WSDL. If currently online, please verify the URI and/or format of the WSDL (http://myurl/web/Service.asmx?WSDL)"   
faultString    "HTTP request error"  

这是代码:

service = new WebService();
service.addEventListener("fault", onServiceFault);
service.addEventListener(LoadEvent.LOAD, onWSDLLoaded);
service.loadWSDL(url);   

我已经完成了大量的谷歌搜索,并找到了几种可能的解决方案,但它似乎不是任何一种。我会经历我尝试过的事情。

  1. 我可以在浏览器IE和FF中打开链接。
  2. 无需用户签名证书
  3. 我的交叉域设置正确
  4. 这是非常有趣的部分,如果我使用Flex SDK 3.2进行编译和运行,它会起作用,但我正在尝试将AIR 2.5集成到所需的某些功能中,因此我更新到Flex 3.5 w / AIR 2.5。如果我使用此SDK构建它不起作用。

    我已经使用HTTP流量监视器(Fiddler)来查看请求,并注意到使用3.5 SDK时它不会发送请求。因此它必须是弹性方面的东西,因为它显然永远不会得到我的服务。

    有没有人对尝试什么或其他人有这个问题有任何其他建议?

1 个答案:

答案 0 :(得分:1)

在Windows操作系统上安装.air时,我遇到与Flex 4.0 / AIR 2.5完全相同的问题。在Mac OS上它运行得很好。从代码运行/调试时,它完全正常。代码设置为在有效SSL证书后面的Web服务上执行.loadWSDL()。

降级到AIR 2.0修复了它。

这里的任何建议都会很棒。感谢用于阐明这个问题的原始海报。

更新:将Flex Framework文件设置为RSL,这是一个AIR 2.5问题。我帮助Adobe跟踪它,现在他们已经重新创建了它:http://forums.adobe.com/message/3345972#3345972