Hi.

On the JBoss lists, there are various posts regarding class cast exceptions when using Axis (1.1). I think I've seen a few such posts on Tomcat lists as well.

In its default setup, JBoss loads JAXP with a different classloader from the one used by a web app with no special directives regarding classloading. There are ways to change the JBoss classloading strategy for a particular ear or war, but many of these solutions are not very helpful if one can't change the server configuration as well.

I have noticed that there are some bits of JAXP in the Axis jaxrpc.jar. Specifically:

        javax/xml/transform/dom/DOMSource.class
        javax/xml/transform/sax/SAXSource.class
        javax/xml/transform/Source.class
        javax/xml/transform/stream/StreamSource.class

Two questions:

(1) Why are these in here? Wouldn't a user be expected to load his own JAXP classes and expect Axis to depend on that?

(2) I made a new version of Axis's jaxrpc.jar without these items, so that Axis just uses the JAXP items that are available as part of normal JBoss startup. It seems to eliminate the typical class cast exceptions. Is there anything wrong with doing this?

John



Reply via email to