short:  Orion's classloading seems to be broken.  It handles classes
differently depending on whether they're loaded from WEB-INF/lib or
WEB-INF/classes.  I see related bugs in the Orion bugzilla database
(http://bugzilla.orionserver.com/bugzilla/show_bug.cgi?id=340) with no
comments or solutions metioned..


long:

I'm having some troubles with the Orion web application classloader.
I'm currently using Orion 1.4.5 (I tried "java -jar autoupdate.jar" but
it only asks me "Overwrite /config/database-schemas/sapdb.xml" and
doesn't seem to do anything else).  I'm running Linux, Sun JDK1.3_02.

I'm trying to get the IdooXoap 1.1.1 toolkit running
(http://www.idoox.com).  It is delivered in an unpacked WAR directory.

Classes seem to load from the WEB-INF/lib directory, but the application
fails when those classes from WEB-INF/lib try to use Class.forName() to
load classes that are in WEB-INF/classes.  (Confused yet?)  Here's what
the default setup is, and what works on most other application servers:

IdooXoap/WEB-INF/etc/config.xml
IdooXoap/WEB-INF/lib/IdooXoap.jar
IdooXoap/WEB-INF/lib/log4j.jar
IdooXoap/WEB-INF/lib/xerces.jar
IdooXoap/WEB-INF/classes/demos/......

The servlet that is being called is inside of IdooXoap.jar, and it tries
to load the demos from the "classes" subdirectory.  This fails -
ClassNotFoundException.  Here's how I've tried to fix it:

1) Create "IdooXoap/WEB-INF/lib/demos.jar" with the contents of
"classes/demos".  This fails again with ClassNotFound.
2) Unpack all of the libraries from "lib" into "classes" (and then
remove everything from the "lib" directory).  This works!!
3) Create a giant JAR of all classes in the "lib" directory (and then
remove the "classes" directory).  This works too!!

court





Reply via email to