...
Nach dem Wizard wird folgender Code generiert:
Code Block language java theme Eclipse firstline 1 linenumbers true Report.New().jrxml("/report.jrxml") .dataSource(com.xdev.dal.DAOs.get(com.company.jasperreportsdemo.dal.ProductDAO.class) .getProductsOrderedByCategory()) .parameter("creator", "CK").parameter("created", new Date()).exportToResource(Format.Pdf());
Weisen Sie einer Variable das erzeugt Statement zu
a) Positionieren Sie nun den Cursor an das Ende des gesamten Statements also nach "exportToResource(Format.Pdf());"
b) Drücken Sie Strg + 1 → Wählen Sie "Assing statement to new local variable (Strg+2, L)"
c) Bestätigen Sie die Auswahl mit Enter.
Es wird jetzt automatisch eine Variable vor dem Statement erzeugt welche die Resource entgegen nimmt.Code Block language java theme Eclipse firstline 1 linenumbers true Resource exportToResource = Report.New().jrxml("/report.jrxml") .dataSource(com.xdev.dal.DAOs.get(com.company.jasperreportsdemo.dal.ProductDAO.class) .getProductsOrderedByCategory()) .parameter("creator", "CK").parameter("created", new Date()).exportToResource(Format.Pdf());
Erstellen Sie eine Komponente, mit welcher Sie PDF-Resources anzeigen können:
Code Block language java theme Confluence @Tag("object") public class EmbeddedPdfDocument extends Component implements HasSize { public EmbeddedPdfDocument(final StreamResource pdfResource) { this(); this.getElement().setAttribute("data", pdfResource); } public EmbeddedPdfDocument(final String url) { this(); this.getElement().setAttribute("data", url); } protected EmbeddedPdfDocument() { this.getElement().setAttribute("type", "application/pdf"); this.setSizeFull(); } }
Fügen Sie dann diese Komponente zu Ihren View hinzu:
Code Block language java theme Confluence Resource exportToResourceresource = Report.New().jrxml("/report.jrxml") .dataSource(com.xdev.dal.DAOs.get(com.company.jasperreportsdemo.dal.ProductDAO.class) .getProductsOrderedByCategory()) .parameter("creator", "CK").parameter("created", new Date()).exportToResource(Format.Pdf()); final this.add(new EmbeddedPdfDocument(exportToResource)HtmlObject htmlPreview = new HtmlObject(resource, "application/pdf"); htmlPreview.setSizeFull(); final Dialog dialog = new Dialog(htmlPreview); dialog.setWidth("900px"); dialog.setHeight("700px"); dialog.open();