You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cocoon.apache.org by "SANSONE, AARON M [Non-Pharmacia/1000]" <aa...@monsanto.com> on 2002/02/11 23:54:35 UTC

More on Cocoon 2 generated SAX Exception

Cocoon 2.0 - Running on P3-500 NT 4.0 SP6 with JRun 3.1

Here is some extra exception information from root.log I didn't include
before:

org.xml.sax.SAXException: Invalid state 
	at
org.apache.cocoon.xml.dom.DOMBuilder.characters(DOMBuilder.java:462)
	at
org.apache.xalan.transformer.ResultTreeHandler.characters(ResultTreeHandler.
java:479)
	at
org.apache.xml.utils.FastStringBuffer.sendSAXcharacters(FastStringBuffer.jav
a:975)
	at
org.apache.xml.dtm.ref.sax2dtm.SAX2DTM.dispatchCharactersEvents(SAX2DTM.java
:455)
	at
org.apache.xalan.templates.ElemApplyTemplates.transformSelectedNodes(ElemApp
lyTemplates.java:355)
	at
org.apache.xalan.templates.ElemApplyTemplates.execute(ElemApplyTemplates.jav
a:226)
	at
org.apache.xalan.templates.ElemApplyTemplates.transformSelectedNodes(ElemApp
lyTemplates.java:422)
	at
org.apache.xalan.templates.ElemApplyTemplates.execute(ElemApplyTemplates.jav
a:226)
	at
org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(Transform
erImpl.java:2186)
	at
org.apache.xalan.transformer.TransformerImpl.applyTemplateToNode(Transformer
Impl.java:2012)
	at
org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.j
ava:1175)
	at
org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3139)
	at
org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerH
andlerImpl.java:433)
	at
org.apache.cocoon.xml.AbstractXMLPipe.endDocument(AbstractXMLPipe.java:48)
	at
org.apache.cocoon.xml.AbstractXMLPipe.endDocument(AbstractXMLPipe.java:48)
	at
org.apache.xerces.parsers.SAXParser.endDocument(SAXParser.java:1230)
	at
org.apache.xerces.validators.common.XMLValidator.callEndDocument(XMLValidato
r.java:1146)
	at
org.apache.xerces.framework.XMLDocumentScanner$EndOfInputDispatcher.dispatch
(XMLDocumentScanner.java:1499)
	at
org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.
java:381)
	at org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1098)
	at
org.apache.cocoon.components.parser.XercesParser.parse(XercesParser.java:78)
	at
org.apache.cocoon.components.source.URLSource.toSAX(URLSource.java:327)
	at
org.apache.cocoon.generation.FileGenerator.generate(FileGenerator.java:109)
	at
org.apache.cocoon.components.pipeline.AbstractEventPipeline.process(Abstract
EventPipeline.java:106)
	at
org.apache.cocoon.components.pipeline.AbstractStreamPipeline.process(Abstrac
tStreamPipeline.java:140)
	at
org.apache.cocoon.www.sitemap_xmap.wildcardMatchN40021F(sitemap_xmap.java:36
71)
	at
org.apache.cocoon.www.sitemap_xmap.process(sitemap_xmap.java:1602)
	at
org.apache.cocoon.www.sitemap_xmap.process(sitemap_xmap.java:1530)
	at org.apache.cocoon.sitemap.Handler.process(Handler.java:163)
	at org.apache.cocoon.sitemap.Manager.invoke(Manager.java:114)
	at org.apache.cocoon.Cocoon.process(Cocoon.java:514)
	at
org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:647)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1416)
	at
allaire.jrun.session.JRunSessionService.service(../session/JRunSessionServic
e.java:1082)
	at
allaire.jrun.servlet.JRunSE.runServlet(../servlet/JRunSE.java:1270)
	at
allaire.jrun.servlet.JRunRequestDispatcher.forward(../servlet/JRunRequestDis
patcher.java:89)
	at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1552)
	at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1542)
	at
