XML Element mit ":" im Namen

Status
Nicht offen für weitere Antworten.

outbreaker

Bekanntes Mitglied
Hallo,

Ich möchte ein Word 2003 Dokument als XML erstellen. Also so das ich das Dokument in Word öffnen kann.
Nun wollte ich mit JDOM das Dokument erstellen brauche aber in den Tag namen z. B. vom Element Doppelpunkte

So müsste das aussehen:

Code:
...
Element elementToAdd = new Element("w:wordDocument");
...
bekomme aber diesen Fehler:
Exception in thread "main" org.jdom.IllegalNameException: The name "w:wordDocument" is not legal for JDOM/XML elements: Element names cannot contain colons.
at org.jdom.Element.setName(Element.java:207)
at org.jdom.Element.<init>(Element.java:141)
at org.jdom.Element.<init>(Element.java:153)
at Example2.main(Example2.java:30)

Geht das irgendwie mit JDOM oder gibt es eine andere Bibliothek um XML Dokumente zu erstellen wo Doppelpunkte gehen?

Danke
 

Wildcard

Top Contributor
Es gibt keine : im Namen von XML Elementen. Das ist ein Namespace Präfix.
Bist du dir sicher das du auf diese Art ein Word Doc erstellen willst, das scheint mir recht abenteuerlich, bis hoffnungslos.
 

outbreaker

Bekanntes Mitglied
Wildcard hat gesagt.:
... recht abenteuerlich, bis hoffnungslos.
Wie soll ich das verstehen?

Ich habe mir das XML mal angesehen und ich denke das es nicht das Problem wäre wenn ich das mit den Doppelpunkten hinbekommen würde.

Aber daran scheitert es im Moment.
oder hast du eine andere Idee wie ich an ein Worddokument komme?
Hatte mir POI schonmal angesehen aber ich fand kein funktionierendes Beispiel und ich fand das auch relativ kompliziert. Da fand ich die XML Idee am einfachsten.
 

Wildcard

Top Contributor
Das Format ist keine offene Spezifikation, was soll daran einfach sein?
Nimm eine der API's, oder OpenOffice.
 

outbreaker

Bekanntes Mitglied
API's für doc?

naja da liegt aus meiner Sicht das Problem so wirklich gibt es da keine

POI fand ich nicht so einfach
OpenXML4J ist gerade mal in der Betaphase

Ich weiß das es keine offene Spezi ist aber die Elemente die ich brauche habe ich soweit schon rausgefiltert.

oder fallen dir gute java APIs ein für Word nicht OpenOffice soll MS Word Dokument sein
 

Wildcard

Top Contributor
Installiert nicht unbedingt, OOo gibt's auch Portable.
Wenn du einen Server hast, lässt sich das ganze auch Remote und über Webservices machen.
OOo ist extrem mächtig, aber für ein einfaches Dokument sicherlich übertrieben.
 

Wildcard

Top Contributor
Was ist überhaupt dein Zielformat?
Na vielleicht muss ich mir doch was eigenes ausdenken wenn es keine XML API gibt um solche Elemente anzulegen
Das ist natürlich Unsinn, du verstehst nur den Unterschied zwischen dem Namem und dem qualifizierten Namen nicht.
 

outbreaker

Bekanntes Mitglied
Ich möchte ein Dokument generieren welches der Anwender dann in Word öffnen kann um noch spezielle Sachen anzupassen.

Der Benutzer kommt eine Maske kann Sachen einstellen, dann wird das Dokument generiert und kann dann in Word nach bearbeitet werden wenn nötig.
Das ist das Ziel.
Am einfachsten, dachte ich jetzt, ist es das Dokument in dem xml-Format für Word zu erstellen
 

outbreaker

Bekanntes Mitglied
Wildcard hat gesagt.:
Das ist natürlich Unsinn, du verstehst nur den Unterschied zwischen dem Namem und dem qualifizierten Namen nicht.

Das ist möglich ???:L

Das Word XML sieht so aus:

<w:wordDocument w:macrosPresent="no" w:embeddedObjPresent="no" w:eek:cxPresent="no" xml:space="preserve">
<o:DocumentProperties>
<o:Author>XYZ</o:Author>
<o:LastAuthor>XYZ</o:LastAuthor>
<o:Revision>1</o:Revision>
<o:TotalTime>0</o:TotalTime>
<o:Created>2008-06-10T18:06:00Z</o:Created>
.......

Kann ich sowas mit JDOM erreichen?
 

Wildcard

Top Contributor
Was soll's denn werden? WordprocessingML 2003?
OfficeOpenXML Prä-ISO OfficeOpenXML Post ISO?

Mit allen drei Formaten wäre ich sehr vorsichtig, da sie eher schlecht als recht funkionieren.
Die hässliche Binärvariante (mit zB POI) ist AFAIK robuster.
Und ja, natürlich kann man das mit JDom machen.

EDIT:
oder nimm doch einfach RTF, das ist wesentlich einfacher und genügt für einfache Dokumente vollkommen.
 

outbreaker

Bekanntes Mitglied
An RTF hatte ich auch schon gedacht.
gibt es für RTF eine Java API?

Wir kann ich das mit den Doppelpunkten und JDOM realisieren?
 

outbreaker

Bekanntes Mitglied
vielleicht stehe ich ja gerade auf dem Schlauch aber das geht nicht:

Code:
Element root = new Element("w",":","wordDocument");

Exception in thread "main" org.jdom.IllegalNameException: The name ":" is not legal for JDOM/XML Namespace prefixs: Namespace prefixes cannot contain colons.
at org.jdom.Namespace.getNamespace(Namespace.java:158)
at org.jdom.Element.<init>(Element.java:184)
at Example1.main(Example1.java:17)
 

Wildcard

Top Contributor
Sofern es sich um Wordprocessing ML 2003 handelt (die Frage ignorierst du ja), rate ich einfach ins Blaue das w der Präfix für
Code:
http://schemas.microsoft.com/office/word/2003/wordml
sein soll. Aus den Informationen die du mir zur Verfügung stellst lässt sich das allerdings nicht herleiten.
Ein XML Auffrischungskurs wäre wohl angebracht bevor du versuchst ein wordML zu basteln.
 

outbreaker

Bekanntes Mitglied
aso

also so
Code:
Element root = new Element("wordDocument","w","xyz");

geht das auch für Attribute?

muss ja sowas hinbekommen
<w:wordDocument w:macrosPresent="no" w:embeddedObjPresent="no" w:eek:cxPresent="no" xml:space="preserve">

habe bei setAttribute nicht diese Möglichkeit gefunden
 

outbreaker

Bekanntes Mitglied
Wildcard hat gesagt.:
Sofern es sich um Wordprocessing ML 2003 handelt (die Frage ignorierst du ja), rate ich einfach ins Blaue das w der Präfix für
Code:
http://schemas.microsoft.com/office/word/2003/wordml
sein soll. Aus den Informationen die du mir zur Verfügung stellst lässt sich das allerdings nicht herleiten.
Ein XML Auffrischungskurs wäre wohl angebracht bevor du versuchst ein wordML zu basteln.

sorry Frage überlesen :shock:

ja es soll WordprocessingML 2003 werden
in XML werde ich mich noch genauer einarbeiten :### aber auch "learning by doing" :wink:
 

Wildcard

