You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cocoon.apache.org by Yoann Archambault <ya...@fastmail.fm> on 2009/03/20 23:06:18 UTC

C3: Xalan runtime error when using include and xslt transformers back to back in pipeline

Hi everyone!
I started coding for a new project and decided to go ahead with Cocoon 3
(i'm pretty much sticking to the trunk) and i like what i see. Alot
actually! Really looks like the next step forward for XML based webapp
frameworks.

I'm not really sure this is the right mailling list, but then again i
didnt see alot of questions for cocoon 3 in the user lists ;)

Down to business,
I have this error when i try to use a pipeline which has two
transformations back to back, an include and an xslt.
My various attempts at getting this to work told a couple of things
-The pipeline works when one of the transformer is there, not when both
are.
-I tried taking the IncludeTransfo output to a new xml file and when
feeding it to the XSLT transformer by FileGenerator, it works.
-I have tried with other XML and XSLT files (taken from the working
cocoon-sample) and it doesnt work either.
-When the Include transformer doesnt have any work to do (no i: element
to include in the source xml) the pipeline works with both transformer.

Anyway, the bottom line is i'm pretty sure its not the XML or XSLT files
that are faulty here.
Is is something else i did wrong? Any thoughts?

Some details:

REVEISION alpha-2, 754707

PIPELINE that fails. It is called by a controller and it's the last
pipeline before returning a response to the client.

<map:match pattern="data/done">
  <map:generate src="xml/responses/BasicOperationResponse.xml" />
  <map:transform type="include" />
  <map:transform  src="xslt/views/referenceNodeCRUD.xslt" />
  <map:serialize type="xml" />
</map:match>



SOURCE XML

<?xml version="1.0" encoding="UTF-8"?>
<response xmlns:i="http://apache.org/cocoon/3.0/include">
    <i:include src="servlet:/gen/UserInfos"/>
    <i:include src="servlet:/gen/SimpleOperation"/>
    <i:include src="servlet:/gen/BetwixtControllerModel"/>
</response>


ERROR STs

17:49:37,235 ERROR [org.apache.cocoon.servlet.XMLSitemapServlet] An
exception occurred while executing the sitemap.
org.apache.cocoon.sitemap.InvocationException:
org.apache.cocoon.pipeline.ProcessingException: Can't parse url
connection blockcontext:/Core/xml/responses/BasicOperationResponse.xml
        at
org.apache.cocoon.sitemap.util.ExceptionHandler.getInvocationException(ExceptionHandler.java:39)
        at
org.apache.cocoon.sitemap.node.PipelineNode.handleException(PipelineNode.java:91)
        at
org.apache.cocoon.sitemap.node.PipelineNode.invoke(PipelineNode.java:61)
        at
org.apache.cocoon.sitemap.node.AbstractSitemapNode.invoke(AbstractSitemapNode.java:97)
        at
org.apache.cocoon.sitemap.node.PipelinesNode.invoke(PipelinesNode.java:40)
        at
org.apache.cocoon.sitemap.node.AbstractSitemapNode.invoke(AbstractSitemapNode.java:97)
        at
org.apache.cocoon.sitemap.node.Sitemap.invoke(Sitemap.java:33)
        at
org.apache.cocoon.servlet.XMLSitemapServlet.invoke(XMLSitemapServlet.java:82)
        at
org.apache.cocoon.servlet.XMLSitemapServlet.service(XMLSitemapServlet.java:113)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at
org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
        at
org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
        at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
        at
org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:77)
        at
org.apache.cocoon.jnet.URLHandlerFactoryCollector.installURLHandlers(URLHandlerFactoryCollector.java:46)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)



Caused by: org.apache.cocoon.pipeline.ProcessingException: Can't parse
url connection
blockcontext:/Core/xml/responses/BasicOperationResponse.xml
        at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:117)
        at
org.apache.cocoon.sax.component.FileGenerator.execute(FileGenerator.java:81)
        at
org.apache.cocoon.pipeline.AbstractPipeline.invokeStarter(AbstractPipeline.java:147)
        at
org.apache.cocoon.pipeline.CachingPipeline.execute(CachingPipeline.java:124)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)



Caused by: java.lang.RuntimeException
        at
org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3418)
        at
org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:389)
        at
org.apache.cocoon.xml.sax.AbstractSAXPipe.endDocument(AbstractSAXPipe.java:58)
        at
org.apache.cocoon.sax.AbstractSAXTransformer.endDocument(AbstractSAXTransformer.java:47)
        at
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endDocument(AbstractSAXParser.java:737)



Thanks,
Yoann





Re: C3: Xalan runtime error when using include and xslt transformers back to back in pipeline

Posted by Reinhard Pötz <re...@apache.org>.
Hi Yoann,

sorry, I overlooked your message.

After looking into the IncludeTransformer I'm not sure why you think
that the endDocument() method is called for every included xml chunk.
The transformer uses following code to include XML:

XMLReader xmlReader = XMLReaderFactory.createXMLReader();
EmbeddedSAXPipe embeddedSAXPipe =
    new EmbeddedSAXPipe(this.getSAXConsumer());
xmlReader.setContentHandler(embeddedSAXPipe);
xmlReader.setProperty("http://xml.org/sax/properties/lexical-handler",
embeddedSAXPipe);

BufferedInputStream inputStream =
    new BufferedInputStream(source.openStream());
xmlReader.parse(new InputSource(inputStream));

The embedded SAX pipe takes care that the startDocument() and
endDocument() methods are never called.

It would be great if you created a (failing) test case that demonstrates
your problem. Thanks!

Reinhard

