Создать XML-документ на стороне клиента GWT
Я пытаюсь создать некоторые XML-файлы на клиенте, а затем отправить их на сервер (ничего особенного, просто что-то вроде <root><blabla>...</blabla>...</root>
).
Делать это вручную было бы возможно, но крайне негибко, и я вижу, что делаю много ошибок. Поэтому я искал генератор XML в GWT и нашел пакет "com.google.gwt.xml.client". К сожалению, я не могу найти примеры, как создавать XML-документы с его помощью. Кто-нибудь может привести пример (или пример)?
С наилучшими пожеланиями, Стефан
3 ответа
Вот пример. Для генерации следующего XML:
<root>
<node1 attribute="test">
my value
</node1>
<node2 attribute="anothertest"/>
</root>
Вы должны написать следующий код на стороне клиента Java:
import com.google.gwt.xml.client.Document;
import com.google.gwt.xml.client.Element;
import com.google.gwt.xml.client.XMLParser;
public static void main(String[] args) {
Document doc = XMLParser.createDocument();
Element root = doc.createElement("root");
doc.appendChild(root);
Element node1 = doc.createElement("node1");
node1.setAttribute("attribute","test");
node1.appendChild(doc.createTextNode("my value"));
doc.appendChild(node1);
Element node2 = doc.createElement("node2");
node2.setAttribute("attribute","anothertest");
doc.appendChild(node2);
System.out.println(doc.toString());
}
Хорошо, ваш anser работает, но некоторые вещи нужно добавить.
Сначала вы должны включить
<inherits name="com.google.gwt.xml.XML" />
в вашем файле *gwt.xml (http://blog.elitecoderz.net/gwt-and-xml-first-steps-with-comgooglegwtxmlerste-schritte-mit-gwt-und-xml-unter-comgooglegwtxml/2009/05/)
во-вторых, вы используете следующие пространства имен:
import com.google.gwt.xml.client.Document;
import com.google.gwt.xml.client.Element;
import com.google.gwt.xml.client.XMLParser;
Принятый ответ правильный, но есть небольшая ошибка, узел 1 и узел 2 должны быть связаны с root, а не с doc.
Итак, эта строка:
doc.appendChild(node1);
действительно должно быть:
root.appendChild(node1);