Androidアプリの開発にとって非常に新しいです。私の新しいAndroidアプリでは、Webサービスからいくつかのデータを表示したい。これは私がSOAP message
を持っていることを意味し、私はSOAP応答からデータを解析する必要があります。 iPhoneのアプリでは、SOAPメッセージの応答を解析することは非常にうまく行っていましたが、アンドロイドではこれを行う方法がわかりません。私はGoogleでたくさんのものを探し、いくつかのアイデアを得ました。しかし、これは非常に混乱しています。誰でもSOAPを要求/応答を受信し、応答(XML format
)をSAXParser
Android
で応答を理解するための最も簡単な方法を提案できますか?私はksoap2-android-assembly-2.6.0-jar-with-dependencies.jar
を私のプロジェクトにインストールしました。ここでいくつかのサンプルコードを見つけました。AndroidでSOAPリクエストを送信してXML形式のSOAPレスポンスを送信するにはどうすればいいですか?
import java.io.*;
import org.ksoap2.SoapEnvelope;
import org.kxml2.io.KXmlParser;
import org.xmlpull.v1.XmlPullParserException;
public class ParsingSteps
{
public static void main(String[] args)
{
try{
// String msg="<hello>World!</hello>";
String msg = "<SOAP-ENV:Envelope " + "xmlns:SOAP-ENV=\"http://
www.w3.org/2001/12/soap-envelope\" " + "xmlns:xsi=\"http://www.w3.org/
2001/XMLSchema-instance <http://www.w3.org/%0A2001/XMLSchema-instance>\""
+"xmlns:xsd=\"http://www.w3.org/2001/
XMLSchema\"& gt;" +
"<SOAP-ENV:Body>" +
"<result>" +
"<message xsi:type=\"xsd:string\">Hello World</message>" +
"</result>" +
"</SOAP-ENV:Body>" +
"</SOAP-ENV:Envelope>";
// byte[] in= msg.getBytes();
KXmlParser parser=new KXmlParser();
parser.setInput(new StringReader(msg));
SoapEnvelope soapenvelope= new SoapEnvelope
(SoapEnvelope.VER12);
//soapenvelope.parse(parser);
soapenvelope.parseBody(parser);
}
catch (IOException e) {
System.out.println("Error reading URI: " + e.getMessage());
} catch (XmlPullParserException e) {
System.out.println("Error in parsing: " + e.getMessage());
}
// String result=parser.getName();
//System.out.println(result);
}
}
このコードは正しいですか?私の質問にはどんな提案もお願いします。これで私を助けてください。前もって感謝します。
お返事ありがとうございます。あなたの考えを私のプロジェクトに取り入れます。私はあなたの助けを将来したい。ありがとう。 – Gopinath
@Gopinathは正しいメッセージを送信するためにプロパティをどのように設定しましたか? – arniotaki