Use Saxon instead of Xalan
[gpl/argeo-suite.git] / org.argeo.app.servlet.publish / src / org / argeo / app / servlet / publish / DbkServlet.java
index f2d38e1c0afd00c55726e9bcef5f61de05a98ab6..152df6eb5dca15742aa3fc9cdcf41fe37f083472 100644 (file)
@@ -42,7 +42,6 @@ import javax.xml.transform.stream.StreamSource;
 import org.apache.commons.io.IOUtils;
 import org.apache.fop.apps.Fop;
 import org.apache.fop.apps.FopFactory;
-import org.apache.xalan.processor.TransformerFactoryImpl;
 import org.argeo.api.cms.CmsLog;
 import org.argeo.api.cms.ux.CmsTheme;
 import org.argeo.app.docbook.DbkType;
@@ -54,6 +53,8 @@ import org.argeo.jcr.JcrException;
 import org.argeo.jcr.JcrUtils;
 import org.w3c.dom.Document;
 
+import net.sf.saxon.BasicTransformerFactory;
+
 /**
  * A servlet transforming a dbk:* JCR node into HTML, using the DocBook XSL.
  */
@@ -256,9 +257,10 @@ public class DbkServlet extends HttpServlet {
        protected Templates createDocBookTemplates(String xsl) {
                try {
                        if (transformerFactory == null) {
+                               transformerFactory = new BasicTransformerFactory();
                                // We must explicitly use the non-XSLTC transformer, as XSLTC is not working
                                // with DocBook stylesheets
-                               transformerFactory = new TransformerFactoryImpl();
+//                             transformerFactory = new TransformerFactoryImpl();
                        }
                        Source xslSource = new StreamSource(xsl);
                        Templates templates = transformerFactory.newTemplates(xslSource);