Yoann Archambault wrote:
> Hi,
> 
> Sorry i haven't gotten around to providing an example of my problem, but
> i believe i found the source.
> The include transformer creates endDocument sax events for every
> included xml chunk.
> Maybe it was the same thing that was messing with the xslt transformer,
> but it most certainly is messing with the SSF. In the case of an SSF
> serializer, on endDocument the serializer sends an incomplete document
> down to the SSF consumer generator.
> 
> For example the following include file
> 
> <?xml version='1.0' encoding='utf-8'?>
> <response xmlns:i="http://apache.org/cocoon/3.0/include">
>     <i:include src="blockcontext:/Core/xml/testpart1.xml"/>
>     <i:include src="blockcontext:/Core/xml/testpart2.xml"/>
>     <i:include src="blockcontext:/Core/xml/testpart3.xml"/>
> </response>
> 
> would recieve an endDocument at this point, obviously sending an
> incomplete document:
> 
> <response xmlns:i="http://apache.org/cocoon/3.0/include">
>     <testpart1>
>         <foo>bar</foo>
>     </testpart1>
> 
> 
> and the consumer pipeline (/serializer/params) crashes saying:
> 
> [Fatal Error] :15:8: XML document structures must start and end within
> the same entity.
> 
> Caused by: java.io.IOException: Can't connect to servlet URL
> servlet:/serializer/params.
> 	at
> org.apache.cocoon.servlet.ssf.ServletServiceSerializer.endDocument(ServletServiceSerializer.java:56)
> 	at
> com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endDocument(AbstractSAXParser.java:737)
> 	at
> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:515)
> 	at
> com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
> 	at
> com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
> 	at
> com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
> 	at
> com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
> 	at
> org.apache.cocoon.sax.component.IncludeTransformer.startElement(IncludeTransformer.java:72)
> 
> 
> 
> Pretty straightforward... no need for a test this time around :p
> Yoann
> 
> On Wed, 2009-03-25 at 14:13 +0100, Reinhard Pötz wrote:
>> Yoann,
>>
>> could you provide us with a integration test please because we haven't
>> been able to reproduce your problem. Just add your failing example to
>> the cocoon-samples module, create a patch and add it to the Cocoon 3 Jira.
>>
>> Thanks in advance!
>>
>> Reinhard
>>
>> Yoann Archambault wrote:
>>> Hi again!
>>> I'm afraid i spoke too soon... after i removed the xsl:output the error
>>> changed but its still there.
>>> This time around i dug a bit more and found that xalan's
>>> TransformerImpl.setContentHandler(handler) never gets called.
>>> setContentHandler also sets m_serializationHandler, which is used for
>>> synchronization during the xsl transformation in transformNode():1234
>>>
>>> I dont know which component has the responsability to call this
>>> setContentHandler. At first i thought about cocoon's
>>> XSLTTransformer.setSAXConsumer() but i might be off since i dont have
>>> the big picture in mind...
>>>
>>> At a glance i would say someone expected xalan to do something it can't
>>> do :)
>>>
>>> Here are some stacks:
>>>
>>> Found this when i dug into xalan's try-catches.
>>> This is where m_serializationHandler is used.
>>>
>>> java.lang.NullPointerException
>>> 	at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1234)
>>> 	at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3383)
>>> 	at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:389)
>>> 	at org.apache.cocoon.xml.sax.AbstractSAXPipe.endDocument(AbstractSAXPipe.java:58)
>>> 	at org.apache.cocoon.sax.AbstractSAXTransformer.endDocument(AbstractSAXTransformer.java:47)
>>> 	at org.apache.cocoon.sax.AbstractSAXTransformer.endDocument(AbstractSAXTransformer.java:47)
>>> 	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endDocument(AbstractSAXParser.java:737)
>>> 	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:515)
>>> 	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
>>> 	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
>>> 	at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
>>> 	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
>>> 	at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:87)
>>> 	at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:113)
>>>
>>>
>>> Cocoon's side:
>>>
>>> Caused by: org.apache.cocoon.pipeline.ProcessingException: Can't parse
>>> url connection blockcontext:/Core/html/ReferenceNodeEdit.html
>>> 	at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:117)
>>> 	at org.apache.cocoon.sax.component.FileGenerator.execute(FileGenerator.java:81)
>>> 	at org.apache.cocoon.pipeline.AbstractPipeline.invokeStarter(AbstractPipeline.java:147)
>>> 	at org.apache.cocoon.pipeline.CachingPipeline.execute(CachingPipeline.java:124)
>>> 	at sun.reflect.GeneratedMethodAccessor25.invoke(Unknown Source)
>>> Caused by: java.lang.RuntimeException
>>> 	at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3418)
>>> 	at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:389)
>>> 	at org.apache.cocoon.xml.sax.AbstractSAXPipe.endDocument(AbstractSAXPipe.java:58)
>>> 	at org.apache.cocoon.sax.AbstractSAXTransformer.endDocument(AbstractSAXTransformer.java:47)
>>> 	at org.apache.cocoon.sax.AbstractSAXTransformer.endDocument(AbstractSAXTransformer.java:47)
>>> 	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endDocument(AbstractSAXParser.java:737)
>>> 	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:515)
>>> 	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
>>> 	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
>>> 	at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
>>> 	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
>>> 	at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:87)
>>> 	at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:113)
>>> 	... 82 more
>>>
>>>
>>>
>>> and here the is master pipeline in this context
>>>
>>> <map:match pattern="html/**.html">
>>> 	<map:match pattern="html/inc/**.html">
>>> 		<map:generate src="html/{map:1}.html" />
>>> 		<map:transform  type="include" />
>>> 		<map:transform  src="xslt/views/referenceNodeCRUD.xslt" />
>>> 		<map:serialize type="pretty-xhtml"/>
>>> 	</map:match>
>>> </map:match>
>>>
>>> As i understand, here is what happens sequentially (didnt plan on sharing this so bear with me)
>>>
>>> GET /html/inc/ReferenceNodeEdit.html
>>> 	setup serializer
>>> 	setup transformer node
>>> 	setup include node
>>> 	setup generator node
>>> 	generator reads file
>>> 	includer parses and calls:
>>> 	GET servlet:/data/ReferenceTreeNode/root
>>> 		controller gathers data and returns
>>> 		GET servlet:/data/done
>>> 			GET servlet:/gen/UserInfos
>>> 			INVOKE /gen/UserInfos
>>> 			GET /gen/SimpleOperation
>>> 			INVOKE /gen/SimpleOperation
>>> 			GET /gen/BetwixtControllerModel
>>> 			INVOKE /gen/BetwixtControllerModel
>>> 		INVOKE /data/done
>>> 	INVOKE /data/ReferenceTreeNode/root
>>> 	transformer starts running and here comes the NPE
>>> 500.xml returned
>>>
>>>
>>> Hope it helps.
>>> Ask if you need anything
>>> Yoann
>>>
>>> On Mon, 2009-03-23 at 14:44 +0100, Steven Dolg wrote:
>>>> Yoann Archambault schrieb:
>>>>> Glad to know i was wrong!
>>>>> It works fine without the xsl:output el.
>>>>>   
>>>> Great!
>>>> Glad things are working for you now...
>>>>
>>>> Steven
>>>>> Thanks again!
>>>>> Yoann
>>>>>
>>>>> On Sun, 2009-03-22 at 12:36 -0400, Yoann Archambault wrote:
>>>>>   
>>>>>> I do not believe i have an xsl:output elemenet in my stylesheet.
>>>>>> I`ll confirm that when i get home later.
>>>>>> Thanks
>>>>>> Yoann
>>>>>>
>>>>>> On Sun, 22 Mar 2009 14:49 +0100, "Steven Dolg" <st...@indoqa.com>
>>>>>> wrote:
>>>>>>     
>>>>>>> Okay, here's what I did.
>>>>>>>
>>>>>>> Sitemap
>>>>>>>
>>>>>>>     <map:pipeline>
>>>>>>>       <map:match pattern="data/done">
>>>>>>>         <map:generate src="bug-fixing/BasicOperationResponse.xml" />
>>>>>>>         <map:transform type="include" />
>>>>>>>         <map:transform src="bug-fixing/referenceNodeCRUD.xslt" />
>>>>>>>         <map:serialize type="xml" />
>>>>>>>       </map:match>
>>>>>>>     </map:pipeline>
>>>>>>>
>>>>>>> BasicOperationResponse.xml
>>>>>>>
>>>>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>>>>> <response xmlns:i="http://apache.org/cocoon/3.0/include">
>>>>>>>     <i:include src="servlet:/aggregation/sub-request"/>
>>>>>>>     <i:include src="servlet:/aggregation/sub-request"/>
>>>>>>>     <i:include src="servlet:/aggregation/sub-request"/>
>>>>>>> </response>
>>>>>>>
>>>>>>> (I adjusted the URLs of the includes to something that already existed 
>>>>>>> in the sample-app; shouldn't make a difference though)
>>>>>>>
>>>>>>> referenceNodeCRUD.xslt
>>>>>>>
>>>>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>>>>> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
>>>>>>> version="1.0">
>>>>>>>   <xsl:output method="html"/>  
>>>>>>>
>>>>>>>   <xsl:template match="/">
>>>>>>>     <div>
>>>>>>>        <xsl:copy-of select="/response"/>
>>>>>>>     </div>
>>>>>>>   </xsl:template>
>>>>>>> </xsl:stylesheet>
>>>>>>>
>>>>>>> (just something very primitive)
>>>>>>>
>>>>>>> When I call this pipeline (http:/localhost:8890/data/done) I get just 
>>>>>>> the same exception:
>>>>>>>
>>>>>>> <exception-report class="org.apache.cocoon.pipeline.ProcessingException"
>>>>>>> timestamp="Sun, 22 Mar 2009 14:33:39 +0100">
>>>>>>> <message>
>>>>>>> Can't parse url connection
>>>>>>> file:/C:/work/cocoon-3/trunk/cocoon-sample/src/main/resources/COB-INF/bug-fixing/BasicOperationResponse.xml
>>>>>>> </message>
>>>>>>> <stacktrace>
>>>>>>> org.apache.cocoon.pipeline.ProcessingException: Can't parse url
>>>>>>> connection
>>>>>>> file:/C:/work/cocoon-3/trunk/cocoon-sample/src/main/resources/COB-INF/bug-fixing/BasicOperationResponse.xml
>>>>>>>     at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:117)
>>>>>>>     at
>>>>>>>     org.apache.cocoon.sax.component.FileGenerator.execute(FileGenerator.java:81)
>>>>>>>     at
>>>>>>>     org.apache.cocoon.pipeline.AbstractPipeline.invokeStarter(AbstractPipeline.java:147)
>>>>>>>     at
>>>>>>>     org.apache.cocoon.pipeline.CachingPipeline.execute(CachingPipeline.java:124)
>>>>>>>     at sun.reflect.GeneratedMethodAccessor18.invoke(Unknown Source)
>>>>>>>     ...
>>>>>>>
>>>>>>>
>>>>>>> However if I remove the "<xsl:output method="html"/>" from the XLST 
>>>>>>> everything works fine.
>>>>>>>
>>>>>>> Hope this helps...
>>>>>>>
>>>>>>> Cheers,
>>>>>>> Steven
>>>>>>>
>>>>>>>
>>>>>>> Sorry for all this text.
>>>>>>> I wanted to send the files as attachments but last time I did this there 
>>>>>>> was a turmoil because some people were afraid their hard disks might 
>>>>>>> fill up or something...

Re: C3: Xalan runtime error when using include and xslt transformers back to back in pipeline

Posted by Yoann Archambault <ya...@fastmail.fm>.
Hi,

Sorry i haven't gotten around to providing an example of my problem, but
i believe i found the source.
The include transformer creates endDocument sax events for every
included xml chunk.
Maybe it was the same thing that was messing with the xslt transformer,
but it most certainly is messing with the SSF. In the case of an SSF
serializer, on endDocument the serializer sends an incomplete document
down to the SSF consumer generator.

For example the following include file

<?xml version='1.0' encoding='utf-8'?>
<response xmlns:i="http://apache.org/cocoon/3.0/include">
    <i:include src="blockcontext:/Core/xml/testpart1.xml"/>
    <i:include src="blockcontext:/Core/xml/testpart2.xml"/>
    <i:include src="blockcontext:/Core/xml/testpart3.xml"/>
</response>

would recieve an endDocument at this point, obviously sending an
incomplete document:

<response xmlns:i="http://apache.org/cocoon/3.0/include">
    <testpart1>
        <foo>bar</foo>
    </testpart1>


and the consumer pipeline (/serializer/params) crashes saying:

[Fatal Error] :15:8: XML document structures must start and end within
the same entity.

Caused by: java.io.IOException: Can't connect to servlet URL
servlet:/serializer/params.
	at
org.apache.cocoon.servlet.ssf.ServletServiceSerializer.endDocument(ServletServiceSerializer.java:56)
	at
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endDocument(AbstractSAXParser.java:737)
	at
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:515)
	at
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
	at
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
	at
com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
	at
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
	at
org.apache.cocoon.sax.component.IncludeTransformer.startElement(IncludeTransformer.java:72)



Pretty straightforward... no need for a test this time around :p
Yoann

On Wed, 2009-03-25 at 14:13 +0100, Reinhard Pötz wrote:
> Yoann,
> 
> could you provide us with a integration test please because we haven't
> been able to reproduce your problem. Just add your failing example to
> the cocoon-samples module, create a patch and add it to the Cocoon 3 Jira.
> 
> Thanks in advance!
> 
> Reinhard
> 
> Yoann Archambault wrote:
> > Hi again!
> > I'm afraid i spoke too soon... after i removed the xsl:output the error
> > changed but its still there.
> > This time around i dug a bit more and found that xalan's
> > TransformerImpl.setContentHandler(handler) never gets called.
> > setContentHandler also sets m_serializationHandler, which is used for
> > synchronization during the xsl transformation in transformNode():1234
> > 
> > I dont know which component has the responsability to call this
> > setContentHandler. At first i thought about cocoon's
> > XSLTTransformer.setSAXConsumer() but i might be off since i dont have
> > the big picture in mind...
> > 
> > At a glance i would say someone expected xalan to do something it can't
> > do :)
> > 
> > Here are some stacks:
> > 
> > Found this when i dug into xalan's try-catches.
> > This is where m_serializationHandler is used.
> > 
> > java.lang.NullPointerException
> > 	at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1234)
> > 	at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3383)
> > 	at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:389)
> > 	at org.apache.cocoon.xml.sax.AbstractSAXPipe.endDocument(AbstractSAXPipe.java:58)
> > 	at org.apache.cocoon.sax.AbstractSAXTransformer.endDocument(AbstractSAXTransformer.java:47)
> > 	at org.apache.cocoon.sax.AbstractSAXTransformer.endDocument(AbstractSAXTransformer.java:47)
> > 	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endDocument(AbstractSAXParser.java:737)
> > 	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:515)
> > 	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
> > 	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
> > 	at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
> > 	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
> > 	at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:87)
> > 	at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:113)
> > 
> > 
> > Cocoon's side:
> > 
> > Caused by: org.apache.cocoon.pipeline.ProcessingException: Can't parse
> > url connection blockcontext:/Core/html/ReferenceNodeEdit.html
> > 	at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:117)
> > 	at org.apache.cocoon.sax.component.FileGenerator.execute(FileGenerator.java:81)
> > 	at org.apache.cocoon.pipeline.AbstractPipeline.invokeStarter(AbstractPipeline.java:147)
> > 	at org.apache.cocoon.pipeline.CachingPipeline.execute(CachingPipeline.java:124)
> > 	at sun.reflect.GeneratedMethodAccessor25.invoke(Unknown Source)
> > Caused by: java.lang.RuntimeException
> > 	at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3418)
> > 	at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:389)
> > 	at org.apache.cocoon.xml.sax.AbstractSAXPipe.endDocument(AbstractSAXPipe.java:58)
> > 	at org.apache.cocoon.sax.AbstractSAXTransformer.endDocument(AbstractSAXTransformer.java:47)
> > 	at org.apache.cocoon.sax.AbstractSAXTransformer.endDocument(AbstractSAXTransformer.java:47)
> > 	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endDocument(AbstractSAXParser.java:737)
> > 	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:515)
> > 	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
> > 	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
> > 	at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
> > 	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
> > 	at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:87)
> > 	at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:113)
> > 	... 82 more
> > 
> > 
> > 
> > and here the is master pipeline in this context
> > 
> > <map:match pattern="html/**.html">
> > 	<map:match pattern="html/inc/**.html">
> > 		<map:generate src="html/{map:1}.html" />
> > 		<map:transform  type="include" />
> > 		<map:transform  src="xslt/views/referenceNodeCRUD.xslt" />
> > 		<map:serialize type="pretty-xhtml"/>
> > 	</map:match>
> > </map:match>
> > 
> > As i understand, here is what happens sequentially (didnt plan on sharing this so bear with me)
> > 
> > GET /html/inc/ReferenceNodeEdit.html
> > 	setup serializer
> > 	setup transformer node
> > 	setup include node
> > 	setup generator node
> > 	generator reads file
> > 	includer parses and calls:
> > 	GET servlet:/data/ReferenceTreeNode/root
> > 		controller gathers data and returns
> > 		GET servlet:/data/done
> > 			GET servlet:/gen/UserInfos
> > 			INVOKE /gen/UserInfos
> > 			GET /gen/SimpleOperation
> > 			INVOKE /gen/SimpleOperation
> > 			GET /gen/BetwixtControllerModel
> > 			INVOKE /gen/BetwixtControllerModel
> > 		INVOKE /data/done
> > 	INVOKE /data/ReferenceTreeNode/root
> > 	transformer starts running and here comes the NPE
> > 500.xml returned
> > 
> > 
> > Hope it helps.
> > Ask if you need anything
> > Yoann
> > 
> > On Mon, 2009-03-23 at 14:44 +0100, Steven Dolg wrote:
> >> Yoann Archambault schrieb:
> >>> Glad to know i was wrong!
> >>> It works fine without the xsl:output el.
> >>>   
> >> Great!
> >> Glad things are working for you now...
> >>
> >> Steven
> >>> Thanks again!
> >>> Yoann
> >>>
> >>> On Sun, 2009-03-22 at 12:36 -0400, Yoann Archambault wrote:
> >>>   
> >>>> I do not believe i have an xsl:output elemenet in my stylesheet.
> >>>> I`ll confirm that when i get home later.
> >>>> Thanks
> >>>> Yoann
> >>>>
> >>>> On Sun, 22 Mar 2009 14:49 +0100, "Steven Dolg" <st...@indoqa.com>
> >>>> wrote:
> >>>>     
> >>>>> Okay, here's what I did.
> >>>>>
> >>>>> Sitemap
> >>>>>
> >>>>>     <map:pipeline>
> >>>>>       <map:match pattern="data/done">
> >>>>>         <map:generate src="bug-fixing/BasicOperationResponse.xml" />
> >>>>>         <map:transform type="include" />
> >>>>>         <map:transform src="bug-fixing/referenceNodeCRUD.xslt" />
> >>>>>         <map:serialize type="xml" />
> >>>>>       </map:match>
> >>>>>     </map:pipeline>
> >>>>>
> >>>>> BasicOperationResponse.xml
> >>>>>
> >>>>> <?xml version="1.0" encoding="UTF-8"?>
> >>>>> <response xmlns:i="http://apache.org/cocoon/3.0/include">
> >>>>>     <i:include src="servlet:/aggregation/sub-request"/>
> >>>>>     <i:include src="servlet:/aggregation/sub-request"/>
> >>>>>     <i:include src="servlet:/aggregation/sub-request"/>
> >>>>> </response>
> >>>>>
> >>>>> (I adjusted the URLs of the includes to something that already existed 
> >>>>> in the sample-app; shouldn't make a difference though)
> >>>>>
> >>>>> referenceNodeCRUD.xslt
> >>>>>
> >>>>> <?xml version="1.0" encoding="UTF-8"?>
> >>>>> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
> >>>>> version="1.0">
> >>>>>   <xsl:output method="html"/>  
> >>>>>
> >>>>>   <xsl:template match="/">
> >>>>>     <div>
> >>>>>        <xsl:copy-of select="/response"/>
> >>>>>     </div>
> >>>>>   </xsl:template>
> >>>>> </xsl:stylesheet>
> >>>>>
> >>>>> (just something very primitive)
> >>>>>
> >>>>> When I call this pipeline (http:/localhost:8890/data/done) I get just 
> >>>>> the same exception:
> >>>>>
> >>>>> <exception-report class="org.apache.cocoon.pipeline.ProcessingException"
> >>>>> timestamp="Sun, 22 Mar 2009 14:33:39 +0100">
> >>>>> <message>
> >>>>> Can't parse url connection
> >>>>> file:/C:/work/cocoon-3/trunk/cocoon-sample/src/main/resources/COB-INF/bug-fixing/BasicOperationResponse.xml
> >>>>> </message>
> >>>>> <stacktrace>
> >>>>> org.apache.cocoon.pipeline.ProcessingException: Can't parse url
> >>>>> connection
> >>>>> file:/C:/work/cocoon-3/trunk/cocoon-sample/src/main/resources/COB-INF/bug-fixing/BasicOperationResponse.xml
> >>>>>     at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:117)
> >>>>>     at
> >>>>>     org.apache.cocoon.sax.component.FileGenerator.execute(FileGenerator.java:81)
> >>>>>     at
> >>>>>     org.apache.cocoon.pipeline.AbstractPipeline.invokeStarter(AbstractPipeline.java:147)
> >>>>>     at
> >>>>>     org.apache.cocoon.pipeline.CachingPipeline.execute(CachingPipeline.java:124)
> >>>>>     at sun.reflect.GeneratedMethodAccessor18.invoke(Unknown Source)
> >>>>>     ...
> >>>>>
> >>>>>
> >>>>> However if I remove the "<xsl:output method="html"/>" from the XLST 
> >>>>> everything works fine.
> >>>>>
> >>>>> Hope this helps...
> >>>>>
> >>>>> Cheers,
> >>>>> Steven
> >>>>>
> >>>>>
> >>>>> Sorry for all this text.
> >>>>> I wanted to send the files as attachments but last time I did this there 
> >>>>> was a turmoil because some people were afraid their hard disks might 
> >>>>> fill up or something...
> >>>>>       
> >>>   
> > 
> > 
> 
> 


