Not so easy. The changes plugin does a different thing: transforming xml
to html using the site style is a lot more complex (try it).
You can't easily reuse the xdoc site.jsl, since it requires lots of
variables to recreate navigation and mappings. That's the reason why the
linkcheck plugin uses a specific xdoc goal.
I've just posted a patch which adds a doc:jslToSite to the xdoc plugin.
The tag sets all the variables and beans (pathtool, mapper) needed for
the nav menu and takes a single parameter @srcdir, the directory
containg the xml files to be transformed.

This helps also in fixing the dirty way in which now the linkcheck
plugin transforms its report to html.

Please apply the patch in MAVEN-853 before rc1 release!! This is really
needed!

thanks
fabrizio



-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
Sent: Thursday, September 18, 2003 9:50 AM
To: Maven Developers List
Subject: RE: reusability of xdoc:performJSL goal & new plugin

The changes plugin does this quite easily:

    <doc:jsl
      input="${maven.docs.src}/changes.xml"
      output="changes-report.xml"
      stylesheet="${plugin.resources}/changes.jsl"
      encoding="${maven.docs.outputencoding}"
      outputMode="xml"
      prettyPrint="true"
      />

In your case, you'd need to provide the jsl in the xdoc plugin, but that

should be easy enough, right?
--
dIon Gillard, Multitask Consulting
Blog:      http://blogs.codehaus.org/people/dion/


"Fabrizio Giustina" <[EMAIL PROTECTED]> wrote on 16/09/2003 06:40:52

PM:

> the doc:jsl tag allow you to easily transform a document using a 
> stylesheet, but I also need to inherit the project settings for 
> style and navigation. 
> 
> This logic is only implemented in the doc:performJSL tag, wich 
> doesn't work if called from another plugin. This is the result:
> 
> BUILD FAILED
> File...... file:/C:/Documents and Settings/UE01571/.
> maven/plugins/maven-xdoc-plugin-1.4-SNAPSHOT/
> Element... j:setProperties
> Line...... 249
> Column.... 84
> You must define an attribute called 'bean' for this tag.
> 
> line 249:   <j:setProperties object="${mapper}" 
> from="${fromPattern}" to="${toPattern}"/>
> 
> ${mapper} is initialized in the jelly-transform goal, and there are 
> other properties in the xdoc context missing.
> If it could work there will be no reason for the odd xdoc:performJSL
> goal added only for the linkcheck plugin. A clean solution will be 
> modifying the performJSL tag to use attributes and not global 
> variables, removing the performJSL goal (well, I think that at least
> you should change the name to a more clear "linkcheckJSL" at the 
> moment, since it can be only used by the linkcheck plugin).
> 
> 
> 
> - fabrizio
> 
>    -----Original Message----- 
>    From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
>    Sent: Tue 9/16/2003 06:44 
>    To: Maven Developers List 
>    Cc: 
>    Subject: Re: reusability of xdoc:performJSL goal & new plugin
> 
> 
> 
>    Can't you use doc:jsl?
>    --
>    dIon Gillard, Multitask Consulting
>    Blog:      http://blogs.codehaus.org/people/dion/
> 
> 
>    "Fabrizio Giustina" <[EMAIL PROTECTED]> wrote on 16/09/2003 
07:00:57
>    AM:
> 
>    >
>    > I've just written a new plugin which performs a validation of the
>    > produced documentation, checking the xhtml code for errors and 
producing
>    > a complete report.
>    >
>    > Since the plugin need to run after the html generation has been
>    > completed, it is registered in a way similar to the linkcheck 
plugin.
>    > The real validation is done as a xdoc:jelly-transform post-goal.
>    >
>    > The problem is how to transform the generated xdoc: the only way
to 
do
>    > that actually is the xdoc:performJSL goal which, however, is 
hardcoded
>    > to use a linkcheck plugin variable
>    > 
($pom.getPluginContext('maven-linkcheck-plugin').getVariable('maven.xdoc
>    > .src')). The performJSL tag can't be used directly since it 
requires
>    > setting other variables/beans.
>    >
>    > Is there any way to do that without adding another goal to the
xdoc
>    > plugin which uses a specific plugin property? (identical to the
>    > performJSL goal but using
>    > 
($pom.getPluginContext('maven-sitevalidator-plugin').getVariable('maven.
>    > xdoc.src') ). Any hint?
>    >
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to