You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cocoon.apache.org by Ivo Limmen <iv...@virgil.nl> on 2004/06/03 15:36:33 UTC

Tranformation fails depending on source

Hi,

I have the strangest bug that I can not find a sollution for. I have 
written a Generator that generates reports. I use a TraxTransformer to 
transform it to Genumeric XML and serialize it using the HSSFSerializer.
The generator works ok. When I set the view to the raw XML from the 
generator I get a XML file like this:

<?xml version="1.0" encoding="ISO-8859-1"?>
<vr:report xmlns:vr="http://virgil.nl/todo/what/1.0">
     <vr:headersection>
	...
     </vr:headersection>
     <vr:datasection>
	...
     </vr:datasection>

	..etc.
</vr:report>

When trying to view the XML that comes out of the TraxTransformer Cocoon 
hangs, it only stops when I kill my process and I get the following 
exceptions:

This exception is shown on the console (probably because I killed the 
process):

java.lang.NullPointerException
         at 
org.apache.cocoon.components.CocoonComponentManager.release(CocoonComponentManager.java:507)
         at 
org.apache.cocoon.environment.AbstractEnvironment.release(AbstractEnvironment.java:539)
         at 
org.apache.cocoon.transformation.TraxTransformer.recycle(TraxTransformer.java:514)
         at 
org.apache.avalon.excalibur.pool.ResourceLimitingPool.put(ResourceLimitingPool.java:438)
         at 
org.apache.avalon.excalibur.component.PoolableComponentHandler.doPut(PoolableComponentHandler.java:212)
         at 
org.apache.avalon.excalibur.component.ComponentHandler.put(ComponentHandler.java:425)
         at 
org.apache.avalon.excalibur.component.ExcaliburComponentSelector.release(ExcaliburComponentSelector.java:305)
         at 
org.apache.cocoon.components.ExtendedComponentSelector.release(ExtendedComponentSelector.java:284)
         at 
org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.recycle(AbstractProcessingPipeline.java:650)
         at 
org.apache.cocoon.components.pipeline.impl.BaseCachingProcessingPipeline.recycle(BaseCachingProcessingPipeline.java:77)
         at 
org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.recycle(AbstractCachingProcessingPipeline.java:948)
         at 
org.apache.avalon.excalibur.pool.ResourceLimitingPool.put(ResourceLimitingPool.java:438)
         at 
org.apache.avalon.excalibur.component.PoolableComponentHandler.doPut(PoolableComponentHandler.java:212)
         at 
org.apache.avalon.excalibur.component.ComponentHandler.put(ComponentHandler.java:425)
         at 
org.apache.avalon.excalibur.component.ExcaliburComponentSelector.release(ExcaliburComponentSelector.java:305)
         at 
org.apache.cocoon.components.ExtendedComponentSelector.release(ExtendedComponentSelector.java:284)
         at 
org.apache.cocoon.components.treeprocessor.InvokeContext.dispose(InvokeContext.java:286)
         at 
org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:279)
         at org.apache.cocoon.Cocoon.process(Cocoon.java:639)
         at 
org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:1098)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at 
org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:354)
         at 
org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:294)
         at 
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
         at org.mortbay.http.HttpContext.handle(HttpContext.java:1808)
         at 
org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:525)
         at org.mortbay.http.HttpContext.handle(HttpContext.java:1758)
         at org.mortbay.http.HttpServer.service(HttpServer.java:879)
         at org.mortbay.http.HttpConnection.service(HttpConnection.java:790)
         at 
org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:952)
         at org.mortbay.http.HttpConnection.handle(HttpConnection.java:807)
         at 
org.mortbay.http.SocketListener.handleConnection(SocketListener.java:197)
         at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:289)
         at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:501)

The following exception is found in the logs and is shown in the webbrowser:

org.apache.cocoon.ProcessingException: Failed to execute pipeline.: 
java.lang.NullPointerException
	at 
org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:552)
	at 
org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.processXMLPipeline(AbstractCachingProcessingPipeline.java:173)
	at 
org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:490)
	at 
org.apache.cocoon.components.treeprocessor.sitemap.SerializeNode.invoke(SerializeNode.java:120)
	at 
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:72)
	at 
org.apache.cocoon.components.treeprocessor.ContainerNode.invoke(ContainerNode.java:31)
	at 
org.apache.cocoon.components.treeprocessor.sitemap.SerializeNode.invoke(SerializeNode.java:86)
	at 
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:49)
	at 
org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.invoke(PreparableMatchNode.java:130)
	at 
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:72)
	at 
org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:126)
	at 
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:72)
	at 
org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:101)
	at 
org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:336)
	at 
org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:277)
	at org.apache.cocoon.Cocoon.process(Cocoon.java:639)
	at org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:1098)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:354)
	at 
org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:294)
	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
	at org.mortbay.http.HttpContext.handle(HttpContext.java:1808)
	at 
