0

Androidcomunicateを使用する Web サービスに問題があります。ksoapアイデアは、JSON文字列として受け取り、この文字列を解析することです。Web サービス フォーム Eclipse Web サービス エクスプローラーを開きましたが、サーバー側ですべてが正常に動作しているように見えます。要求に提供されたパラメーターは正しいです。

私のエラー:

SoapFault - faultcode: 'soapenv:Server' faultstring: '3' faultactor: 'null' detail: org.kxml2.kdom.Node@b75ddd60

SOAP 障害コードはサーバー エラーを示していますが、上で述べたように、Eclipse Web サービス エクスプローラーから正常に動作します。

私のコード:

private static final String method_get_quest_by_id = "getQuestionsById";
private static final String NAMESPACE = "http://surveys.services.backend.capi.ateam";
private static final String retirieveQuestById = NAMESPACE
        + method_get_quest_by_id;
private static String url = "http://ec2-184-73-10-139.compute-1.amazonaws.com:8080/Services/services/SurveyService";

try{
       SoapObject request = new SoapObject(NAMESPACE,method_get_quest_by_id);
       SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
       request.addProperty("userName", userName);
       request.addProperty("password", pass);
       request.addProperty("id", id);
       envelope.setOutputSoapObject(request);
       HttpTransportSE androidHttpTransport = new HttpTransportSE(url);
       androidHttpTransport.call(retirieveQuestById, envelope);
       Object result = envelope.getResponse();
       resultString= result.toString();
   } catch (Exception E) {
       E.printStackTrace();
   }

私はアンドロイド2.2に取り組んでいます。

誰か助けてくれませんか?私はこれで数日間立ち往生しています...ありがとう

4

1 に答える 1

2

ついに私は問題の理由を見つけました。「識別子」であるはずのパラメータ名として「id」を渡していた。

おそらくフォールトストリングがあまり役に立たなかったために、問題を見つけるのに長い時間がかかりました。私の推測では、faultstring = "3"は、パラメーター番号3に問題があることを示しています。

于 2012-11-17T16:08:37.637 に答える