Das PDF -Stream -Plugin ermöglicht es, eine Ansicht in einen PDF -Stream umzuwandeln und als Ergebnis aus der Aktion zurückzugeben.
Standard unterstützte Ansichten:
Ab 2.0.0 wird HTML in das PDF -Rendering von der OpenHTMLTOPDF -Bibliothek durchgeführt, in der die Apache PDFBox 2 zum Erstellen von PDF -Dokumenten verwendet wird. Apache PDFBox 2 ist ein Open -Source -Java -Tool für die Arbeit mit PDF -Dokumenten und wird unter der Apache -Lizenz v2.0 veröffentlicht.
Aktualisiert, um mit Apache Struts 2.5 kompatibel zu sein
Wechselte auf Java 7
Die Showcase -Anwendung kann aus dem Maven Central Repository heruntergeladen werden.
Laden Sie Struts2-PDFStream-Showcase herunter
Einen Fehler gefunden oder eine Funktionsanforderung haben? Erstellen Sie eine neue Ausgabe oder senden Sie eine Pull -Anfrage.
Wenn Sie Fragen zur Verwendung struts2-pdfstream-plugin verwenden, erstellen Sie ein neues Problem oder stellen Sie eine Frage zum Stapelüberlauf.
Kopieren Sie die folgenden Gläser in Ihren Klassenpfad (Web-inf/lib):
Wenn Sie Maven verwenden, fügen Sie dies zu Ihrem Projektpom hinzu:
<dependencies>
...
<dependency>
<groupId>com.amashchenko.struts2.pdfstream</groupId>
<artifactId>struts2-pdfstream-plugin</artifactId>
<version>2.0.0</version>
</dependency>
...
</dependencies>
Wenn Sie beabsichtigen, Apache -Fliesen -Definition zu transformieren, muss zusätzliches Glas enthalten sein.
Für die Apache-Kacheln Unterstützung Fügen Sie die struts2-pdfstream-tiles hinzu.
<dependency>
<groupId>com.amashchenko.struts2.pdfstream</groupId>
<artifactId>struts2-pdfstream-tiles</artifactId>
<version>2.0.0</version>
</dependency>
pdfstream-default -Paket erweitern oder pdfstream Ergebnistyp hinzufügen.pdfstream -Ergebnistyp. <action name="jspToPdf">
<result type="pdfstream">
<param name="location">/WEB-INF/pages/example.jsp</param>
<param name="cssPaths">css/bootstrap.min.css, css/style.css</param>
<param name="contentDisposition">attachment;filename=jsppdf.pdf</param>
</result>
</action>
<action name="htmlToPdf">
<result type="pdfstream">
<param name="location">/WEB-INF/pages/example.html</param>
<param name="cssPaths">css/bootstrap.min.css, css/style.css</param>
<param name="contentDisposition">attachment;filename=htmlpdf.pdf</param>
</result>
</action>
<action name="tilesToPdf">
<result type="pdfstream">
<param name="location">example</param>
<param name="renderer">tiles</param>
<param name="contentDisposition">attachment;filename=tilespdf.pdf</param>
</result>
</action>
<action name="freemarkerToPdf">
<result type="pdfstream">
<param name="location">/WEB-INF/ftl/example.ftl</param>
<param name="renderer">freemarker</param>
<param name="cssPaths">css/bootstrap.min.css, css/style.css</param>
<param name="contentDisposition">attachment;filename=ftlpdf.pdf</param>
</result>
</action>
Dieses Plugin kann leicht erweitert werden, um Unterstützung für die Umwandlung anderer Ansichten (z. B. Geschwindigkeit) in PDF hinzuzufügen.
Implementieren Sie com.amashchenko.struts2.pdfstream.ViewRenderer interface.
Erstellen Sie die Bean-Definition in Struts.xml oder in Struts-plugin.xml mit type="com.amashchenko.struts2.pdfstream.ViewRenderer" und benutzerdefinierter Name.
<bean type="com.amashchenko.struts2.pdfstream.ViewRenderer"
class="some.package.CustomRenderer" name="customrenderer" />
Verwenden Sie pdfstream -Ergebnis mit dem renderer -Parameter, der auf den Namen der von Ihnen definierten Bean gesetzt ist.
<action name="customToPdf">
<result type="pdfstream">
<param name="location">example</param>
<param name="renderer">customrenderer</param>
</result>
</action>