1

我正在尝试在脚本任务的入口点方法中调用编写以下代码的 java 基础 Web 服务方法。如果我从控制台应用程序调用,但在从 SSIS 控制流调用时,以下代码会正确执行,直到消息框 1 它会正确执行,但在执行 webRequest.GetResponse() 时会发生什么不知道它既不给出错误也不执行下一行代码.

    public void Main()
    {
        string envelopeContent = GetSoapEvvelope();
        XmlDocument soapEnvelopeXml = new XmlDocument();
        soapEnvelopeXml.LoadXml(envelopeContent);
        HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(_url);
        webRequest.Method = "POST"; // get executed
        soapEnvelopeXml.Save(webRequest.GetRequestStream());
        MessageBox.Show("1"); 
        WebResponse response = webRequest.GetResponse();
        MessageBox.Show("2"); // does not get executed
        string responseString = string.Empty;
        using (var reader = new StreamReader(response.GetResponseStream()))
        {
            responseString = reader.ReadToEnd();
        }

        XmlDocument doc = new XmlDocument();
        doc.LoadXml(responseString);
        XmlNode node = doc.SelectSingleNode("//*[local-name()='result']");
       }

请指导我该怎么做?根据我的理解,Web 服务任务需要 WSDL/代理。有没有其他方法可以在请求中调用 java 基础 Web 服务传递肥皂信封?

谢谢

@保罗

4

1 回答 1

1

我在使用 sql server 2008 R2 时遇到了这种情况。现在我在 sql server 2012 中尝试了相同的解决方案,它工作正常,没有任何更改。

于 2014-12-01T16:44:52.033 回答