allaire.jrun.servlet.JvmContext.dispatch(../servlet/JvmContext.java:364)
	at allaire.jrun.http.WebEndpoint.run(../http/WebEndpoint.java:115)
	at allaire.jrun.ThreadPool.run(../ThreadPool.java:272)
	at allaire.jrun.WorkerThread.run(../WorkerThread.java:75)


-----Original Message-----
From: SANSONE, AARON M [Non-Pharmacia/1000] 
Sent: Monday, February 11, 2002 4:52 PM
To: 'cocoon-users@xml.apache.org'
Subject: Cocoon 2 generated SAX Exception


All,

I'm running into a reoccurring problem in pipeline processing where I get a
SAX Exception.  It seems to happen when I place a DOM based transformer in
the pipeline after a series of SAX Transformations.  However, if a manually
serialize the file and create a test pipeline that reads the file in as a
generator, the test pipeline works.

>From the sitemap:

<map:match pattern="showTree">
		<map:generate type="file" src="sql/getMatrix.xml"/>
		<map:act type="request">
				<map:parameter name="parameters"
value="true"/>
				<map:transform type="sql">
						<map:parameter
name="use-connection" value="fp"/>
						<map:parameter
name="show-nr-of-rows" value="false"/>
						<map:parameter name="crop"
value="{cropCode}"/>
						<map:parameter
name="username" value="{../../username}"/>
				</map:transform>
				<map:transform type="xslt"
src="stylesheets/matrixSQLToXML.xsl"/>
				<map:transform type="xslt"
src="stylesheets/matrixAddSelf.xsl"/>
				<map:transform
type="matrixTransformer"/><!--This is where SAX Exception occurs-->
				<map:select type="parameter">
						<map:parameter
name="parameter-selector-test" value="{exportType}"/>
								<map:when
test="xml">
	
<map:serialize type="xml"/>
								</map:when>
	
<map:otherwise>
	
<map:serialize type="svg2jpeg"/>
	
</map:otherwise>
				</map:select>
				<map:serialize type="xml"/>
		</map:act>
</map:match>


Here is the stub for the matrixTransformer.  TreeAnalysis returns an SVG-XML
Document.  The entire document must be available for the runAnalysis method
to work properly:


import org.apache.cocoon.transformation.AbstractDOMTransformer;
import org.w3c.dom.Document;
import TreeAnalysis;

public class MatrixTransformer extends AbstractDOMTransformer {

    TreeAnalysis treeAnalysis;

    protected Document transform(Document doc) {
        treeAnalysis = new TreeAnalysis();

        log.debug("matrixTransformer START");
        Document svgDocument = treeAnalysis.runAnalysis(doc);
        log.debug("matrixTransformer END");
        return svgDocument;
    }
}


Here is the exception from the cocoon log.  The debug logs from the
MatrixTransformer class are never written.


org.apache.cocoon.ProcessingException: Could not read resource file:
/C:/Source/web/sql/getMatrix.xml: java.lang.RuntimeException:
org.xml.sax.SAXException: Invalid state 
	at
org.apache.cocoon.generation.FileGenerator.generate(FileGenerator.java:115)
	at
org.apache.cocoon.components.pipeline.AbstractEventPipeline.process(Abstract
EventPipeline.java:106)
	at
org.apache.cocoon.components.pipeline.AbstractStreamPipeline.process(Abstrac
tStreamPipeline.java:140)
	at
org.apache.cocoon.www.sitemap_xmap.wildcardMatchN40021F(sitemap_xmap.java:36
71)
	at
org.apache.cocoon.www.sitemap_xmap.process(sitemap_xmap.java:1602)
	at
org.apache.cocoon.www.sitemap_xmap.process(sitemap_xmap.java:1530)
	at org.apache.cocoon.sitemap.Handler.process(Handler.java:163)
	at org.apache.cocoon.sitemap.Manager.invoke(Manager.java:114)
	at org.apache.cocoon.Cocoon.process(Cocoon.java:514)
	at
org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:647)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1416)
	at
allaire.jrun.session.JRunSessionService.service(../session/JRunSessionServic
e.java:1082)
	at
allaire.jrun.servlet.JRunSE.runServlet(../servlet/JRunSE.java:1270)
	at
allaire.jrun.servlet.JRunRequestDispatcher.forward(../servlet/JRunRequestDis
patcher.java:89)
	at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1552)
	at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1542)
	at
allaire.jrun.servlet.JvmContext.dispatch(../servlet/JvmContext.java:364)
	at allaire.jrun.http.WebEndpoint.run(../http/WebEndpoint.java:115)
	at allaire.jrun.ThreadPool.run(../ThreadPool.java:272)
	at allaire.jrun.WorkerThread.run(../WorkerThread.java:75)
java.lang.RuntimeException: org.xml.sax.SAXException: Invalid state 
	at org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1111)
	at
org.apache.cocoon.components.parser.XercesParser.parse(XercesParser.java:78)
	at
org.apache.cocoon.components.source.URLSource.toSAX(URLSource.java:327)
	at
org.apache.cocoon.generation.FileGenerator.generate(FileGenerator.java:109)
	at
org.apache.cocoon.components.pipeline.AbstractEventPipeline.process(Abstract
EventPipeline.java:106)
	at
org.apache.cocoon.components.pipeline.AbstractStreamPipeline.process(Abstrac
tStreamPipeline.java:140)
	at
org.apache.cocoon.www.sitemap_xmap.wildcardMatchN40021F(sitemap_xmap.java:36
71)
	at
org.apache.cocoon.www.sitemap_xmap.process(sitemap_xmap.java:1602)
	at
org.apache.cocoon.www.sitemap_xmap.process(sitemap_xmap.java:1530)
	at org.apache.cocoon.sitemap.Handler.process(Handler.java:163)
	at org.apache.cocoon.sitemap.Manager.invoke(Manager.java:114)
	at org.apache.cocoon.Cocoon.process(Cocoon.java:514)
	at
org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:647)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1416)
	at
allaire.jrun.session.JRunSessionService.service(../session/JRunSessionServic
e.java:1082)
	at
allaire.jrun.servlet.JRunSE.runServlet(../servlet/JRunSE.java:1270)
	at
allaire.jrun.servlet.JRunRequestDispatcher.forward(../servlet/JRunRequestDis
patcher.java:89)
	at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1552)
	at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1542)
	at
allaire.jrun.servlet.JvmContext.dispatch(../servlet/JvmContext.java:364)
	at allaire.jrun.http.WebEndpoint.run(../http/WebEndpoint.java:115)
	at allaire.jrun.ThreadPool.run(../ThreadPool.java:272)
	at allaire.jrun.WorkerThread.run(../WorkerThread.java:75)
java.lang.RuntimeException: org.xml.sax.SAXException: Invalid state 
	at org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1111)
	at
org.apache.cocoon.components.parser.XercesParser.parse(XercesParser.java:78)
	at
org.apache.cocoon.components.source.URLSource.toSAX(URLSource.java:327)
	at
org.apache.cocoon.generation.FileGenerator.generate(FileGenerator.java:109)
	at
org.apache.cocoon.components.pipeline.AbstractEventPipeline.process(Abstract
EventPipeline.java:106)
	at
org.apache.cocoon.components.pipeline.AbstractStreamPipeline.process(Abstrac
tStreamPipeline.java:140)
	at
org.apache.cocoon.www.sitemap_xmap.wildcardMatchN40021F(sitemap_xmap.java:36
71)
	at
org.apache.cocoon.www.sitemap_xmap.process(sitemap_xmap.java:1602)
	at
