r629 - trunk/doxia-module-jrst/src/main/java/org/nuiton/jrst
Author: sletellier Date: 2011-11-29 18:40:02 +0100 (Tue, 29 Nov 2011) New Revision: 629 Url: http://nuiton.org/repositories/revision/jrst/629 Log: Use JRSTResourceResolver to transform to xdoc Modified: trunk/doxia-module-jrst/src/main/java/org/nuiton/jrst/JrstParser.java Modified: trunk/doxia-module-jrst/src/main/java/org/nuiton/jrst/JrstParser.java =================================================================== --- trunk/doxia-module-jrst/src/main/java/org/nuiton/jrst/JrstParser.java 2011-11-29 17:38:54 UTC (rev 628) +++ trunk/doxia-module-jrst/src/main/java/org/nuiton/jrst/JrstParser.java 2011-11-29 17:40:02 UTC (rev 629) @@ -25,13 +25,16 @@ package org.nuiton.jrst; +import java.io.FileNotFoundException; import java.io.Reader; import java.io.StringReader; +import java.net.URL; import org.apache.maven.doxia.module.xdoc.XdocParser; import org.apache.maven.doxia.parser.ParseException; import org.apache.maven.doxia.sink.Sink; import org.dom4j.Document; +import org.nuiton.util.Resource; /** * Parse an RST model, transform it into xdoc model and emit events into the @@ -54,8 +57,20 @@ Document doc = jrst.read(source); // Apply xsl on rst RST Document - doc = JRST.applyXsls(doc, JRST.rst2xdoc); + JRSTGenerator gen = new JRSTGenerator(); + String xsl = JRST.rst2xdoc; + URL stylesheet = Resource.getURL(xsl); + if (stylesheet == null) { + throw new FileNotFoundException("Can't find stylesheet: " + + xsl); + } + // add entity resolver + gen.setUriResolver(new JRSTResourceResolver(xsl)); + + // do transformation + doc = gen.transform(doc, stylesheet); + // Give xsl result to XDoc parser Reader reader = new StringReader(doc.asXML()); super.parse(reader, sink);
participants (1)
-
sletellier@users.nuiton.org