Top Contributor
http://www.jdom.org/docs/apidocs/org/jdom/Element.html#setAttribute(java.lang.String,%20java.lang.String,%20org.jdom.Namespace)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
8u3631984 jaxb XML Mapper - Root Element mit Attribut XML & JSON 20
B DOMParser - Element filtern XML & JSON 1
N jdom2 - Referenz auf Nested Element XML & JSON 2
H XML Element `Class` wird nicht gelesen XML & JSON 2
F xml Element ersetzen XML & JSON 5
M Text eines Elements in XML Datei mit JAVA bearbeiten und kompletten Element-Zweig hinzufügen XML & JSON 16
W XML-Element komplett löschen XML & JSON 5
L XML nur ein Element einlesen XML & JSON 2
R XSD in einer choice mehrmals das selbe element möglich XML & JSON 5
S JDom XML ein Element hinzufügen. XML & JSON 1
ARadauer xsd ref auf element oder typen verwenden? XML & JSON 2
R cvc-complex-type.3.2.2: Attribute 'uuid' is not allowed to appear in element 'jasperReport'. XML & JSON 4
F EMF, XSD to ECore mapping, Attribute vs. Element XML & JSON 2
C xml validierung gegen xsd mit jdom: Fehlermeldung Cannot find the declaration of element ... XML & JSON 8
Landei JAXB: Wert von übergeordneten Element XML & JSON 4
N Alle namespaces ins Root Element hinauf ziehen XML & JSON 2
N Alle namespaces ins Root Element hinauf ziehen XML & JSON 2
S Validierung mit JAXB2 ohne root-element XML & JSON 10
E xml Element sortieren XML & JSON 2
T Xpath & JDOM Element Pfad ausgeben XML & JSON 2
Z XML parsen - Element mit Werten XML & JSON 2
enne87 Element-Werte werden falsch ausgelesen XML & JSON 2
M XSD - Child Element möglich, aber nicht zwingend erforderlich XML & JSON 6
N Individuelles Wrapper-Element um Collection mit JAXB XML & JSON 6
W Element mit XPath @id ermitteln wenn nur ein teil der id bekannt ist XML & JSON 2
R Element - Ausgeben von Kommentar XML & JSON 4
L Element manipulieren in einem DOMResult per XPath XML & JSON 10
G mit Transformer.transform ein Element überschreiben XML & JSON 2
G XSL: Element über eine Variable ermitteln XML & JSON 4
sparrow JDom Element.getChild("Name") liefert null obwohl vorhanden XML & JSON 4
B XML-Element als String ausgeben XML & JSON 5
L Element einlesen <Telefon name="Karl">134313 XML & JSON 2
S Cannot find the declaration of element XML & JSON 2
M Jaxb Annotationen, Wert als XML Element XML & JSON 2
G Element mit Text und Unterelement XML & JSON 2
S Ampersand im Jdom-Element XML & JSON 2
C jdom.Element nicht vorhanden? XML & JSON 4
W JDOM element ändern funzt nich :( [problem gelöst] XML & JSON 3
M XML einlesen - prüfen ob Element vorhanden XML & JSON 2
F choice-Element mit minOccurs=0" XML & JSON 11
X Xpath, alle Element die mit "user" beginnen auswäh XML & JSON 2
C Mehrere Element_Nodes zusammenfassen zu einem Element XML & JSON 9
K Auf bestimmtes Element im XML zugreifen XML & JSON 3
M JDOM und XPath, zu Element zugehörigen XPath-Ausdruck XML & JSON 5
H Adapter: String->Element bzw. Element->String XML & JSON 6
M JDOM Element ohne Inhalt kopieren ? XML & JSON 3
S String in element casten XML & JSON 2
S Element hinzufügen XML & JSON 2
B Element an bestimmter Stelle einfügen (JDOM) XML & JSON 8
S zum element Attribut xmlns zufügen XML & JSON 6
N bestimmtes Element auslesen - ich verzweifel XML & JSON 3
J [Newbie] [JDOM] Element aus XML entfernen klappt nicht XML & JSON 4
P [Solved] XSL: Element-Variable auslesen XML & JSON 2
Noar XSLT - Element-Wrapping XML & JSON 2
R JDOM Root-Element entfernen aber Rest behalten XML & JSON 10
S Element addContent(Element) gibts nicht XML & JSON 5
R node.getNodeValue() bringt mir komplettes CDATA-Element XML & JSON 3
W Element Liste in Root XML & JSON 5
D Text, String vor einem Root Element einfügen XML & JSON 2
W root element parsen,Hilfe! XML & JSON 5
E Element.setTextContent(String); Ersatz fuer Version 1.4? XML & JSON 3
A NullPointerException bei leerem Element XML & JSON 4
D XML: Element section content does not follow the DTD XML & JSON 6
clemson element mit id in jdom löschen XML & JSON 2
A Element an einer bestimmten Stelle einfügen (nicht am Ende) XML & JSON 4
R JDom: XML Code von Element, und: ist Element ein standalone XML & JSON 2
J Parent- und Child-Elemente mit gleiche Namen, geht das ? XML & JSON 1
M O/R-Mapping: discriminator-column und join-column mit gleichem Namen? XML & JSON 2
M Leerzeichen und anderes im XML Namen XML & JSON 10
N Node unter anderem Namen kopieren XML & JSON 3

Ähnliche Java Themen

Neue Themen


Oben