org.apache.cocoon.www.sitemap_xmap.process(sitemap_xmap.java:1530)
	at org.apache.cocoon.sitemap.Handler.process(Handler.java:163)
	at org.apache.cocoon.sitemap.Manager.invoke(Manager.java:114)
	at org.apache.cocoon.Cocoon.process(Cocoon.java:514)
	at
org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:647)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1416)
	at
allaire.jrun.session.JRunSessionService.service(../session/JRunSessionServic
e.java:1082)
	at
allaire.jrun.servlet.JRunSE.runServlet(../servlet/JRunSE.java:1270)
	at
allaire.jrun.servlet.JRunRequestDispatcher.forward(../servlet/JRunRequestDis
patcher.java:89)
	at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1552)
	at allaire.jrun.servlet.JRunSE.service(../servlet/JRunSE.java:1542)
	at
allaire.jrun.servlet.JvmContext.dispatch(../servlet/JvmContext.java:364)
	at allaire.jrun.http.WebEndpoint.run(../http/WebEndpoint.java:115)
	at allaire.jrun.ThreadPool.run(../ThreadPool.java:272)
	at allaire.jrun.WorkerThread.run(../WorkerThread.java:75)



When I manually serialize the file as XML and read it as a generator in a
test pipeline, everything works.

<map:match pattern="testShowTree">
		<map:generate type="file" src="sql/getMatrix.xml"/>
		<map:act type="request">
				<map:parameter name="parameters"
value="true"/>
				<map:transform type="sql">
						<map:parameter
name="use-connection" value="fp"/>
						<map:parameter
name="show-nr-of-rows" value="false"/>
						<map:parameter name="crop"
value="{cropCode}"/>
						<map:parameter
name="username" value="{../../username}"/>
				</map:transform>
				<map:transform type="xslt"
src="stylesheets/matrixSQLToXML.xsl"/>
				<map:transform type="xslt"
src="stylesheets/matrixAddSelf.xsl"/>
				<map:serialize type="xml"/>
		</map:act>
</map:match>

I manually save these results to a file (i.e. cache/testTree.xml) then use
this pipeline to read it.

<map:match pattern="testTree">
		<map:act type="request">
				<map:parameter name="parameters"
value="true"/>
				<map:generate type="file"
src="cache/testTree.xml"/>
				<map:transform type="matrixTransformer"/>
				<map:serialize type="svg2jpeg"/>
		</map:act>
</map:match>


So the above works, however when I aggregate these two steps, I get the
aforementioned exception.

Any help or guidance will be greatly appreciated.

Thanks,
-Aaron

---------------------------------------------------------------------
Please check that your question has not already been answered in the
FAQ before posting. <http://xml.apache.org/cocoon/faqs.html>

To unsubscribe, e-mail: <co...@xml.apache.org>
For additional commands, e-mail: <co...@xml.apache.org>

---------------------------------------------------------------------
Please check that your question has not already been answered in the
FAQ before posting. <http://xml.apache.org/cocoon/faqs.html>

To unsubscribe, e-mail: <co...@xml.apache.org>
For additional commands, e-mail: <co...@xml.apache.org>


RE: More on Cocoon 2 generated SAX Exception

Posted by Vadim Gritsenko <va...@verizon.net>.
> From: SANSONE, AARON M [Non-Pharmacia/1000]
> 
> Cocoon 2.0 - Running on P3-500 NT 4.0 SP6 with JRun 3.1
> 
> Here is some extra exception information from root.log I didn't
include
> before:
> 
> org.xml.sax.SAXException: Invalid state
> 	at
> org.apache.cocoon.xml.dom.DOMBuilder.characters(DOMBuilder.java:462)
> 	at


This class was refactored in Cocoon 2.0.1. Can you upgrade to 2.0.1? It
might not have the issue you are describing.

Vadim


---------------------------------------------------------------------
Please check that your question has not already been answered in the
FAQ before posting. <http://xml.apache.org/cocoon/faqs.html>

To unsubscribe, e-mail: <co...@xml.apache.org>
For additional commands, e-mail: <co...@xml.apache.org>