Yes, this is the way JVM classloader delegation works, a component only sees resources 
"above" it.
 What differs in JRun and Orion is that Orion has JavaMail in the core, so it's one 
level higher up in the hierarchy (at the system classpath level). What you'll have to 
do is to (as you've done) put it in orion.jar or somewhere in the system classpath.

If you on the other hand feel comfortable with relying on J2EE there's a more "proper" 
way of doing it, I assume what you want is a mail-session configuration. This is done 
by defining a <mail-session> in server.xml and then linking to it via a <resource-ref> 
in your web-application descriptor.

The code to access it then looks something like this:

javax.mail.Session session = (javax.mail.Session)new 
InitialContext().lookup("java:comp/env/myMailSession");

This leaves the configuration of mail parameters up to the appropriate person - the 
sys-admin deploying the application.

Hope it helps! :)

/Magnus Stenman, the Orion team

----- Original Message ----- 
From: Thomas Krantz <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Friday, October 22, 1999 3:15 PM
Subject: classpath.. ?


> 
> Hi,
> 
> I'm in the process of moving my application from JRun to
> Orion (or at least testing if it runs with Orion). My
> application uses the JavaMail API for which I've written
> a service provider. These classes are defined in a
> javamail.providers file, and with JRun I place this file in 
> JRun's $CLASSPATH/META-INF/javamail.providers.
> 
> With Orion, I've tried placing the file in /orion/lib/META-INF
> and /orion/beans/META-INF. No luck. But if I do a 
> "jar uvf orion.jar META-INF/javamail.providers" JavaMail finds
> the file but can't find the classes defined it in, _except_
> if I also put them all in orion.jar. 
> 
> What am I doing wrong?
> 
> / Thomas

Reply via email to