CAMEL-8045: xslt builder should be properly initialized before using
Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/2ebf0423 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/2ebf0423 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/2ebf0423 Branch: refs/heads/master Commit: 2ebf0423c11f42d102a6bb1754078dc62540690f Parents: 8b53d22 Author: Claus Ibsen <davscl...@apache.org> Authored: Sun Nov 30 14:06:24 2014 +0100 Committer: Claus Ibsen <davscl...@apache.org> Committed: Sun Nov 30 14:06:24 2014 +0100 ---------------------------------------------------------------------- .../apache/camel/builder/xml/XsltBuilder.java | 4 ++ .../camel/builder/xml/XsltBuilderTest.java | 39 +++++++++++++++++++- 2 files changed, 42 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/2ebf0423/camel-core/src/main/java/org/apache/camel/builder/xml/XsltBuilder.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/builder/xml/XsltBuilder.java b/camel-core/src/main/java/org/apache/camel/builder/xml/XsltBuilder.java index 4a57537..7a5a610 100644 --- a/camel-core/src/main/java/org/apache/camel/builder/xml/XsltBuilder.java +++ b/camel-core/src/main/java/org/apache/camel/builder/xml/XsltBuilder.java @@ -70,6 +70,10 @@ import static org.apache.camel.util.ObjectHelper.notNull; * <p/> * Will by default output the result as a String. You can chose which kind of output * you want using the <tt>outputXXX</tt> methods. + * <p/> + * If using the static <tt>xslt</tt> methods to create a {@link org.apache.camel.builder.xml.XsltBuilder} its recommended + * to inject the {@link org.apache.camel.CamelContext} using the {@link #setCamelContext(org.apache.camel.CamelContext)} + * and call {@link #start()} to properly initialize the builder before using. * * @version */ http://git-wip-us.apache.org/repos/asf/camel/blob/2ebf0423/camel-core/src/test/java/org/apache/camel/builder/xml/XsltBuilderTest.java ---------------------------------------------------------------------- diff --git a/camel-core/src/test/java/org/apache/camel/builder/xml/XsltBuilderTest.java b/camel-core/src/test/java/org/apache/camel/builder/xml/XsltBuilderTest.java index 4f117b4..04468c7 100644 --- a/camel-core/src/test/java/org/apache/camel/builder/xml/XsltBuilderTest.java +++ b/camel-core/src/test/java/org/apache/camel/builder/xml/XsltBuilderTest.java @@ -51,6 +51,8 @@ public class XsltBuilderTest extends ContextTestSupport { URL styleSheet = getClass().getResource("example.xsl"); XsltBuilder builder = XsltBuilder.xslt(styleSheet); + builder.setCamelContext(context); + builder.start(); Exchange exchange = new DefaultExchange(context); exchange.getIn().setBody("<hello>world!</hello>"); @@ -65,6 +67,8 @@ public class XsltBuilderTest extends ContextTestSupport { XsltBuilder builder = new XsltBuilder(); builder.setTransformerURL(styleSheet); + builder.setCamelContext(context); + builder.start(); Exchange exchange = new DefaultExchange(context); exchange.getIn().setBody("<hello>world!</hello>"); @@ -78,6 +82,8 @@ public class XsltBuilderTest extends ContextTestSupport { File styleSheet = new File("src/test/resources/org/apache/camel/builder/xml/example.xsl"); XsltBuilder builder = XsltBuilder.xslt(styleSheet); + builder.setCamelContext(context); + builder.start(); Exchange exchange = new DefaultExchange(context); exchange.getIn().setBody("<hello>world!</hello>"); @@ -92,6 +98,8 @@ public class XsltBuilderTest extends ContextTestSupport { XsltBuilder builder = new XsltBuilder(); builder.setTransformerFile(styleSheet); + builder.setCamelContext(context); + builder.start(); Exchange exchange = new DefaultExchange(context); exchange.getIn().setBody("<hello>world!</hello>"); @@ -105,6 +113,8 @@ public class XsltBuilderTest extends ContextTestSupport { File styleSheet = new File("src/test/resources/org/apache/camel/builder/xml/example.xsl"); XsltBuilder builder = XsltBuilder.xslt(new FileInputStream(styleSheet)); + builder.setCamelContext(context); + builder.start(); Exchange exchange = new DefaultExchange(context); exchange.getIn().setBody("<hello>world!</hello>"); @@ -119,6 +129,8 @@ public class XsltBuilderTest extends ContextTestSupport { XsltBuilder builder = new XsltBuilder(); builder.setTransformerInputStream(new FileInputStream(styleSheet)); + builder.setCamelContext(context); + builder.start(); Exchange exchange = new DefaultExchange(context); exchange.getIn().setBody("<hello>world!</hello>"); @@ -133,6 +145,8 @@ public class XsltBuilderTest extends ContextTestSupport { Source styleSheet = new SAXSource(new InputSource(new FileInputStream(file))); XsltBuilder builder = XsltBuilder.xslt(styleSheet); + builder.setCamelContext(context); + builder.start(); Exchange exchange = new DefaultExchange(context); exchange.getIn().setBody("<hello>world!</hello>"); @@ -150,6 +164,8 @@ public class XsltBuilderTest extends ContextTestSupport { Templates styleSheet = converter.getTransformerFactory().newTemplates(source); XsltBuilder builder = XsltBuilder.xslt(styleSheet); + builder.setCamelContext(context); + builder.start(); Exchange exchange = new DefaultExchange(context); exchange.getIn().setBody("<hello>world!</hello>"); @@ -163,6 +179,8 @@ public class XsltBuilderTest extends ContextTestSupport { URL styleSheet = getClass().getResource("example.xsl"); XsltBuilder builder = XsltBuilder.xslt(styleSheet).outputString(); + builder.setCamelContext(context); + builder.start(); Exchange exchange = new DefaultExchange(context); exchange.getIn().setBody("<hello>world!</hello>"); @@ -177,6 +195,8 @@ public class XsltBuilderTest extends ContextTestSupport { URL styleSheet = getClass().getResource("example.xsl"); XsltBuilder builder = XsltBuilder.xslt(styleSheet).outputBytes(); + builder.setCamelContext(context); + builder.start(); Exchange exchange = new DefaultExchange(context); exchange.getIn().setBody("<hello>world!</hello>"); @@ -191,6 +211,8 @@ public class XsltBuilderTest extends ContextTestSupport { URL styleSheet = getClass().getResource("example.xsl"); XsltBuilder builder = XsltBuilder.xslt(styleSheet).outputDOM(); + builder.setCamelContext(context); + builder.start(); Exchange exchange = new DefaultExchange(context); exchange.getIn().setBody("<hello>world!</hello>"); @@ -205,6 +227,8 @@ public class XsltBuilderTest extends ContextTestSupport { URL styleSheet = getClass().getResource("example.xsl"); XsltBuilder builder = XsltBuilder.xslt(styleSheet).outputFile(); + builder.setCamelContext(context); + builder.start(); Exchange exchange = new DefaultExchange(context); exchange.getIn().setBody("<hello>world!</hello>"); @@ -224,6 +248,8 @@ public class XsltBuilderTest extends ContextTestSupport { URL styleSheet = getClass().getResource("example.xsl"); XsltBuilder builder = XsltBuilder.xslt(styleSheet).outputFile().deleteOutputFile(); + builder.setCamelContext(context); + builder.start(); Exchange exchange = new DefaultExchange(context); exchange.getIn().setBody("<hello>world!</hello>"); @@ -254,6 +280,9 @@ public class XsltBuilderTest extends ContextTestSupport { builder.setConverter(converter); assertSame(converter, builder.getConverter()); + builder.setCamelContext(context); + builder.start(); + Exchange exchange = new DefaultExchange(context); exchange.getIn().setBody("<hello>world!</hello>"); @@ -267,10 +296,12 @@ public class XsltBuilderTest extends ContextTestSupport { XsltBuilder builder = XsltBuilder.xslt(styleSheet); assertNotNull(builder.getResultHandlerFactory()); - builder.outputBytes(); assertIsInstanceOf(StreamResultHandlerFactory.class, builder.getResultHandlerFactory()); + builder.setCamelContext(context); + builder.start(); + Exchange exchange = new DefaultExchange(context); exchange.getIn().setBody("<hello>world!</hello>"); @@ -283,6 +314,8 @@ public class XsltBuilderTest extends ContextTestSupport { URL styleSheet = getClass().getResource("example.xsl"); XsltBuilder builder = XsltBuilder.xslt(styleSheet); + builder.setCamelContext(context); + builder.start(); Exchange exchange = new DefaultExchange(context); exchange.getIn().setBody(null); @@ -300,6 +333,8 @@ public class XsltBuilderTest extends ContextTestSupport { XsltBuilder builder = XsltBuilder.xslt(styleSheet); builder.setFailOnNullBody(true); + builder.setCamelContext(context); + builder.start(); Exchange exchange = new DefaultExchange(context); exchange.getIn().setBody(null); @@ -317,6 +352,8 @@ public class XsltBuilderTest extends ContextTestSupport { XsltBuilder builder = XsltBuilder.xslt(styleSheet); builder.setFailOnNullBody(false); + builder.setCamelContext(context); + builder.start(); Exchange exchange = new DefaultExchange(context); exchange.getIn().setBody(null);