PDF Erzeugung - Probleme mit der XML Datei

schlachtrufe

Grünschnabel
Hallo,

ich möchte mittels Apache FOP aus einer XML-Datei eine PDF-Datei erzeugen - in Java.
Die XSL Datei habe ich soweit fertig und auch den Code in Java.
Das klappt auch soweit alles.

Jedoch gibt es folgendes Problem:
Ich benötige in meiner XML-Datei Angaben zu einer Schema-Datei.
Somit sieht meine XML-Datei so aus:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<Beschreibung 
	xmlns="http://www.person.de" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://www.person.de mySchema.xsd">
<.......>
</Beschreibung>

Wenn ich im Tag "Bechreibung" die ganzen Angaben drinne lasse erhalte ich bei der Umwandlung in PDF folgende Fehlermeldung:
org.apache.fop.fo.FOTreeBuilder fatalError
SCHWERWIEGEND: java.lang.NullPointerException
(Position des Fehlers unbekannt)java.lang.NullPointerException

Nehme ich allerdings in "Beschreibung" alle 3 Angaben raus (so das nur noch "<Beschreibung>" steht, klappt es wunderbar.

Gibt es eine Möglichkeit in Java dem Apach FOP zu sagen, dass er die Angaben irgnorieren soll oder sonstige Möglichkeiten?
 
Hallo,

Also ich kenne mich jetzt nicht richtig mit Apache FOP aus, aber vielleicht solltest du die XML mit einem von JDK mitgeliefertem Transformer in ein FO tranformieren und dann in ein PDF wandeln.

Ich hab deinen Post mal ins Java-Forum verschoben, weil ich denke, dass dir da eher geholfen werden kann.

MFG

Sascha
 
Danke.

Wenn du mit fo eine Stylesheet-Datei meinst, dann hab ich das gemacht.
Also ich hab eine .xsl-Datei erstellt, wo die Informationen drinne stehen wie meine pdf aussehen soll.

Nehme ich die Schema-Informationen aus der XML raus, dann funktioniert das Speichern als pdf. Das ist bis jetzt auch die einzige Lösung die ich bis jetzt gefunden habe.

Ich werde es wohl auch so machen müssen. Man kann ja auch irgendwie die Schema-Datei zur Validierung direkt im Java-Code angeben. Werde mir das wohl angucken müssne und schauen das das dann reicht und klappt.

Bin mir auch nicht sicher ob nun mein Java-Code falsch ist, oder die Schema-Datei oder FOP von Apache das einfach so nicht kann.
 

Neue Beiträge

Zurück