Re: C3: Xalan runtime error when using include and xslt transformers back to back in pipeline

Posted by Reinhard Pötz <re...@apache.org>.
Yoann,

could you provide us with a integration test please because we haven't
been able to reproduce your problem. Just add your failing example to
the cocoon-samples module, create a patch and add it to the Cocoon 3 Jira.

Thanks in advance!

Reinhard

Yoann Archambault wrote:
> Hi again!
> I'm afraid i spoke too soon... after i removed the xsl:output the error
> changed but its still there.
> This time around i dug a bit more and found that xalan's
> TransformerImpl.setContentHandler(handler) never gets called.
> setContentHandler also sets m_serializationHandler, which is used for
> synchronization during the xsl transformation in transformNode():1234
> 
> I dont know which component has the responsability to call this
> setContentHandler. At first i thought about cocoon's
> XSLTTransformer.setSAXConsumer() but i might be off since i dont have
> the big picture in mind...
> 
> At a glance i would say someone expected xalan to do something it can't
> do :)
> 
> Here are some stacks:
> 
> Found this when i dug into xalan's try-catches.
> This is where m_serializationHandler is used.
> 
> java.lang.NullPointerException
> 	at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1234)
> 	at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3383)
> 	at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:389)
> 	at org.apache.cocoon.xml.sax.AbstractSAXPipe.endDocument(AbstractSAXPipe.java:58)
> 	at org.apache.cocoon.sax.AbstractSAXTransformer.endDocument(AbstractSAXTransformer.java:47)
> 	at org.apache.cocoon.sax.AbstractSAXTransformer.endDocument(AbstractSAXTransformer.java:47)
> 	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endDocument(AbstractSAXParser.java:737)
> 	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:515)
> 	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
> 	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
> 	at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
> 	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
> 	at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:87)
> 	at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:113)
> 
> 
> Cocoon's side:
> 
> Caused by: org.apache.cocoon.pipeline.ProcessingException: Can't parse
> url connection blockcontext:/Core/html/ReferenceNodeEdit.html
> 	at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:117)
> 	at org.apache.cocoon.sax.component.FileGenerator.execute(FileGenerator.java:81)
> 	at org.apache.cocoon.pipeline.AbstractPipeline.invokeStarter(AbstractPipeline.java:147)
> 	at org.apache.cocoon.pipeline.CachingPipeline.execute(CachingPipeline.java:124)
> 	at sun.reflect.GeneratedMethodAccessor25.invoke(Unknown Source)
> Caused by: java.lang.RuntimeException
> 	at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3418)
> 	at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:389)
> 	at org.apache.cocoon.xml.sax.AbstractSAXPipe.endDocument(AbstractSAXPipe.java:58)
> 	at org.apache.cocoon.sax.AbstractSAXTransformer.endDocument(AbstractSAXTransformer.java:47)
> 	at org.apache.cocoon.sax.AbstractSAXTransformer.endDocument(AbstractSAXTransformer.java:47)
> 	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endDocument(AbstractSAXParser.java:737)
> 	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:515)
> 	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
> 	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
> 	at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
> 	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
> 	at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:87)
> 	at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:113)
> 	... 82 more
> 
> 
> 
> and here the is master pipeline in this context
> 
> <map:match pattern="html/**.html">
> 	<map:match pattern="html/inc/**.html">
> 		<map:generate src="html/{map:1}.html" />
> 		<map:transform  type="include" />
> 		<map:transform  src="xslt/views/referenceNodeCRUD.xslt" />
> 		<map:serialize type="pretty-xhtml"/>
> 	</map:match>
> </map:match>
> 
> As i understand, here is what happens sequentially (didnt plan on sharing this so bear with me)
> 
> GET /html/inc/ReferenceNodeEdit.html
> 	setup serializer
> 	setup transformer node
> 	setup include node
> 	setup generator node
> 	generator reads file
> 	includer parses and calls:
> 	GET servlet:/data/ReferenceTreeNode/root
> 		controller gathers data and returns
> 		GET servlet:/data/done
> 			GET servlet:/gen/UserInfos
> 			INVOKE /gen/UserInfos
> 			GET /gen/SimpleOperation
> 			INVOKE /gen/SimpleOperation
> 			GET /gen/BetwixtControllerModel
> 			INVOKE /gen/BetwixtControllerModel
> 		INVOKE /data/done
> 	INVOKE /data/ReferenceTreeNode/root
> 	transformer starts running and here comes the NPE
> 500.xml returned
> 
> 
> Hope it helps.
> Ask if you need anything
> Yoann
> 
> On Mon, 2009-03-23 at 14:44 +0100, Steven Dolg wrote:
>> Yoann Archambault schrieb:
>>> Glad to know i was wrong!
>>> It works fine without the xsl:output el.
>>>   
>> Great!
>> Glad things are working for you now...
>>
>> Steven
>>> Thanks again!
>>> Yoann
>>>
>>> On Sun, 2009-03-22 at 12:36 -0400, Yoann Archambault wrote:
>>>   
>>>> I do not believe i have an xsl:output elemenet in my stylesheet.
>>>> I`ll confirm that when i get home later.
>>>> Thanks
>>>> Yoann
>>>>
>>>> On Sun, 22 Mar 2009 14:49 +0100, "Steven Dolg" <st...@indoqa.com>
>>>> wrote:
>>>>     
>>>>> Okay, here's what I did.
>>>>>
>>>>> Sitemap
>>>>>
>>>>>     <map:pipeline>
>>>>>       <map:match pattern="data/done">
>>>>>         <map:generate src="bug-fixing/BasicOperationResponse.xml" />
>>>>>         <map:transform type="include" />
>>>>>         <map:transform src="bug-fixing/referenceNodeCRUD.xslt" />
>>>>>         <map:serialize type="xml" />
>>>>>       </map:match>
>>>>>     </map:pipeline>
>>>>>
>>>>> BasicOperationResponse.xml
>>>>>
>>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>>> <response xmlns:i="http://apache.org/cocoon/3.0/include">
>>>>>     <i:include src="servlet:/aggregation/sub-request"/>
>>>>>     <i:include src="servlet:/aggregation/sub-request"/>
>>>>>     <i:include src="servlet:/aggregation/sub-request"/>
>>>>> </response>
>>>>>
>>>>> (I adjusted the URLs of the includes to something that already existed 
>>>>> in the sample-app; shouldn't make a difference though)
>>>>>
>>>>> referenceNodeCRUD.xslt
>>>>>
>>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>>> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
>>>>> version="1.0">
>>>>>   <xsl:output method="html"/>  
>>>>>
>>>>>   <xsl:template match="/">
>>>>>     <div>
>>>>>        <xsl:copy-of select="/response"/>
>>>>>     </div>
>>>>>   </xsl:template>
>>>>> </xsl:stylesheet>
>>>>>
>>>>> (just something very primitive)
>>>>>
>>>>> When I call this pipeline (http:/localhost:8890/data/done) I get just 
>>>>> the same exception:
>>>>>
>>>>> <exception-report class="org.apache.cocoon.pipeline.ProcessingException"
>>>>> timestamp="Sun, 22 Mar 2009 14:33:39 +0100">
>>>>> <message>
>>>>> Can't parse url connection
>>>>> file:/C:/work/cocoon-3/trunk/cocoon-sample/src/main/resources/COB-INF/bug-fixing/BasicOperationResponse.xml
>>>>> </message>
>>>>> <stacktrace>
>>>>> org.apache.cocoon.pipeline.ProcessingException: Can't parse url
>>>>> connection
>>>>> file:/C:/work/cocoon-3/trunk/cocoon-sample/src/main/resources/COB-INF/bug-fixing/BasicOperationResponse.xml
>>>>>     at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:117)
>>>>>     at
>>>>>     org.apache.cocoon.sax.component.FileGenerator.execute(FileGenerator.java:81)
>>>>>     at
>>>>>     org.apache.cocoon.pipeline.AbstractPipeline.invokeStarter(AbstractPipeline.java:147)
>>>>>     at
>>>>>     org.apache.cocoon.pipeline.CachingPipeline.execute(CachingPipeline.java:124)
>>>>>     at sun.reflect.GeneratedMethodAccessor18.invoke(Unknown Source)
>>>>>     ...
>>>>>
>>>>>
>>>>> However if I remove the "<xsl:output method="html"/>" from the XLST 
>>>>> everything works fine.
>>>>>
>>>>> Hope this helps...
>>>>>
>>>>> Cheers,
>>>>> Steven
>>>>>
>>>>>
>>>>> Sorry for all this text.
>>>>> I wanted to send the files as attachments but last time I did this there 
>>>>> was a turmoil because some people were afraid their hard disks might 
>>>>> fill up or something...
>>>>>       
>>>   
> 
> 


-- 
Reinhard Pötz                           Managing Director, {Indoqa} GmbH
                         http://www.indoqa.com/en/people/reinhard.poetz/

Member of the Apache Software Foundation
Apache Cocoon Committer, PMC member                  reinhard@apache.org
________________________________________________________________________

Re: C3: Xalan runtime error when using include and xslt transformers back to back in pipeline

Posted by Yoann Archambault <ya...@fastmail.fm>.
Hi again!
I'm afraid i spoke too soon... after i removed the xsl:output the error
changed but its still there.
This time around i dug a bit more and found that xalan's
TransformerImpl.setContentHandler(handler) never gets called.
setContentHandler also sets m_serializationHandler, which is used for
synchronization during the xsl transformation in transformNode():1234

I dont know which component has the responsability to call this
setContentHandler. At first i thought about cocoon's
XSLTTransformer.setSAXConsumer() but i might be off since i dont have
the big picture in mind...

At a glance i would say someone expected xalan to do something it can't
do :)

Here are some stacks:

Found this when i dug into xalan's try-catches.
This is where m_serializationHandler is used.

java.lang.NullPointerException
	at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1234)
	at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3383)
	at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:389)
	at org.apache.cocoon.xml.sax.AbstractSAXPipe.endDocument(AbstractSAXPipe.java:58)
	at org.apache.cocoon.sax.AbstractSAXTransformer.endDocument(AbstractSAXTransformer.java:47)
	at org.apache.cocoon.sax.AbstractSAXTransformer.endDocument(AbstractSAXTransformer.java:47)
	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endDocument(AbstractSAXParser.java:737)
	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:515)
	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
	at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
	at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:87)
	at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:113)


Cocoon's side:

Caused by: org.apache.cocoon.pipeline.ProcessingException: Can't parse
url connection blockcontext:/Core/html/ReferenceNodeEdit.html
	at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:117)
	at org.apache.cocoon.sax.component.FileGenerator.execute(FileGenerator.java:81)
	at org.apache.cocoon.pipeline.AbstractPipeline.invokeStarter(AbstractPipeline.java:147)
	at org.apache.cocoon.pipeline.CachingPipeline.execute(CachingPipeline.java:124)
	at sun.reflect.GeneratedMethodAccessor25.invoke(Unknown Source)
Caused by: java.lang.RuntimeException
	at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3418)
	at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:389)
	at org.apache.cocoon.xml.sax.AbstractSAXPipe.endDocument(AbstractSAXPipe.java:58)
	at org.apache.cocoon.sax.AbstractSAXTransformer.endDocument(AbstractSAXTransformer.java:47)
	at org.apache.cocoon.sax.AbstractSAXTransformer.endDocument(AbstractSAXTransformer.java:47)
	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endDocument(AbstractSAXParser.java:737)
	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:515)
	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
	at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
	at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:87)
	at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:113)
	... 82 more



and here the is master pipeline in this context

<map:match pattern="html/**.html">
	<map:match pattern="html/inc/**.html">
		<map:generate src="html/{map:1}.html" />
		<map:transform  type="include" />
		<map:transform  src="xslt/views/referenceNodeCRUD.xslt" />
		<map:serialize type="pretty-xhtml"/>
	</map:match>
</map:match>

As i understand, here is what happens sequentially (didnt plan on sharing this so bear with me)

GET /html/inc/ReferenceNodeEdit.html
	setup serializer
	setup transformer node
	setup include node
	setup generator node
	generator reads file
	includer parses and calls:
	GET servlet:/data/ReferenceTreeNode/root
		controller gathers data and returns
		GET servlet:/data/done
			GET servlet:/gen/UserInfos
			INVOKE /gen/UserInfos
			GET /gen/SimpleOperation
			INVOKE /gen/SimpleOperation
			GET /gen/BetwixtControllerModel
			INVOKE /gen/BetwixtControllerModel
		INVOKE /data/done
	INVOKE /data/ReferenceTreeNode/root
	transformer starts running and here comes the NPE
500.xml returned


Hope it helps.
Ask if you need anything
Yoann

On Mon, 2009-03-23 at 14:44 +0100, Steven Dolg wrote:
> Yoann Archambault schrieb:
> > Glad to know i was wrong!
> > It works fine without the xsl:output el.
> >   
> Great!
> Glad things are working for you now...
> 
> Steven
> > Thanks again!
> > Yoann
> >
> > On Sun, 2009-03-22 at 12:36 -0400, Yoann Archambault wrote:
> >   
> >> I do not believe i have an xsl:output elemenet in my stylesheet.
> >> I`ll confirm that when i get home later.
> >> Thanks
> >> Yoann
> >>
> >> On Sun, 22 Mar 2009 14:49 +0100, "Steven Dolg" <st...@indoqa.com>
> >> wrote:
> >>     
> >>> Okay, here's what I did.
> >>>
> >>> Sitemap
> >>>
> >>>     <map:pipeline>
> >>>       <map:match pattern="data/done">
> >>>         <map:generate src="bug-fixing/BasicOperationResponse.xml" />
> >>>         <map:transform type="include" />
> >>>         <map:transform src="bug-fixing/referenceNodeCRUD.xslt" />
> >>>         <map:serialize type="xml" />
> >>>       </map:match>
> >>>     </map:pipeline>
> >>>
> >>> BasicOperationResponse.xml
> >>>
> >>> <?xml version="1.0" encoding="UTF-8"?>
> >>> <response xmlns:i="http://apache.org/cocoon/3.0/include">
> >>>     <i:include src="servlet:/aggregation/sub-request"/>
> >>>     <i:include src="servlet:/aggregation/sub-request"/>
> >>>     <i:include src="servlet:/aggregation/sub-request"/>
> >>> </response>
> >>>
> >>> (I adjusted the URLs of the includes to something that already existed 
> >>> in the sample-app; shouldn't make a difference though)
> >>>
> >>> referenceNodeCRUD.xslt
> >>>
> >>> <?xml version="1.0" encoding="UTF-8"?>
> >>> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
> >>> version="1.0">
> >>>   <xsl:output method="html"/>  
> >>>
> >>>   <xsl:template match="/">
> >>>     <div>
> >>>        <xsl:copy-of select="/response"/>
> >>>     </div>
> >>>   </xsl:template>
> >>> </xsl:stylesheet>
> >>>
> >>> (just something very primitive)
> >>>
> >>> When I call this pipeline (http:/localhost:8890/data/done) I get just 
> >>> the same exception:
> >>>
> >>> <exception-report class="org.apache.cocoon.pipeline.ProcessingException"
> >>> timestamp="Sun, 22 Mar 2009 14:33:39 +0100">
> >>> <message>
> >>> Can't parse url connection
> >>> file:/C:/work/cocoon-3/trunk/cocoon-sample/src/main/resources/COB-INF/bug-fixing/BasicOperationResponse.xml
> >>> </message>
> >>> <stacktrace>
> >>> org.apache.cocoon.pipeline.ProcessingException: Can't parse url
> >>> connection
> >>> file:/C:/work/cocoon-3/trunk/cocoon-sample/src/main/resources/COB-INF/bug-fixing/BasicOperationResponse.xml
> >>>     at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:117)
> >>>     at
> >>>     org.apache.cocoon.sax.component.FileGenerator.execute(FileGenerator.java:81)
> >>>     at
> >>>     org.apache.cocoon.pipeline.AbstractPipeline.invokeStarter(AbstractPipeline.java:147)
> >>>     at
> >>>     org.apache.cocoon.pipeline.CachingPipeline.execute(CachingPipeline.java:124)
> >>>     at sun.reflect.GeneratedMethodAccessor18.invoke(Unknown Source)
> >>>     ...
> >>>
> >>>
> >>> However if I remove the "<xsl:output method="html"/>" from the XLST 
> >>> everything works fine.
> >>>
> >>> Hope this helps...
> >>>
> >>> Cheers,
> >>> Steven
> >>>
> >>>
> >>> Sorry for all this text.
> >>> I wanted to send the files as attachments but last time I did this there 
> >>> was a turmoil because some people were afraid their hard disks might 
> >>> fill up or something...
> >>>       
> >
> >   
> 