org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:525)
	at org.mortbay.http.HttpContext.handle(HttpContext.java:1758)
	at org.mortbay.http.HttpServer.service(HttpServer.java:879)
	at org.mortbay.http.HttpConnection.service(HttpConnection.java:790)
	at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:952)
	at org.mortbay.http.HttpConnection.handle(HttpConnection.java:807)
	at 
org.mortbay.http.SocketListener.handleConnection(SocketListener.java:197)
	at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:289)
	at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:501)
Caused by: java.lang.NullPointerException
	at org.apache.xml.dtm.ref.sax2dtm.SAX2DTM2.startElement(SAX2DTM2.java:2135)
	at org.apache.xalan.xsltc.dom.SAXImpl.startElement(SAXImpl.java:915)
	at 
org.apache.xalan.xsltc.trax.TransformerHandlerImpl.startElement(TransformerHandlerImpl.java:259)
	at 
org.apache.cocoon.xml.AbstractXMLPipe.startElement(AbstractXMLPipe.java:95)
	at 
nl.virgil.ec.reporting.cocoon.CocoonReportElementSerializer.startElement(CocoonReportElementSerializer.java:224)
	at 
nl.virgil.ec.reporting.cocoon.CocoonReportElementSerializer.serialize(CocoonReportElementSerializer.java:89)
	at 
nl.virgil.ec.reporting.cocoon.ReportXMLGenerator.generate(ReportXMLGenerator.java:79)
	at 
org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:545)
	... 30 more
java.lang.NullPointerException
	at org.apache.xml.dtm.ref.sax2dtm.SAX2DTM2.startElement(SAX2DTM2.java:2135)
	at org.apache.xalan.xsltc.dom.SAXImpl.startElement(SAXImpl.java:915)
	at 
org.apache.xalan.xsltc.trax.TransformerHandlerImpl.startElement(TransformerHandlerImpl.java:259)
	at 
org.apache.cocoon.xml.AbstractXMLPipe.startElement(AbstractXMLPipe.java:95)
	at 
nl.virgil.ec.reporting.cocoon.CocoonReportElementSerializer.startElement(CocoonReportElementSerializer.java:224)
	at 
nl.virgil.ec.reporting.cocoon.CocoonReportElementSerializer.serialize(CocoonReportElementSerializer.java:89)
	at 
nl.virgil.ec.reporting.cocoon.ReportXMLGenerator.generate(ReportXMLGenerator.java:79)
	at 
org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:545)
	at 
org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.processXMLPipeline(AbstractCachingProcessingPipeline.java:173)
	at 
org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:490)
	at 
org.apache.cocoon.components.treeprocessor.sitemap.SerializeNode.invoke(SerializeNode.java:120)
	at 
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:72)
	at 
org.apache.cocoon.components.treeprocessor.ContainerNode.invoke(ContainerNode.java:31)
	at 
org.apache.cocoon.components.treeprocessor.sitemap.SerializeNode.invoke(SerializeNode.java:86)
	at 
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:49)
	at 
org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.invoke(PreparableMatchNode.java:130)
	at 
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:72)
	at 
org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:126)
	at 
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:72)
	at 
org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:101)
	at 
org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:336)
	at 
org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:277)
	at org.apache.cocoon.Cocoon.process(Cocoon.java:639)
	at org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:1098)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:354)
	at 
org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:294)
	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
	at org.mortbay.http.HttpContext.handle(HttpContext.java:1808)
	at 
org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:525)
	at org.mortbay.http.HttpContext.handle(HttpContext.java:1758)
	at org.mortbay.http.HttpServer.service(HttpServer.java:879)
	at org.mortbay.http.HttpConnection.service(HttpConnection.java:790)
	at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:952)
	at org.mortbay.http.HttpConnection.handle(HttpConnection.java:807)
	at 
org.mortbay.http.SocketListener.handleConnection(SocketListener.java:197)
	at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:289)
	at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:501)


Using wget I managed to store the raw XML that was served by the custom 
generator I have written. I used the FileGenerator to serve it and 
everything goes well.

First of all I tried to switch from the xslt to xsltc Transformer but 
this did not help. The only thing I found by searchin on sax2dtm and 
NullPointerException suggested that it might be that '<?xml 
version="1.0" encoding="ISO-8859-1"?>' might be declared somewhere in 
the body of the XML but this is not the case.

A diff between the two files from the generators (Custom and File) 
resulted in zero differences.

I have no idea how to resolve this problem. Does anybody have any clue?

I use Cocoon 2.1.5 on Solaris 9 using JDK 1.4.2-b28.
-- 
Ivo Limmen

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
For additional commands, e-mail: users-help@cocoon.apache.org


Re: Tranformation fails depending on source

Posted by Ivo Limmen <iv...@virgil.nl>.
Hi,

Some extra info:

The problem also occures in Cocoon 2.1.4. Also tried the 
-Xbootclasspath/p:<xalan>:<xerxes> option but it does not help.

Ivo Limmen wrote:

<snip>

-- 
Ivo Limmen

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
For additional commands, e-mail: users-help@cocoon.apache.org