Gabriele, Some comments.
1. Saxon does *not* support incremental processing, thus: <parameter name="incremental-processing" value="false"/> effectively does nothing. 2. Saxon works with XSP. I do have an app with Saxon only (no Xalan) and XSPs. Never had any problem. The only problem is you still need Xalan.jar if you are using XPath component. 3. I might be mistaken, but I do not see why Saxon needs to be modified. Cocoon by default will use Xerces parser, not Aelfred, and from Saxon only XSLT engine will be used. Vadim Gabriele Domenichini wrote: >I have succeded in transforming Docbook to pdf and to html on cocoon 2.0.3 >using the stylesheet by Norman Walsh on the official docbook repository >(http://docbook.sourceforge.net/projects/xsl/index.html). >Cocoon has some weakness in doing this and I spent 15 days to make it work >properly, so if you want save some time and you want to do something similar >you are interested in this mail. >What I learned is that: > >1. While xalan can do docbook transformation to xslfo correctly from the >command line, on cocoon it can't. > >2. If you use Saxon instead of xalan the transformation is almost successful >but not completly: ie. I lost all the sect1/title. > >3. If you use Saxon you loose all the xsp capabilities in cocoon (I want to >make sql transformation with as400 and Oracle) > >4. Incremental processing is not suggested for docbook to pdf transformation > >The solutions I have found to this problems thanks to all I have read on the >mailing lists and on the official site is: >1. Setting up cocoon to use xalan and saxon in alternative (defult: xalan) and >set incremental processing to false in Saxon > >2. Renaming saxon.jar to z-saxon.jar (I am not sure if is necessary but in >this way works) > >3. Modifying Saxon to make it use the parser xerces instead of aelfred > >Let'see theese points in detail > >1. Setting up cocoon to use xalan and saxon in alternative (defult: xalan) and >set incremental processing to false in Saxon. >To do this: >1.1 Put saxon652.jar WEB-INF/lib ( in the cocoon directory of course) > >1.2 Here are extracts of what you have to add in cocoon.xconf and >sitemap.xmap: > ># cocoon.xconf ><component > role="org.apache.cocoon.components.xslt.XSLTProcessor/Saxon" > class="org.apache.cocoon.components.xslt.XSLTProcessorImpl" > logger="core.xslt-processor"> > <parameter name="use-store" value="true"/> > <parameter name="incremental-processing" value="false"/> > <parameter name="transformer-factory" >value="com.icl.saxon.TransformerFactoryImpl"/> ></component> > ># sitemap.xmap ><map:transformer name="xslt-saxon" pool-grow="2" pool-max="32" pool-min="8" > src="org.apache.cocoon.transformation.TraxTransformer"> > <use-request-parameters>false</use-request-parameters> > <use-browser-capabilities-db>false</use-browser-capabilities-db> > ><xslt-processor-role>org.apache.cocoon.components.xslt.XSLTProcessor/Saxon</xslt-processor-role> > > </map:transformer>" > ></citationFromAMail.SeeTheReferences> > >in yor pipeline when you do a transformation from docbook to pdf you will use >something similar: > ><map:match pattern="*.pdf"> > <map:generate src="{1}.docbook"/> > <map:tranform type="xslt-saxon" src="WhereverYouPutIt/fo/docbook.xsl"/> > <map:serialize type="fo2pdf"/> ></map:match> ><map:match pattern="*.html"> > <map:generate src="{1}.docbook"/> > <map:tranform type="xslt-saxon" src="WhereverYouPutIt/html/docbook.xsl"/> > <map:serialize type="fo2pdf"/> ></map:match> > >In this way if you will leave xslt as the default type of transformation, you >will use use xalan and all his xsp capabilities for all the the other cocoon >functions. > >2. Renaming saxon.jar z-saxon.jar (I am not sure that is necessary but in this >way works) > >3. Modifying Saxon to make it use xerces instead of aelfred as parser > >Change the content of >META-INF/services/javax.xml.parsers.SAXParserFactory from >com.icl.saxon.aelfred.SAXParserFactoryImpl to >org.apache.xerces.jaxp.SAXParserFactoryImpl. That tells >Saxon to use xerces instead of aelfred as parser. > >Don't be worried it is not so complicated: you have to extract the file >(javax.xml.parsers.SAXParserFactory) from saxon.jar edit it (is a text file) >and to put it again in the same place in saxon.jar > >Conclusion: >I must say that the Saxon and xalan problems in using Norman Walsh's >stylesheets should be addressed inside cocoon developing activity. It >shouldn't be so hard to make docbook to pdf transformation work. >Comments are welcome. > >Gabriele Domenichini > >References: >To use different xslt processors or different behaviour of the same: >http://xml.apache.org/cocoon/snippet/snippet-xslt-options.html > >To use saxon in alternative the mail from which I took the solution is: >(http://www.mail-archive.com/cocoon-users@xml.apache.org/msg15968.html) which >tell exactly what to do: > >To change the behavior of saxon there's a mail >(http://sources.redhat.com/ml/docbook-apps/2002-q2/msg00397.html) which >explain three workaround. I have choosen the third > > --------------------------------------------------------------------- Please check that your question has not already been answered in the FAQ before posting. <http://xml.apache.org/cocoon/faq/index.html> To unsubscribe, e-mail: <[EMAIL PROTECTED]> For additional commands, e-mail: <[EMAIL PROTECTED]>