Fix problem with calling the processor with a liaison


git-svn-id: https://svn.apache.org/repos/asf/xalan/java/trunk@334420 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/compat_src/org/apache/xalan/xslt/XSLTEngineImpl.java b/compat_src/org/apache/xalan/xslt/XSLTEngineImpl.java
index 217e3a3..2639707 100644
--- a/compat_src/org/apache/xalan/xslt/XSLTEngineImpl.java
+++ b/compat_src/org/apache/xalan/xslt/XSLTEngineImpl.java
@@ -214,15 +214,15 @@
   public XSLTEngineImpl(String liaisonClassName)
     throws SAXException 
   {   
-    TransformerFactory m_tfactory = TransformerFactory.newInstance();
+    m_tfactory = TransformerFactory.newInstance();
     m_problemListener = new ProblemListenerDefault();
     
     try 
       {
         m_liaison =  (DOM2Helper)(Class.forName(liaisonClassName).newInstance());
-        org.apache.xpath.XPathContext xctxt = this.getTransformer().getXPathContext();
+        //org.apache.xpath.XPathContext xctxt = this.getTransformer().getXPathContext();
 
-        xctxt.setDOMHelper(m_liaison);        
+        //xctxt.setDOMHelper(m_liaison);        
       } 
       catch (ClassNotFoundException e1) 
       {
@@ -264,13 +264,13 @@
   public XSLTEngineImpl(XMLParserLiaison parserLiaison)
     throws org.xml.sax.SAXException
   {
-    TransformerFactory m_tfactory = TransformerFactory.newInstance();
+    m_tfactory = TransformerFactory.newInstance();
     m_problemListener = new ProblemListenerDefault();
     
     m_liaison =  (DOM2Helper)parserLiaison;
-    org.apache.xpath.XPathContext xctxt = this.getTransformer().getXPathContext();
+   // org.apache.xpath.XPathContext xctxt = this.getTransformer().getXPathContext();
 
-    xctxt.setDOMHelper(m_liaison);    
+    //xctxt.setDOMHelper(m_liaison);    
   }
 
   /**
@@ -290,9 +290,9 @@
     m_problemListener = new ProblemListenerDefault();
     
     m_liaison =  (DOM2Helper)parserLiaison;
-    org.apache.xpath.XPathContext xctxt = this.getTransformer().getXPathContext();
+   // org.apache.xpath.XPathContext xctxt = this.getTransformer().getXPathContext();
 
-    xctxt.setDOMHelper(m_liaison);    
+    //xctxt.setDOMHelper(m_liaison);    
   }
  
   /**
@@ -454,6 +454,9 @@
           m_transformerImpl = (TransformerImpl)templates.newTransformer(); 
           if (m_problemListener != null)
             m_transformerImpl.setErrorListener(m_problemListener);
+          if (m_liaison != null)
+          m_transformerImpl.getXPathContext().setDOMHelper(m_liaison);
+   
         }
         catch (TransformerConfigurationException tce)
         {
@@ -583,12 +586,12 @@
         stylesheetProcessor.pushStylesheet(m_stylesheetRoot.getObject());      
         diag("========= Parsing "+xslIdentifier+" ==========");
         pushTime(xslIdentifier);
-        String liaisonClassName = System.getProperty("org.apache.xalan.source.liaison");
+        //String liaisonClassName = System.getProperty("org.apache.xalan.source.liaison");
 
-        if(null != liaisonClassName)
+        if(null != m_liaison)
         {
-          DOM2Helper liaison =  (DOM2Helper)(Class.forName(liaisonClassName).newInstance());
-          liaison.parse(SAXSource.sourceToInputSource(ssSource));
+         // DOM2Helper liaison =  (DOM2Helper)(Class.forName(liaisonClassName).newInstance());
+          m_liaison.parse(SAXSource.sourceToInputSource(ssSource));
         }  
         if(null != m_diagnosticsPrintWriter)
           displayDuration("Parse of "+xslIdentifier, xslIdentifier);