Вопрос

Я знаю, что браузеры поддерживают XML с подходом DOM

У меня есть приложение, которое использует GWT, и оно загружает файл на сервер, Когда загрузка завершится, мне нужно, чтобы сервер ответил клиенту с помощью Бина, поскольку это загрузка файла, ответ обрабатывается сервлетом.

Я могу прочитать строку на клиенте, прочитав вывод, созданный сервлетом. Я планирую преобразовать мой 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.");
  }
}

Другие советы

вы также можете анализировать xml с помощью jquery, и его легко обернуть вызовом jquery с помощью jsni в GWT. гораздо менее многословный, как показано здесь делает-синтаксический-XML-легкий

edit: GwtQuery может даже сделать это? не уверен, так как это не прямой порт.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top