¿Es posible analizar texto como XML en GWT?
-
07-07-2019 - |
Pregunta
Sé que los navegadores admiten XML con enfoque DOM
Tengo una aplicación que usa GWT y carga el archivo en el servidor, cuando finaliza la carga, necesito que el servidor responda al cliente con un Bean, ya que esta es una carga de archivo, la respuesta es manejada por un servlet.
Puedo leer una cadena en el cliente leyendo la salida producida por el servlet. Planeo convertir mi bean en una estructura similar a XML que se convertiría nuevamente en un objeto en el cliente.
Entonces, ¿es posible que mi cliente trate esta respuesta como XML e itere a través de ella?
Solución
vea más en 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.");
}
}
Otros consejos
también puede analizar xml usando jquery, y es fácil ajustar la llamada jquery con jsni en GWT. mucho menos detallado como se demuestra aquí http://marcgrabanski.com/article/jquery- makes-parsing-xml-easy
edit: ¿GwtQuery podría hacerlo? no estoy seguro, ya que no es un puerto directo.