[xsl] XSLTC (Translets) - Problems with java.lang.IllegalAccessError

Subject: [xsl] XSLTC (Translets) - Problems with java.lang.IllegalAccessError
From: "Michael Brand" <Michael_Brand@xxxxxx>
Date: Mon, 17 Nov 2003 18:59:32 +0100
Hi,

Hope someone of you can help me with my XSLTC (Translet) Problem,...
Tried to code a little example to test XSLTC and Translets for
XSL-Transformations.

The Problem:
-------------------
Following Code Sample doesnt work on my own Computer
Win XP, j2sdk1.4.1_05
doesn't work on a friends computer
Win NT, j2sdk1.3
but works on a computer of my university.
Win NT, j2sdk1.3

So, I dont have any suggestion why the code works on one computer and
doesn't on an other...

Code Sample (nearly the same, as at the Xalan-J Page):
----------------------------------------------------------------------------
-----
import java.io.*;
import javax.xml.transform.Source;
import javax.xml.transform.Templates;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.stream.StreamSource;
import javax.xml.transform.stream.StreamResult;

[...]

System.setProperty(
                        "javax.xml.transform.TransformerFactory",

"org.apache.xalan.xsltc.trax.TransformerFactoryImpl");

xsltSource = "xslFile.xsl";
xmlSource = "xmlFile.xml"
outpoutFile = "output.xml"

TransformerFactory transFactory = TransformerFactory.newInstance();
Templates translet = transFactory.newTemplates(xsltSource);
Transformer trans1 = translet.newTransformer();
trans1.transform(xmlSource, new StreamResult(outputFile));
[...]


How it works:
--------------------
Till Codeline
Templates translet = transFactory.newTemplates(xsltSource);
it still works -> the .class Translet is created

At Codeline
trans1.transform(xmlSource, new StreamResult(outputFile));
the Error occurs

Error PrintStackTrace
--------------------------------
java.lang.IllegalAccessError: class
org.apache.xml.dtm.ref.sax2dtm.SAX2DTM2$AncestorIterator cannot access its
superclass
org.apache.xml.dtm.ref.DTMDefaultBaseIterators$InternalAxisIteratorBase
 at java.lang.ClassLoader.defineClass0(Native Method)
 at java.lang.ClassLoader.defineClass(ClassLoader.java:502)
 at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
 at java.net.URLClassLoader.defineClass(URLClassLoader.java:250)
 at java.net.URLClassLoader.access$100(URLClassLoader.java:54)
 at java.net.URLClassLoader$1.run(URLClassLoader.java:193)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.net.URLClassLoader.findClass(URLClassLoader.java:186)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
 at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:265)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:255)
 at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:315)
 at
org.apache.xalan.xsltc.dom.XSLTCDTMManager.getDTM(XSLTCDTMManager.java:291)
 at
org.apache.xalan.xsltc.dom.XSLTCDTMManager.getDTM(XSLTCDTMManager.java:174)
 at
org.apache.xalan.xsltc.trax.TransformerImpl.getDOM(TransformerImpl.java:516)
 at
org.apache.xalan.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:6
55)
 at
org.apache.xalan.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:2
98)
 at performance.TransXalanXSLTC.transformXSLTC(TransXalanXSLTC.java:96)
 at performance.TransXalanXSLTC.startTransform(TransXalanXSLTC.java:52)
 at
performance.FrameStart.jButtonTranslet_actionPerformed(FrameStart.java:204)
 at
performance.FrameStart_jButtonTranslet_actionAdapter.actionPerformed(FrameSt
art.java:254)
 at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1764)
 at
javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButto
n.java:1817)
 at
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:4
19)
 at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:257)
 at
javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener
.java:245)
 at java.awt.Component.processMouseEvent(Component.java:5134)
 at java.awt.Component.processEvent(Component.java:4931)
 at java.awt.Container.processEvent(Container.java:1566)
 at java.awt.Component.dispatchEventImpl(Component.java:3639)
 at java.awt.Container.dispatchEventImpl(Container.java:1623)
 at java.awt.Component.dispatchEvent(Component.java:3480)
 at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3450)
 at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3165)
 at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3095)
 at java.awt.Container.dispatchEventImpl(Container.java:1609)
 at java.awt.Window.dispatchEventImpl(Window.java:1590)
 at java.awt.Component.dispatchEvent(Component.java:3480)
 at java.awt.EventQueue.dispatchEvent(EventQueue.java:450)
 at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.ja
va:197)
 at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java
:150)
 at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:144)
 at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:136)
 at java.awt.EventDispatchThread.run(EventDispatchThread.java:99)


Thanks for any helpfull hints
Hope my English isn't to bad to unterstand the Problem,.. ;)

Regards
Michael Brand


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread