O plug -in de fluxo PDF permite transformar uma exibição em um fluxo PDF e devolvê -lo como resultado da ação.
Visualizações suportadas padrão:
A partir de 2.0.0, a renderização HTML na PDF é feita pela biblioteca OpenHtmltopdf, que usa o Apache PDFbox 2 para criar documentos PDF. O Apache PDFBox 2 é uma ferramenta Java de código aberto para trabalhar com documentos PDF e é publicado no Apache License v2.0.
Atualizado para ser compatível com o Apache Struts 2.5
Mudou para Java 7
O aplicativo Showcase pode ser baixado do repositório central do Maven.
Download STRUTS2-PDFSTREAM-SHOWCASE
Encontrou um bug ou tem uma solicitação de recurso? Crie um novo problema ou envie uma solicitação de tração.
Se você tiver dúvidas sobre como usar struts2-pdfstream-plugin crie um novo problema ou faça uma pergunta no excesso de pilha.
Copie os frascos seguintes em seu caminho de classe (web-inf/lib):
Se você estiver usando o MAVEN, adicione isso ao seu projeto POM:
<dependencies>
...
<dependency>
<groupId>com.amashchenko.struts2.pdfstream</groupId>
<artifactId>struts2-pdfstream-plugin</artifactId>
<version>2.0.0</version>
</dependency>
...
</dependencies>
Se você pretende transformar a definição de ladrilhos Apache, o jar adicional deve ser incluído.
Para o suporte de ladrilhos Apache, adicione o struts2-pdfstream-tiles .
<dependency>
<groupId>com.amashchenko.struts2.pdfstream</groupId>
<artifactId>struts2-pdfstream-tiles</artifactId>
<version>2.0.0</version>
</dependency>
pdfstream-default ou adicione o tipo de resultado pdfstream .pdfstream . <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>
Este plug -in pode ser facilmente estendido para adicionar suporte para transformar outras vistas (por exemplo, velocidade) em PDF.
Implementar com.amashchenko.struts2.pdfstream.ViewRenderer Interface.
Crie definição de feijão em struts.xml ou em struts-plugin.xml com type="com.amashchenko.struts2.pdfstream.ViewRenderer" e nome personalizado.
<bean type="com.amashchenko.struts2.pdfstream.ViewRenderer"
class="some.package.CustomRenderer" name="customrenderer" />
Use o resultado pdfstream com o parâmetro renderer definido com o nome do feijão que você definiu.
<action name="customToPdf">
<result type="pdfstream">
<param name="location">example</param>
<param name="renderer">customrenderer</param>
</result>
</action>