Re: C3: Xalan runtime error when using include and xslt transformers back to back in pipeline

Posted by Steven Dolg <st...@indoqa.com>.
Yoann Archambault schrieb:
> Glad to know i was wrong!
> It works fine without the xsl:output el.
>   
Great!
Glad things are working for you now...

Steven
> Thanks again!
> Yoann
>
> On Sun, 2009-03-22 at 12:36 -0400, Yoann Archambault wrote:
>   
>> I do not believe i have an xsl:output elemenet in my stylesheet.
>> I`ll confirm that when i get home later.
>> Thanks
>> Yoann
>>
>> On Sun, 22 Mar 2009 14:49 +0100, "Steven Dolg" <st...@indoqa.com>
>> wrote:
>>     
>>> Okay, here's what I did.
>>>
>>> Sitemap
>>>
>>>     <map:pipeline>
>>>       <map:match pattern="data/done">
>>>         <map:generate src="bug-fixing/BasicOperationResponse.xml" />
>>>         <map:transform type="include" />
>>>         <map:transform src="bug-fixing/referenceNodeCRUD.xslt" />
>>>         <map:serialize type="xml" />
>>>       </map:match>
>>>     </map:pipeline>
>>>
>>> BasicOperationResponse.xml
>>>
>>> <?xml version="1.0" encoding="UTF-8"?>
>>> <response xmlns:i="http://apache.org/cocoon/3.0/include">
>>>     <i:include src="servlet:/aggregation/sub-request"/>
>>>     <i:include src="servlet:/aggregation/sub-request"/>
>>>     <i:include src="servlet:/aggregation/sub-request"/>
>>> </response>
>>>
>>> (I adjusted the URLs of the includes to something that already existed 
>>> in the sample-app; shouldn't make a difference though)
>>>
>>> referenceNodeCRUD.xslt
>>>
>>> <?xml version="1.0" encoding="UTF-8"?>
>>> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
>>> version="1.0">
>>>   <xsl:output method="html"/>  
>>>
>>>   <xsl:template match="/">
>>>     <div>
>>>        <xsl:copy-of select="/response"/>
>>>     </div>
>>>   </xsl:template>
>>> </xsl:stylesheet>
>>>
>>> (just something very primitive)
>>>
>>> When I call this pipeline (http:/localhost:8890/data/done) I get just 
>>> the same exception:
>>>
>>> <exception-report class="org.apache.cocoon.pipeline.ProcessingException"
>>> timestamp="Sun, 22 Mar 2009 14:33:39 +0100">
>>> <message>
>>> Can't parse url connection
>>> file:/C:/work/cocoon-3/trunk/cocoon-sample/src/main/resources/COB-INF/bug-fixing/BasicOperationResponse.xml
>>> </message>
>>> <stacktrace>
>>> org.apache.cocoon.pipeline.ProcessingException: Can't parse url
>>> connection
>>> file:/C:/work/cocoon-3/trunk/cocoon-sample/src/main/resources/COB-INF/bug-fixing/BasicOperationResponse.xml
>>>     at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:117)
>>>     at
>>>     org.apache.cocoon.sax.component.FileGenerator.execute(FileGenerator.java:81)
>>>     at
>>>     org.apache.cocoon.pipeline.AbstractPipeline.invokeStarter(AbstractPipeline.java:147)
>>>     at
>>>     org.apache.cocoon.pipeline.CachingPipeline.execute(CachingPipeline.java:124)
>>>     at sun.reflect.GeneratedMethodAccessor18.invoke(Unknown Source)
>>>     ...
>>>
>>>
>>> However if I remove the "<xsl:output method="html"/>" from the XLST 
>>> everything works fine.
>>>
>>> Hope this helps...
>>>
>>> Cheers,
>>> Steven
>>>
>>>
>>> Sorry for all this text.
>>> I wanted to send the files as attachments but last time I did this there 
>>> was a turmoil because some people were afraid their hard disks might 
>>> fill up or something...
>>>       
>
>   


Re: C3: Xalan runtime error when using include and xslt transformers back to back in pipeline

Posted by Yoann Archambault <ya...@fastmail.fm>.
Glad to know i was wrong!
It works fine without the xsl:output el.

Thanks again!
Yoann

On Sun, 2009-03-22 at 12:36 -0400, Yoann Archambault wrote:
> I do not believe i have an xsl:output elemenet in my stylesheet.
> I`ll confirm that when i get home later.
> Thanks
> Yoann
> 
> On Sun, 22 Mar 2009 14:49 +0100, "Steven Dolg" <st...@indoqa.com>
> wrote:
> > Okay, here's what I did.
> > 
> > Sitemap
> > 
> >     <map:pipeline>
> >       <map:match pattern="data/done">
> >         <map:generate src="bug-fixing/BasicOperationResponse.xml" />
> >         <map:transform type="include" />
> >         <map:transform src="bug-fixing/referenceNodeCRUD.xslt" />
> >         <map:serialize type="xml" />
> >       </map:match>
> >     </map:pipeline>
> > 
> > BasicOperationResponse.xml
> > 
> > <?xml version="1.0" encoding="UTF-8"?>
> > <response xmlns:i="http://apache.org/cocoon/3.0/include">
> >     <i:include src="servlet:/aggregation/sub-request"/>
> >     <i:include src="servlet:/aggregation/sub-request"/>
> >     <i:include src="servlet:/aggregation/sub-request"/>
> > </response>
> > 
> > (I adjusted the URLs of the includes to something that already existed 
> > in the sample-app; shouldn't make a difference though)
> > 
> > referenceNodeCRUD.xslt
> > 
> > <?xml version="1.0" encoding="UTF-8"?>
> > <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
> > version="1.0">
> >   <xsl:output method="html"/>  
> > 
> >   <xsl:template match="/">
> >     <div>
> >        <xsl:copy-of select="/response"/>
> >     </div>
> >   </xsl:template>
> > </xsl:stylesheet>
> > 
> > (just something very primitive)
> > 
> > When I call this pipeline (http:/localhost:8890/data/done) I get just 
> > the same exception:
> > 
> > <exception-report class="org.apache.cocoon.pipeline.ProcessingException"
> > timestamp="Sun, 22 Mar 2009 14:33:39 +0100">
> > <message>
> > Can't parse url connection
> > file:/C:/work/cocoon-3/trunk/cocoon-sample/src/main/resources/COB-INF/bug-fixing/BasicOperationResponse.xml
> > </message>
> > <stacktrace>
> > org.apache.cocoon.pipeline.ProcessingException: Can't parse url
> > connection
> > file:/C:/work/cocoon-3/trunk/cocoon-sample/src/main/resources/COB-INF/bug-fixing/BasicOperationResponse.xml
> >     at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:117)
> >     at
> >     org.apache.cocoon.sax.component.FileGenerator.execute(FileGenerator.java:81)
> >     at
> >     org.apache.cocoon.pipeline.AbstractPipeline.invokeStarter(AbstractPipeline.java:147)
> >     at
> >     org.apache.cocoon.pipeline.CachingPipeline.execute(CachingPipeline.java:124)
> >     at sun.reflect.GeneratedMethodAccessor18.invoke(Unknown Source)
> >     ...
> > 
> > 
> > However if I remove the "<xsl:output method="html"/>" from the XLST 
> > everything works fine.
> > 
> > Hope this helps...
> > 
> > Cheers,
> > Steven
> > 
> > 
> > Sorry for all this text.
> > I wanted to send the files as attachments but last time I did this there 
> > was a turmoil because some people were afraid their hard disks might 
> > fill up or something...


