GWTでXMLのようなテキストを解析することは可能ですか?
-
07-07-2019 - |
質問
ブラウザがDOMアプローチでXMLをサポートしていることは知っています
GWTを使用するアプリケーションがあり、サーバーにファイルをアップロードします。 アップロードが完了すると、サーバーがクライアントにBeanで応答する必要があります。これはファイルのアップロードであるため、応答はサーブレットによって処理されます。
サーブレットによって生成された出力を読み取ることで、クライアントで文字列を読み取ることができます。 BeanをXML構造に変換して、クライアントでオブジェクトに戻す予定です。
では、クライアントがこの応答をXMLとして扱い、それを反復処理することは可能ですか?
解決
http://gwt.components.googlepages.com/simplexmlparser
private void parseMessage(String messageXml) {
try {
// parse the XML document into a DOM
Document messageDom = XMLParser.parse(messageXml);
// find the sender's display name in an attribute of the <from> tag
Node fromNode = messageDom.getElementsByTagName("from").item(0);
String from = ((Element)fromNode).getAttribute("displayName");
fromLabel.setText(from);
// get the subject using Node's getNodeValue() function
String subject = messageDom.getElementsByTagName("subject").item(0).getFirstChild().getNodeValue();
subjectLabel.setText(subject);
// get the message body by explicitly casting to a Text node
Text bodyNode = (Text)messageDom.getElementsByTagName("body").item(0).getFirstChild();
String body = bodyNode.getData();
bodyLabel.setText(body);
} catch (DOMException e) {
Window.alert("Could not parse XML document.");
}
}
他のヒント
jqueryを使用してxmlを解析することもでき、GWTでjquery呼び出しをjsniで簡単にラップできます。ここに示すように、はるかに冗長ではありません http://marcgrabanski.com/article/jquery- makes-parsing-xml-easy
編集:GwtQueryはそれを行うかもしれませんか?わからない、まっすぐなポートではないから。
所属していません StackOverflow