3

实际上,我使用此代码访问此 Web 服务FahrenheitToCelsius 方法,得到了正确的响应,但是当我尝试访问我的 Web 服务时得到

java.io.IOException:HTTP 请求失败,HTTP 状态:500

错误,它指向transport.call(SOAP_ACTION, envelope);

SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);                     
//Use this to add parameters                              
request.addProperty("username",usr);
request.addProperty("password",pass);
request.addProperty("backOfficePartnerId",id);

//Declare the version of the SOAP request
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER10);

envelope.setOutputSoapObject(request);

envelope.dotNet = true;

try {
    HttpTransportSE transport = new HttpTransportSE(URL);

    Log.i("bodyout", "" + envelope.bodyOut.toString());

    transport.call(SOAP_ACTION, envelope);      

    // Get the SoapResult from the envelope body.
    SoapObject result = (SoapObject)envelope.bodyIn;
    System.out.println("result IN F TO C::"+result);
}catch(Exception e){
    e.printStackTrace();
}

直到这里得到正确的回应。我调试并检查了正在发送正确的正文的值,作为对我的响应,bodyin 为空。

4

3 回答 3

0

HTTP Status: 500 是一个内部服务器错误,它可能与您的 .NET 服务器端编码有关。

于 2013-06-28T14:35:41.697 回答
0

将 VER10 更改为 VER11。SoapSerializationEnvelope 信封 = new SoapSerializationEnvelope(SoapEnvelope. VER11 ) 为我工作

于 2014-09-18T16:58:55.900 回答
0

我搜索了很多,但找不到任何具体的解决方案。我通过下载新的服务器包(相同版本)解决了我的问题,并用新的服务器包替换了以前的服务器包。(关于 Apache tomcat 7)

于 2015-02-20T12:52:48.240 回答