Re: C3: Xalan runtime error when using include and xslt transformers back to back in pipeline

Posted by Yoann Archambault <ya...@fastmail.fm>.
I do not believe i have an xsl:output elemenet in my stylesheet.
I`ll confirm that when i get home later.
Thanks
Yoann

On Sun, 22 Mar 2009 14:49 +0100, "Steven Dolg" <st...@indoqa.com>
wrote:
> Okay, here's what I did.
> 
> Sitemap
> 
>     <map:pipeline>
>       <map:match pattern="data/done">
>         <map:generate src="bug-fixing/BasicOperationResponse.xml" />
>         <map:transform type="include" />
>         <map:transform src="bug-fixing/referenceNodeCRUD.xslt" />
>         <map:serialize type="xml" />
>       </map:match>
>     </map:pipeline>
> 
> BasicOperationResponse.xml
> 
> <?xml version="1.0" encoding="UTF-8"?>
> <response xmlns:i="http://apache.org/cocoon/3.0/include">
>     <i:include src="servlet:/aggregation/sub-request"/>
>     <i:include src="servlet:/aggregation/sub-request"/>
>     <i:include src="servlet:/aggregation/sub-request"/>
> </response>
> 
> (I adjusted the URLs of the includes to something that already existed 
> in the sample-app; shouldn't make a difference though)
> 
> referenceNodeCRUD.xslt
> 
> <?xml version="1.0" encoding="UTF-8"?>
> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
> version="1.0">
>   <xsl:output method="html"/>  
> 
>   <xsl:template match="/">
>     <div>
>        <xsl:copy-of select="/response"/>
>     </div>
>   </xsl:template>
> </xsl:stylesheet>
> 
> (just something very primitive)
> 
> When I call this pipeline (http:/localhost:8890/data/done) I get just 
> the same exception:
> 
> <exception-report class="org.apache.cocoon.pipeline.ProcessingException"
> timestamp="Sun, 22 Mar 2009 14:33:39 +0100">
> <message>
> Can't parse url connection
> file:/C:/work/cocoon-3/trunk/cocoon-sample/src/main/resources/COB-INF/bug-fixing/BasicOperationResponse.xml
> </message>
> <stacktrace>
> org.apache.cocoon.pipeline.ProcessingException: Can't parse url
> connection
> file:/C:/work/cocoon-3/trunk/cocoon-sample/src/main/resources/COB-INF/bug-fixing/BasicOperationResponse.xml
>     at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:117)
>     at
>     org.apache.cocoon.sax.component.FileGenerator.execute(FileGenerator.java:81)
>     at
>     org.apache.cocoon.pipeline.AbstractPipeline.invokeStarter(AbstractPipeline.java:147)
>     at
>     org.apache.cocoon.pipeline.CachingPipeline.execute(CachingPipeline.java:124)
>     at sun.reflect.GeneratedMethodAccessor18.invoke(Unknown Source)
>     ...
> 
> 
> However if I remove the "<xsl:output method="html"/>" from the XLST 
> everything works fine.
> 
> Hope this helps...
> 
> Cheers,
> Steven
> 
> 
> Sorry for all this text.
> I wanted to send the files as attachments but last time I did this there 
> was a turmoil because some people were afraid their hard disks might 
> fill up or something...
-- 
  Yoann Archambault
  yarc@fastmail.fm


Re: C3: Xalan runtime error when using include and xslt transformers back to back in pipeline

Posted by Steven Dolg <st...@indoqa.com>.
Okay, here's what I did.

Sitemap

    <map:pipeline>
      <map:match pattern="data/done">
        <map:generate src="bug-fixing/BasicOperationResponse.xml" />
        <map:transform type="include" />
        <map:transform src="bug-fixing/referenceNodeCRUD.xslt" />
        <map:serialize type="xml" />
      </map:match>
    </map:pipeline>

BasicOperationResponse.xml

<?xml version="1.0" encoding="UTF-8"?>
<response xmlns:i="http://apache.org/cocoon/3.0/include">
    <i:include src="servlet:/aggregation/sub-request"/>
    <i:include src="servlet:/aggregation/sub-request"/>
    <i:include src="servlet:/aggregation/sub-request"/>
</response>

(I adjusted the URLs of the includes to something that already existed 
in the sample-app; shouldn't make a difference though)

referenceNodeCRUD.xslt

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  <xsl:output method="html"/>  

  <xsl:template match="/">
    <div>
       <xsl:copy-of select="/response"/>
    </div>
  </xsl:template>
</xsl:stylesheet>

(just something very primitive)

When I call this pipeline (http:/localhost:8890/data/done) I get just 
the same exception:

<exception-report class="org.apache.cocoon.pipeline.ProcessingException" timestamp="Sun, 22 Mar 2009 14:33:39 +0100">
<message>
Can't parse url connection file:/C:/work/cocoon-3/trunk/cocoon-sample/src/main/resources/COB-INF/bug-fixing/BasicOperationResponse.xml
</message>
<stacktrace>
org.apache.cocoon.pipeline.ProcessingException: Can't parse url connection file:/C:/work/cocoon-3/trunk/cocoon-sample/src/main/resources/COB-INF/bug-fixing/BasicOperationResponse.xml
    at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:117)
    at org.apache.cocoon.sax.component.FileGenerator.execute(FileGenerator.java:81)
    at org.apache.cocoon.pipeline.AbstractPipeline.invokeStarter(AbstractPipeline.java:147)
    at org.apache.cocoon.pipeline.CachingPipeline.execute(CachingPipeline.java:124)
    at sun.reflect.GeneratedMethodAccessor18.invoke(Unknown Source)
    ...


However if I remove the "<xsl:output method="html"/>" from the XLST 
everything works fine.

Hope this helps...

Cheers,
Steven


Sorry for all this text.
I wanted to send the files as attachments but last time I did this there 
was a turmoil because some people were afraid their hard disks might 
fill up or something...

Re: C3: Xalan runtime error when using include and xslt transformers back to back in pipeline

Posted by Steven Dolg <st...@indoqa.com>.
Yoann Archambault schrieb:
> Hi everyone!
>   
Hello Yoann,

> I started coding for a new project and decided to go ahead with Cocoon 3
> (i'm pretty much sticking to the trunk) and i like what i see. Alot
> actually! Really looks like the next step forward for XML based webapp
> frameworks.
>
> I'm not really sure this is the right mailling list, but then again i
> didnt see alot of questions for cocoon 3 in the user lists ;)
>
> Down to business,
> I have this error when i try to use a pipeline which has two
> transformations back to back, an include and an xslt.
> My various attempts at getting this to work told a couple of things
> -The pipeline works when one of the transformer is there, not when both
> are.
> -I tried taking the IncludeTransfo output to a new xml file and when
> feeding it to the XSLT transformer by FileGenerator, it works.
> -I have tried with other XML and XSLT files (taken from the working
> cocoon-sample) and it doesnt work either.
> -When the Include transformer doesnt have any work to do (no i: element
> to include in the source xml) the pipeline works with both transformer.
>
> Anyway, the bottom line is i'm pretty sure its not the XML or XSLT files
> that are faulty here.
> Is is something else i did wrong? Any thoughts?
>   
I can reproduce the behavior you described above and I already have an 
idea what's going wrong.
It should be possible to find a solution for this before ApacheCon starts.

I'll keep you posted...


Steven

> Some details:
>
> REVEISION alpha-2, 754707
>
> PIPELINE that fails. It is called by a controller and it's the last
> pipeline before returning a response to the client.
>
> <map:match pattern="data/done">
>   <map:generate src="xml/responses/BasicOperationResponse.xml" />
>   <map:transform type="include" />
>   <map:transform  src="xslt/views/referenceNodeCRUD.xslt" />
>   <map:serialize type="xml" />
> </map:match>
>
>
>
> SOURCE XML
>
> <?xml version="1.0" encoding="UTF-8"?>
> <response xmlns:i="http://apache.org/cocoon/3.0/include">
>     <i:include src="servlet:/gen/UserInfos"/>
>     <i:include src="servlet:/gen/SimpleOperation"/>
>     <i:include src="servlet:/gen/BetwixtControllerModel"/>
> </response>
>
>
> ERROR STs
>
> 17:49:37,235 ERROR [org.apache.cocoon.servlet.XMLSitemapServlet] An
> exception occurred while executing the sitemap.
> org.apache.cocoon.sitemap.InvocationException:
> org.apache.cocoon.pipeline.ProcessingException: Can't parse url
> connection blockcontext:/Core/xml/responses/BasicOperationResponse.xml
>         at
> org.apache.cocoon.sitemap.util.ExceptionHandler.getInvocationException(ExceptionHandler.java:39)
>         at
> org.apache.cocoon.sitemap.node.PipelineNode.handleException(PipelineNode.java:91)
>         at
> org.apache.cocoon.sitemap.node.PipelineNode.invoke(PipelineNode.java:61)
>         at
> org.apache.cocoon.sitemap.node.AbstractSitemapNode.invoke(AbstractSitemapNode.java:97)
>         at
> org.apache.cocoon.sitemap.node.PipelinesNode.invoke(PipelinesNode.java:40)
>         at
> org.apache.cocoon.sitemap.node.AbstractSitemapNode.invoke(AbstractSitemapNode.java:97)
>         at
> org.apache.cocoon.sitemap.node.Sitemap.invoke(Sitemap.java:33)
>         at
> org.apache.cocoon.servlet.XMLSitemapServlet.invoke(XMLSitemapServlet.java:82)
>         at
> org.apache.cocoon.servlet.XMLSitemapServlet.service(XMLSitemapServlet.java:113)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at
> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
>         at
> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
>         at
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
>         at
> org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:77)
>         at
> org.apache.cocoon.jnet.URLHandlerFactoryCollector.installURLHandlers(URLHandlerFactoryCollector.java:46)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>
>
>
> Caused by: org.apache.cocoon.pipeline.ProcessingException: Can't parse
> url connection
> blockcontext:/Core/xml/responses/BasicOperationResponse.xml
>         at org.apache.cocoon.sax.util.XMLUtils.toSax(XMLUtils.java:117)
>         at
> org.apache.cocoon.sax.component.FileGenerator.execute(FileGenerator.java:81)
>         at
> org.apache.cocoon.pipeline.AbstractPipeline.invokeStarter(AbstractPipeline.java:147)
>         at
> org.apache.cocoon.pipeline.CachingPipeline.execute(CachingPipeline.java:124)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>
>
>
> Caused by: java.lang.RuntimeException
>         at
> org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3418)
>         at
> org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:389)
>         at
> org.apache.cocoon.xml.sax.AbstractSAXPipe.endDocument(AbstractSAXPipe.java:58)
>         at
> org.apache.cocoon.sax.AbstractSAXTransformer.endDocument(AbstractSAXTransformer.java:47)
>         at
> com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endDocument(AbstractSAXParser.java:737)
>
>
>
> Thanks,
> Yoann
>
>
>
>
>