2016-10-27 4 views
0

Wir haben eine Anforderung von den Gerichten, um PDFs einzureichen, in denen es eingebettete Daten im xml Format gibt. So dass das XML in einem XFA-Formular in der PDF ist.Notwendigkeit, Xml als XFA zu einem Jasper Report hinzuzufügen erstellt PDF

Wir generieren unsere PDF From Jasper Reports und generieren dann die XML, die wir hinzufügen möchten. Das generierte PDF von Jasper Reports verfügt nicht über ein XFA-Formular, mit dem das Importieren des XML-Dokuments gestartet werden kann.

Wie bekomme ich das PDF, um ein XFA-Formular zu erstellen, damit ich dann das XML der Daten hinzufügen kann?

+1

XFA wird in PDF 2.0 (ISO-32000-2), das 2017 veröffentlicht wird, nicht mehr unterstützt. JasperReports unterstützt XFA nicht; AFAIK, PdfBox unterstützt XFA auch nicht. iText unterstützt XFA in dem Sinne, dass es Ihnen ermöglicht, einen XFA-Stream in eine bestehende Vorlage einzufügen, und Sie können XFA Worker verwenden, um diese Vorlage zu reduzieren. Sie können eine XFA-Vorlage mit Adobe LiveCycle Designer erstellen und diese Vorlage mit iText füllen. Sie können keine XFA-Vorlage mit JasperReports erstellen. Ich denke du verwendest die falschen Werkzeuge. BTW: iText entwickelt eine Alternative für XFA. Vielleicht möchten Sie uns kontaktieren. –

+0

Danke @BrunoLowagie Ich wünschte, wir könnten nicht XFA verwenden, aber es liegt außerhalb unserer Hände. Ich habe eine Antwort hinterlassen, in der ich eine interaktive PDF-Datei erhalten habe, an die ich unser XML-Dokument übergeben und das Formular ausfüllen kann. – user1567291

+1

Können Sie einen Link zu der genauen Entscheidung angeben, die Sie zur Verwendung von XFA zwingt? – mkl

Antwort

2

Dank @BrunoLowagie Leider ist das Format/Regeln von dem, was wir verwenden können, aus unseren Händen. Das PDF wird von den US-Gerichten festgelegt. Aber ein Mitarbeiter konnte mir eine Kopie des PDF-Dokuments vom US Courts-System, einem "interaktiven" Formular, das XFA ist, zukommen lassen, so dass ich die Daten mit all der großartigen Arbeit, die Sie gemacht haben, in die Form bringen konnte habe mit iText gemacht.

Verwenden Sie den folgenden Code. Alles bekommen von Ihrem großen Buch.

AcroFields form = stamper.getAcroFields(); 
XfaForm xfa = form.getXfa(); 
xfa.fillXfaForm(new ByteArrayInputStream(xmlSchemaStream.toByteArray())); 

Für jeden, der dies in der Zukunft liest. Wenn Sie XFA über Java-Code zu Ihrem PDF hinzufügen möchten, ist die EINZIGE aktuelle Lösung Adobe LifeCycle. Die App selbst ist NUR unter Windows verfügbar und Sie müssen sie installieren, um die JAR-Dateien zu verwenden. OH, warte, es wird noch besser, du fügst die Client-Jar-Dateien in deine Anwendung ein. Das heißt, ja, Sie haben es erraten, Sie müssen eine Server-Anwendung installieren und sie in JBoss, Weblogic oder Websphere ausführen.

Also wird es am Ende viel zu viel Geld kosten, um etwas einzurichten, zu verwalten und zu warten, das so dumm ist, wie ein XFA-Formular zu Ihrem PDF hinzuzufügen.

Verwandte Themen