Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Java XML DOM multiple namespaces

Zdravím,
potřebuji vytvořit XML dokument, jehož kořenový element bude mít dva jmenné prostory:
xmlns:D="DAV:" a
xmlns:C="urn:ietf:params:xml:ns:caldav"

Ke generování XML používám DOM (a nechci nic jiného, žádné externí knihovny, jen to, co nabízí samotná Java).
Problém je, že při vytváření kořenové elementu můžu zadat pouze jeden jmenný prostor a já tam potřebuji dva.
Definice prvního (jediného?) prostoru v kořenovém elementu je v přímo v deklaraci dokumentu:

Document document = DocumentBuilderFactory.newInstance().newDocumentBuilder().getDOMImplementation().createDocument("urn:ietf:params:xml:ns:caldav", "C:calendar-query", null);

A dostanu:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<C:calendar-query xmlns:C="urn:ietf:params:xml:ns:caldav">
   ...
</C:calendar-query>

Jenže já potřebuji:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<C:calendar-query xmlns:C="urn:ietf:params:xml:ns:caldav"
                  xmlns:D="DAV:" >
   ...
</C:calendar-query>

Díky za pomoc.

Předmět Autor Datum
Stačí pridať atribút: document.getDocumentElement().setAttributeNS("www.w3.org/2000/xmlns/", "xmlns…
los 30.03.2013 09:22
los
Skvělý! Toho jsem si nějak nevšiml. Díky! poslední
freez2 30.03.2013 11:06
freez2

Zpět do poradny Odpovědět na původní otázku Nahoru