Android解组错误:意外元素(uri:“url”,local:“scope”)。预期的要素是&;书信电报;{

Android解组错误:意外元素(uri:“url”,local:“scope”)。预期的要素是&;书信电报;{,android,unmarshalling,ksoap,Android,Unmarshalling,Ksoap,我正在尝试使用Android中的SOAPwebservices,并为此编写自己的代码: 下面是我的代码 SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME); request.addSoapObject(getScopeBean()); request.addSoapObject(getLocaleBean()); request.addProperty("commercialRef","somevalidvalue" ); S

我正在尝试使用
Android
中的
SOAP
webservices,并为此编写自己的代码: 下面是我的代码

SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
request.addSoapObject(getScopeBean());
request.addSoapObject(getLocaleBean());
request.addProperty("commercialRef","somevalidvalue" );

SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
     SoapEnvelope.VER11);
envelope.dotNet = true;
String xsd = envelope.XSD;
Log.e("envelop ", xsd);
envelope.setOutputSoapObject(request);
envelope.implicitTypes = true;
envelope.setAddAdornments(false);
HttpTransportSE http = new HttpTransportSE(URL, 2000);
http.call(SOAP_ACTION, envelope);
String requestDump = http.requestDump;
Log.e("requestDump", requestDump);

String responseDump = http.responseDump;
Log.e("responseDump", responseDump);
我的请求是xml

<?xml version="1.0"?>
<v:Envelope xmlns:i="http://www.w3.org/2001/XMLSchema-instance"
xmlns:d="http://www.w3.org/2001/XMLSchema"
xmlns:c="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:v="http://schemas.xmlsoap.org/soap/envelope/" >
<v:Header /><v:Body>
<someMethodname xmlns="NAMESPACE" >
<scope>
<brand>
somevalidname
</brand>
<country>
WW
</country>
<project>
somevalidname
</project>
</scope>
<locale>
<isoCountry>
GB
</isoCountry>
<isoLanguage>en</isoLanguage>
</locale>
<commercialRef>somevalidname</commercialRef>
</getProductDetailByCommercialRef>
</v:Body>
</v:Envelope>

somevalidname
栈单
somevalidname
国标
EN
somevalidname
回应是

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" >
<soap:Body><soap:Fault><faultcode>soap:Client</faultcode>
<faultstring>
Unmarshalling Error: unexpected element 
(uri:"http://", local:"scope").
Expected elements are &lt;{}rangeId>,&lt;{}scope>,&lt;{}commercialRef>,&lt;{}locale> 
</faultstring>
</soap:Fault>
</soap:Body>
</soap:Envelope>

soap:客户端
解组错误:意外元素
(uri:“http://”,本地:“范围”)。
预期的元素为{}rangeId>,{}scope>,{}commercialRef>,{}locale>
我已经试着修复了3天,但没有成功。有人能帮我修复一下吗?我会很好的。 在soapui中,wsdl可以正常工作。 在wsdl文件中,方法

<wsdl:message name="getXXXXXXXXX">
<wsdl:part element="tns:getProductDetailByCommercialRef" name="parameters" /> 

我已经确认了我给出的methodname、命名空间和url是正确的。 如果有人以错误的方式得到我正在做的事情,请提出建议

谢谢,
Android developer将您的请求更改为以下内容:

<soapenv:Envelope ... xmlns:ord="NAMESPACE">
...
<ord:someMethodname>

...

通过SOAP发送xml时,必须包括

<![CDATA[
  <your xml items>
  </your xml items>
]]>

]]>