2012-09-07 81 views
1

这是我到目前为止。我正在创建一个ASP.NET Web服务来记录我们的内部网站活动。我们的大多数内部网站都是用ColdFusion编写的。我之前在ASP.Net世界中使用过Web服务,但ColdFusion对我来说有点新鲜。我刚开始尝试这种情况。作为解释为什么我们要混合这两种技术:我们现在正在从ColdFusion中转移,并处于过渡阶段。使用ColdFusion消费ASP.Net Web服务

C#代码是第一个。我相信这是正确的。

[WebService(Namespace = "http://oursite.org:86")] 
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] 
[System.ComponentModel.ToolboxItem(false)] 

[System.Web.Script.Services.ScriptService] 
public class LogEvent : System.Web.Services.WebService 
{ 
    private IContainer components = null; 


    public LogEvent() 
    { 
     InitalizeComponent(); 
    } 

    private void InitalizeComponent() 
    { 
    } 

    protected override void Dispose(bool disposing) 
    { 
     if (disposing && components != null) 
     { 
      components.Dispose(); 
     } 

     base.Dispose(disposing); 
    } 



    [WebMethod] 
    public string InsertEvent() 
    { 

     return "HellWorld"; 

    } 
} 

我只是一个简单的CFC来调用Web服务。

<cffunction name="TestWebService" access="remote" returntype="Any" > 

     <cfinvoke webservice="oursite.org:86/LogEvent.asmx?wsdl" method="InsertEvent" returnvariable="result" > 

     <cfdump var="#result#">  
    </cffunction> 

当我运行CFC方法时,我得到以下错误。

Unable to read WSDL from URL: 

我已经搜索并按照我找到的每个教程和建议,但我不是ColdFusion的专家。我错过了什么吗?

任何帮助,将不胜感激。

+0

你有没有尝试把'http://'放在网址前面?我不知道ColdFusion是否会在没有它的情况下解析URL。 –

+0

是的,我认为我尝试过,而不是仅仅看它是否会起作用。 –

+1

哪个版本的ColdFusion? .NET正在生产什么类型的WSDL?我认为这些选择是“RPC”或“文档”风格。查看您的CF版本能够读取哪些WSDL。过去我遇到过这个问题,旧版本的CF不支持更新的WSDL规范。 –

回答

1

所以我完全分开了,ColdFusion服务器是一个云服务器(即不在我们的网络中)并且Web服务正在本地网络服务器上运行。一旦我将ColdFusion代码移动到本地服务器,服务就像它想象的那样工作。