我有以下内容:
public String searchRecipes( String searchString, int pageNumber ) throws Exception
{
SoapObject _client = new SoapObject( "", "searchRecipes" );
_client.addProperty("searchString", searchString);
_client.addProperty("pageNumber", pageNumber);
SoapSerializationEnvelope _envelope = new SoapSerializationEnvelope( SoapEnvelope.VER11 );
_envelope.bodyOut = _client;
Marshal dateMarshal = new MarshalDate();
dateMarshal.register(_envelope);
HttpTransportSE _ht = new HttpTransportSE(Configuration.getWsUrl());
_ht.call("", _envelope);
return _envelope.getResponse().toString();
}
当我使用eclipse在PC上的本地服务器上使用它时,它工作正常。 但是当我部署它时,我得到了:
expected: START_TAG {http://schemas.xmlsoap.org/soap/envelope/}Envelope (position:START_TAG <html>@1:6 in java.io.InputStreamReader@4056fb48)
有人可以帮忙吗?我面对它超过一个星期.........
答案 0 :(得分:2)
好吧,我认为NAMESPACE字符串应该是SoapObject构造函数中的第一个参数。 call()方法也是一样的(这里应该是NAMESPACE + METHOD_NAME作为第一个参数)
试试这个:
_envelope.setOutputSoapObject(_client);
而不是:
_envelope.bodyOut = _client;
要获得响应:它取决于您的Web服务返回的内容(原始对象还是复杂对象?)