Search in sources :

Example 1 with Project

use of com.gpcoder.model.Project in project Java-Tutorial by gpcodervn.

the class GenerateDocxReport method main.

public static void main(String[] args) throws IOException, XDocReportException {
    // 1) Load Docx file by filling Velocity template engine and cache it to the registry
    InputStream in = new FileInputStream("template/Project.docx");
    IXDocReport report = XDocReportRegistry.getRegistry().loadReport(in, TemplateEngineKind.Velocity);
    // 2) Create fields metadata to manage lazy loop (#forech velocity) for table row.
    // Create FieldsMetadata by setting Velocity as template engine
    FieldsMetadata fieldsMetadata = report.createFieldsMetadata();
    // Load fields metadata from Java Class
    fieldsMetadata.load("project", Project.class);
    // Load is called with true because model is a list of Developer.
    fieldsMetadata.load("developers", Developer.class, true);
    // 3) Create context Java model
    IContext context = report.createContext();
    Project project = new Project("XDocReport");
    context.put("project", project);
    // Register developers list
    context.put("developers", getDevelopers());
    // 4) Generate report by merging Java model with the Docx
    OutputStream out = new FileOutputStream(new File("Project_out.docx"));
    report.process(context, out);
}
Also used : Project(com.gpcoder.model.Project) IXDocReport(fr.opensagres.xdocreport.document.IXDocReport) FieldsMetadata(fr.opensagres.xdocreport.template.formatter.FieldsMetadata) IContext(fr.opensagres.xdocreport.template.IContext) FileInputStream(java.io.FileInputStream) InputStream(java.io.InputStream) OutputStream(java.io.OutputStream) FileOutputStream(java.io.FileOutputStream) FileOutputStream(java.io.FileOutputStream) File(java.io.File) FileInputStream(java.io.FileInputStream)

Example 2 with Project

use of com.gpcoder.model.Project in project Java-Tutorial by gpcodervn.

the class GeneratePDF method main.

public static void main(String[] args) throws XDocConverterException, XDocReportException, IOException {
    // 1) Load Docx file by filling Velocity template engine and cache it to the registry
    InputStream in = new FileInputStream("template/Project.docx");
    IXDocReport report = XDocReportRegistry.getRegistry().loadReport(in, TemplateEngineKind.Velocity);
    // 2) Create fields metadata to manage lazy loop (#forech velocity) for table row.
    // Create FieldsMetadata by setting Velocity as template engine
    FieldsMetadata fieldsMetadata = report.createFieldsMetadata();
    // Load fields metadata from Java Class
    fieldsMetadata.load("project", Project.class);
    // Load is called with true because model is a list of Developer.
    fieldsMetadata.load("developers", Developer.class, true);
    // 3) Create context Java model
    IContext context = report.createContext();
    Project project = new Project("XDocReport");
    context.put("project", project);
    // Register developers list
    context.put("developers", getDevelopers());
    // 4) Generate report by merging Java model with the Docx
    OutputStream out = new FileOutputStream(new File("Project_Out.pdf"));
    // report.process(context, out);
    Options options = Options.getTo(ConverterTypeTo.PDF).via(ConverterTypeVia.XWPF);
    report.convert(context, options, out);
}
Also used : Project(com.gpcoder.model.Project) Options(fr.opensagres.xdocreport.converter.Options) IXDocReport(fr.opensagres.xdocreport.document.IXDocReport) FieldsMetadata(fr.opensagres.xdocreport.template.formatter.FieldsMetadata) IContext(fr.opensagres.xdocreport.template.IContext) FileInputStream(java.io.FileInputStream) InputStream(java.io.InputStream) OutputStream(java.io.OutputStream) FileOutputStream(java.io.FileOutputStream) FileOutputStream(java.io.FileOutputStream) File(java.io.File) FileInputStream(java.io.FileInputStream)

Aggregations

Project (com.gpcoder.model.Project)2 IXDocReport (fr.opensagres.xdocreport.document.IXDocReport)2 IContext (fr.opensagres.xdocreport.template.IContext)2 FieldsMetadata (fr.opensagres.xdocreport.template.formatter.FieldsMetadata)2 File (java.io.File)2 FileInputStream (java.io.FileInputStream)2 FileOutputStream (java.io.FileOutputStream)2 InputStream (java.io.InputStream)2 OutputStream (java.io.OutputStream)2 Options (fr.opensagres.xdocreport.converter.Options)1