Hi,
Amir Rosen wrote:
> Hi,
>
> There's a bug in TraxTransformer when using Saxon with caching.
>
<snip />
>
> Anyway, our solution is simple, we should set the URIResolver we want to use
>explicitly:
>
> in TransformerHandler#getTransformerHandler(Source, XMLFilter) there's the code:
>
> TransformerHandler handler =
>getTransformerFactory().newTransformerHandler(templates);
> handler.getTransformer().setErrorListener(new TraxErrorHandler(getLogger()));
> return handler;
>
> before returning the handler we should add the line:
>
> handler.getTransformer().setURIResolver(this);
I can confirm that applying this patch helps against some NPEs!
See below. Thank you!
Can someone please apply this patch to cvs?
>
>
> A comment has been sent to JSR 63 about this issue.
>
> BTW:
> I'm using:
> - cocoon 2.0.3-dev
> - saxon 6.5.2
>
Me too.
>
>
> Thanks,
Thank you very much.
>
> Amir Rosen
> CTI Squared
> [EMAIL PROTECTED]
> +972-9-9605200 (258)
>
---------------------------------------------------
org.apache.cocoon.ProcessingException: Failed to execute pipeline.:
java.lang.NullPointerException
at
org.apache.cocoon.components.pipeline.CachingEventPipeline.process(CachingEventPipeline.java:223)
at
org.apache.cocoon.components.source.SitemapSource.toSAX(SitemapSource.java:353)
at
org.apache.cocoon.generation.FileGenerator.generate(FileGenerator.java:143)
...
java.lang.NullPointerException
at
org.apache.cocoon.components.xslt.XSLTProcessorImpl.resolve(XSLTProcessorImpl.java:481)
at com.icl.saxon.functions.Document.makeDoc(Document.java:201)
at com.icl.saxon.functions.Document.getDocuments(Document.java:134)
at com.icl.saxon.functions.Document.evaluate(Document.java:70)
...
----------------------------------------------------
--- XSLTProcessorImpl.java 2002-08-19 09:33:32.000000000 +0200
+++
+E:\cvs_cocoon\personal-patches\java\org\apache\cocoon\components\\xslt\XSLTProcessorImpl.java
+ 2002-08-28 17:51:08.000000000 +0200
@@ -288,6 +288,7 @@
TransformerHandler handler =
getTransformerFactory().newTransformerHandler(templates);
handler.getTransformer().setErrorListener(new
TraxErrorHandler(getLogger()));
+ handler.getTransformer().setURIResolver(this);
return handler;
} catch (ProcessingException e) {
throw e;
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]