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