You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by "Yu, Calvin" <cy...@verticalone.com> on 2000/07/28 15:12:56 UTC

Problem with Xalan and Tomcat

I found this problem when processing an XSL with a script in it:

java.lang.IllegalAccessError: try to access field
org.apache.xalan.xpath.ExtensionFunctionHandler.class$com$ibm$bsf$BSFManager
from class org.apache.xalan.xslt.ExtensionNSHandler
   at
org.apache.xalan.xslt.ExtensionNSHandler.startupComponent(ExtensionNSHandler
.java:291)
   at
org.apache.xalan.xpath.ExtensionFunctionHandler.callFunction(ExtensionFuncti
onHandler.java:482)
   at
org.apache.xalan.xpath.xml.XMLParserLiaisonDefault.extFunction(XMLParserLiai
sonDefault.java:1878)
   at org.apache.xalan.xpath.XPath.extfunction(XPath.java:1015)
   at org.apache.xalan.xpath.XPath.executeExtension(XPath.java:1254)
   at org.apache.xalan.xpath.XPath.execute(XPath.java:1379)
   at org.apache.xalan.xpath.XPath.execute(XPath.java:1354)
   at org.apache.xalan.xpath.XPath.execute(XPath.java:311)
   at org.apache.xalan.xslt.ElemValueOf.execute(ElemValueOf.java:186)
   at
org.apache.xalan.xslt.ElemTemplateElement.executeChildren(ElemTemplateElemen
t.java:659)
   ...

I believe this is a ClassLoader problem, because it does not occur when
processing with a command line app but does when processing from the Tomcat
and Resin Servlet Engines.  I was able to get it to work by explicitly
importing the com.ibm.bsf package in ExtensionFunctionHandler.java, but was
wondering if anyone else has ran into this problem and had found another
solution.  I would hate to have to maintain my own version of Xalan just for
this.

Calvin