Hi,

I am trying to write a report plugin for Maven which will run during
the 'site' stage in the lifecycle.  The plugin needs to be able to use
a Velocity template to create a HTML file.

I have created a Mojo which extends AbstractMavenReport and within
that I have

/**
     * @component
     */
    private VelocityComponent velocityComponent;

so that I can get hold of the Plexus velocity component.  I am
currently passing this into a method and using this as:

public void createReport(VelocityComponent velocityComponent) throws
Exception {

        VelocityContext context = new VelocityContext();
        // put stuff into the context.

        Template template = null;
        try {
            Properties props = new Properties();
            props.setProperty("resource.loader",
"classpath");                       //makes no difference if set or
not

props.setProperty("classpath.resource.loader.class",
"org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader"); //
makes no difference if set or not
            velocityComponent.getEngine().init(props);
            template =
velocityComponent.getEngine().getTemplate("report.vm");
        }
        catch (ResourceNotFoundException rnfe) {
            System.out.println("Example : error : cannot find template
report.vm");
        }
        catch (ParseErrorException pee) {
            System.out.println("Example : Syntax error in template
report.vm: " + pee);
        }
        BufferedWriter writer = writer = new BufferedWriter(
                new OutputStreamWriter(System.out));  //testing by
writing to the screen
        if (template != null) {
            template.merge(context, writer);
        }
        writer.flush();
        writer.close();
    }

I am getting a ResourceNotFoundException when running this.  Where do
I need to put the vm file so that it is picked up or how should I be
using the velocitycomponent?

btw.  I am using Maven 2.2.1.

Thanks,
Jacqui 
-- 
View this message in context: 
http://maven.40175.n5.nabble.com/Using-a-Veloctity-template-in-a-custom-Maven-report-tp2652484p2652484.html
Sent from the Maven - Users mailing list archive at Nabble.com.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org

Reply via email to