Author: rgardler
Date: Wed Aug 29 17:15:32 2007
New Revision: 570993
URL: http://svn.apache.org/viewvc?rev=570993&view=rev
Log:
Use the locationmap to resolve output XSLTs
Modified:
forrest/trunk/whiteboard/forrest2/core/src/conf/defaultForrestContext.xml
forrest/trunk/whiteboard/forrest2/core/src/examples/helloWorld/src/forrestContext.xml
forrest/trunk/whiteboard/forrest2/core/src/examples/helloWorld/src/locationmap.xml
forrest/trunk/whiteboard/forrest2/core/src/main/org/apache/forrest/core/plugin/XSLTOutputPlugin.java
Modified:
forrest/trunk/whiteboard/forrest2/core/src/conf/defaultForrestContext.xml
URL:
http://svn.apache.org/viewvc/forrest/trunk/whiteboard/forrest2/core/src/conf/defaultForrestContext.xml?rev=570993&r1=570992&r2=570993&view=diff
==============================================================================
--- forrest/trunk/whiteboard/forrest2/core/src/conf/defaultForrestContext.xml
(original)
+++ forrest/trunk/whiteboard/forrest2/core/src/conf/defaultForrestContext.xml
Wed Aug 29 17:15:32 2007
@@ -32,6 +32,6 @@
class="org.apache.forrest.core.plugin.XSLTOutputPlugin">
<property name="pattern" value="html" />
<property name="xsltPath"
- value="/xdocs/samples/xslt/internal-to-html.xsl" />
+ value="internal-to-html.xsl" />
</bean>
</beans>
Modified:
forrest/trunk/whiteboard/forrest2/core/src/examples/helloWorld/src/forrestContext.xml
URL:
http://svn.apache.org/viewvc/forrest/trunk/whiteboard/forrest2/core/src/examples/helloWorld/src/forrestContext.xml?rev=570993&r1=570992&r2=570993&view=diff
==============================================================================
---
forrest/trunk/whiteboard/forrest2/core/src/examples/helloWorld/src/forrestContext.xml
(original)
+++
forrest/trunk/whiteboard/forrest2/core/src/examples/helloWorld/src/forrestContext.xml
Wed Aug 29 17:15:32 2007
@@ -32,6 +32,6 @@
class="org.apache.forrest.core.plugin.XSLTOutputPlugin">
<property name="pattern" value="html" />
<property name="xsltPath"
- value="/xdocs/samples/xslt/internal-to-html.xsl" />
+ value="internal-to-html.xsl" />
</bean>
</beans>
Modified:
forrest/trunk/whiteboard/forrest2/core/src/examples/helloWorld/src/locationmap.xml
URL:
http://svn.apache.org/viewvc/forrest/trunk/whiteboard/forrest2/core/src/examples/helloWorld/src/locationmap.xml?rev=570993&r1=570992&r2=570993&view=diff
==============================================================================
---
forrest/trunk/whiteboard/forrest2/core/src/examples/helloWorld/src/locationmap.xml
(original)
+++
forrest/trunk/whiteboard/forrest2/core/src/examples/helloWorld/src/locationmap.xml
Wed Aug 29 17:15:32 2007
@@ -16,13 +16,16 @@
limitations under the License.
-->
<locationmap>
- <location regexp="(.*).xhtml2">
+ <location regexp="(.*)\.xhtml2">
<source href="classpath:/xdocs/$(1).xhtml2"/>
</location>
- <location regexp="(.*)/(.*).html">
+ <location regexp="(.*)/(.*)\.html">
<source href="classpath:/xdocs/$(2).xhtml2"/>
</location>
- <location regexp="(.*).html">
+ <location regexp="(.*)\.html">
<source href="classpath:/xdocs/$(1).xhtml2"/>
+ </location>
+ <location regexp="(.*)\.xsl">
+ <source href="classpath:/xdocs/samples/xslt/$(1).xsl"/>
</location>
</locationmap>
Modified:
forrest/trunk/whiteboard/forrest2/core/src/main/org/apache/forrest/core/plugin/XSLTOutputPlugin.java
URL:
http://svn.apache.org/viewvc/forrest/trunk/whiteboard/forrest2/core/src/main/org/apache/forrest/core/plugin/XSLTOutputPlugin.java?rev=570993&r1=570992&r2=570993&view=diff
==============================================================================
---
forrest/trunk/whiteboard/forrest2/core/src/main/org/apache/forrest/core/plugin/XSLTOutputPlugin.java
(original)
+++
forrest/trunk/whiteboard/forrest2/core/src/main/org/apache/forrest/core/plugin/XSLTOutputPlugin.java
Wed Aug 29 17:15:32 2007
@@ -33,6 +33,8 @@
import org.apache.forrest.core.Controller;
import org.apache.forrest.core.document.DefaultOutputDocument;
import org.apache.forrest.core.document.IDocument;
+import org.apache.forrest.core.document.AbstractSourceDocument;
+import org.apache.forrest.core.exception.ProcessingException;
import org.apache.log4j.Logger;
/**
@@ -59,17 +61,16 @@
final TransformerFactory tFactory =
TransformerFactory.newInstance();
log.debug("Processing document with output stylesheet from " +
this.getXsltPath());
try {
- final String xsltURL = this.getClass().getResource(
- this.getXsltPath()).toExternalForm();
- final File xslt = new File(new URI(xsltURL));
+ final AbstractSourceDocument xsltDoc =
controller.getSourceDocuments(new URI(this.getXsltPath()));
Transformer transformer;
- transformer = tFactory.newTransformer(new
StreamSource(xslt));
- final StringReader reader = new StringReader(doc
- .getContentAsString());
+ transformer = tFactory.newTransformer(new
StreamSource(new StringReader(xsltDoc.getContentAsString())));
+ log.debug("Got transformer ");
+ final StringReader reader = new
StringReader(doc.getContentAsString());
final StreamSource in = new StreamSource(reader);
final ByteArrayOutputStream outStream = new
ByteArrayOutputStream();
final StreamResult out = new StreamResult(outStream);
transformer.transform(in, out);
+ log.debug("Transformed");
return new DefaultOutputDocument(doc.getRequestURI(),
outStream.toString());
} catch (final TransformerConfigurationException e) {
// TODO Auto-generated catch block
@@ -83,7 +84,11 @@
// TODO Auto-generated catch block
e.printStackTrace();
return null;
- }
+ } catch (final ProcessingException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ return null;
+ }
}
public String getXsltPath() {