从Blackberry调用.Net Web服务时出错

时间:2012-02-17 15:41:32

标签: web-services blackberry

我正在调用.Net Web服务,它将复杂类型作为参数(使用KSoap2)。我在成功之前就完成了这个,所以我决定只复制我的旧代码并将其粘贴到一个新方法中,当然用一些与当前Web服务相关的代码替换一些代码。

我能看到的唯一真正的区别是新网站服务的.asmx的网址不同。

问题是我一直收到以下错误:

(我在SoapEnvelope.VER11时得到以下内容)

org.xmlpull.v1.XmlPullParserException: expected: END_TAG {http://schemas.xmlsoap.org/soap/envelope/}Body     (position:END_TAG </{http://schemas.xmlsoap.org/soap/envelope/}soap:Fault>@1:338 in java.io.InputStreamReader@199cb474)

(以及SoapEnvelope.VER12时的以下内容)

org.xmlpull.v1.XmlPullParserException: expected: START_TAG {http://www.w3.org/2001/12/soap-envelope}Envelope (position:START_TAG <{http://schemas.xmlsoap.org/soap/envelope/}soap:Envelope>@1:207 in java.io.InputStreamReader@5b209e72

为什么错误消息会发生这样的变化,具体取决于我使用的SOAP版本?

我也尝试用HttpTransport.requestDump打印出我的信封,我得到以下内容:

xmlns:v="http://schemas.xmlsoap.org/soap/envelope/">
<v:Header />
    <v:Body>
        <postMessage xmlns="http://www.magnatech.com/" id="o0" c:root="1">
            <myMessage i:type="n0:Message" xmlns:n0="http://www.magnatech.com/">
                <messageContent i:type="d:string">HEY</messageContent>
                <userName i:type="d:string">TEST USERNAME</userName>
                <agentName i:type="d:string">TEST AGENT NAME</agentName>
                <userID i:type="d:string">0</userID>
                <agentID i:type="d:string">0</agentID>
                <fromAgent i:type="d:string">false</fromAgent>
                <messageID i:type="d:string"></messageID>
                <accountNumber i:type="d:string">TEST ACCOUNT</accountNumber>
            </myMessage>
        </postMessage>
    </v:Body>

看起来很好,我实际上用其他“WORKING”Web服务调用的信封做了同样的事情,它们是相同的,当然除了元素名称。

最后,这是HttpTransport.responseDump的输出:

<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><soap:Fault><faultcode>soap:Client</faultcode><faultstring>Could not deserialize Soap message</faultstring></soap:Fault></soap:Body></soap:Envelope>

因此,当我发送信封时,信封显然有问题,但我发现它并没有错。

可能是什么问题?我已经尽了一切可能,但我的想法已经不多了。

任何帮助都将不胜感激。

由于

0 个答案:

没有答案