JFOR is in very early stages of integration into Apache FOP, which I believe is responsible for the pdf, html and ps output in cocoon. So if you get the latest dev version of Apache FOP, you might see something, but I doubt it will handle Docbook very well.
-Phil
John Austin wrote:
Just started playing with Cocoon again after striking out with it about a year ago. The product is MUCH improved.
I have just installed Cocoon 2.1.2 on my RedHat 9 system and am attempting to generate RTF from a DocBook file.
1) RH 9 2.4.20-20.9
2) JAVA_HOME: /opt/j2sdk_nb/j2sdk1.4.2
3) Cocoon: 2.1.2; simple build and invoked as ./cocoon.sh servlet
so it runs Jetty and services port 8888
4) The XML file(s) I use all produce RTF output when I use
the Linux scripts docbook2pdf, docbook2html and docbook2rtf
5) Cocoon successfully generates PDF, HTML and apparently
produces PS and other outputs (My browsers have no PS helper applications)
6) Cocoon chokes when I ask it to produce RTF output.
Question 1:
What should I do ?
Question 2:
Has this got anything to do with versions of Xerces and Xalan shipped with the SDK 1.4.2 ? I followed the instructions on the Cocoon site about copying the newer versions into jre/lib/endorsed directory but there was no improvement. See output of EnvironmentCheck following Stack trace.
Stack trace:
cause: java.lang.RuntimeException: java.util.EmptyStackException
full exception chain stacktrace[hide]
Original Exception: java.lang.RuntimeException: java.util.EmptyStackException at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3364) at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:427) at org.apache.cocoon.xml.AbstractXMLPipe.endDocument(AbstractXMLPipe.java:91) at org.apache.cocoon.transformation.TraxTransformer.endDocument(TraxTransformer.java:529) at org.apache.xerces.parsers.AbstractSAXParser.endDocument(Unknown Source) at org.apache.xerces.impl.dtd.XMLDTDValidator.endDocument(Unknown Source) at org.apache.xerces.impl.XMLDocumentScannerImpl.endEntity(Unknown Source) at org.apache.xerces.impl.XMLEntityManager.endEntity(Unknown Source) at org.apache.xerces.impl.XMLEntityScanner.load(Unknown Source) at org.apache.xerces.impl.XMLEntityScanner.skipSpaces(Unknown Source) at org.apache.xerces.impl.XMLDocumentScannerImpl$TrailingMiscDispatcher.dispatch(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source) at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) at org.apache.excalibur.xml.impl.JaxpParser.parse(JaxpParser.java:318) at org.apache.excalibur.xml.impl.JaxpParser.parse(JaxpParser.java:337) at org.apache.cocoon.components.source.SourceUtil.parse(SourceUtil.java:229) at org.apache.cocoon.generation.FileGenerator.generate(FileGenerator.java:141) at org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.processXMLPipeline(AbstractCachingProcessingPipeline.java:272) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:492) at org.apache.cocoon.components.treeprocessor.sitemap.SerializeNode.invoke(SerializeNode.java:147) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:84) at org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.invoke(PreparableMatchNode.java:164) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:108) at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:163) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:108) at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:161) at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:351) at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:304) at org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:130) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:84) at org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.invoke(PreparableMatchNode.java:164) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:108) at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:163) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:108) at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:161) at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:351) at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:304) at org.apache.cocoon.Cocoon.process(Cocoon.java:640) at org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:1104) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:360) at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:294) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:558) at org.mortbay.http.HttpContext.handle(HttpContext.java:1714) at org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:507) at org.mortbay.http.HttpContext.handle(HttpContext.java:1664) at org.mortbay.http.HttpServer.service(HttpServer.java:863) at org.mortbay.http.HttpConnection.service(HttpConnection.java:775) at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:939) at org.mortbay.http.HttpConnection.handle(HttpConnection.java:792) at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:201) at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:289) at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:455)
Output of java org.apache.xalan.xslt.EnvironmentCheck:
#---- BEGIN writeEnvironmentReport($Revision: 1.20 $): Useful stuff found: ---- version.DOM.draftlevel=2.0fd java.class.path=. version.JAXP=1.1 or higher java.ext.dirs=/opt/j2sdk_nb/j2sdk1.4.2/jre/lib/ext #---- BEGIN Listing XML-related jars in: foundclasses.sun.boot.class.path ---- xml-apis.jar-apparent.version=xml-apis.jar from xalan-j_2_3_0, or xalan-j_2_3_1 from xml-commons-1.0.b2 xml-apis.jar-path=/opt/j2sdk_nb/j2sdk1.4.2/jre/lib/endorsed/xml-apis.jar #----- END Listing XML-related jars in: foundclasses.sun.boot.class.path ----- version.xerces2=Xerces-J 2.5.0 version.xerces1=not-present version.xalan2_2=Xalan Java 2.5.1 version.xalan1=not-present version.ant=not-present java.version=1.4.2 version.DOM=2.0 version.crimson=present-unknown-version sun.boot.class.path=/opt/j2sdk_nb/j2sdk1.4.2/jre/lib/endorsed/xalan-2.5.1.jar:/opt/j2sdk_nb/j2sdk1.4.2/jre/lib/endorsed/xercesImpl-2.5.0.jar:/opt/j2sdk_nb/j2sdk1.4.2/jre/lib/endorsed/xml-apis.jar:/opt/j2sdk_nb/j2sdk1.4.2/jre/lib/rt.jar:/opt/j2sdk_nb/j2sdk1.4.2/jre/lib/i18n.jar:/opt/j2sdk_nb/j2sdk1.4.2/jre/lib/sunrsasign.jar:/opt/j2sdk_nb/j2sdk1.4.2/jre/lib/jsse.jar:/opt/j2sdk_nb/j2sdk1.4.2/jre/lib/jce.jar:/opt/j2sdk_nb/j2sdk1.4.2/jre/lib/charsets.jar:/opt/j2sdk_nb/j2sdk1.4.2/jre/classes version.SAX=2.0 version.xalan2x=Xalan Java 2.5.1 #----- END writeEnvironmentReport: Useful properties found: ----- # YAHOO! Your environment seems to be OK.
-- Phil Chu [EMAIL PROTECTED] http://www.technicat.com/
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
