Rob van Maris <[EMAIL PROTECTED]> wrote:
> Since MMBase containts a class that depends on it
> (org.mmbase.module.JMSendMail), it should ship with mail.jar.
> Application servers may ship with it as well, but they're not required
> to.
>
> Regarding the common/endorsed directory: it is not intended for this
> purpose.
> The correct location for thirdparty libraries is the webapp's
> WEB-INF/lib. Or alternatively Tomcat's shared/lib if you want to make it
> available to all webapps. See:
> http://jakarta.apache.org/tomcat/tomcat-5.0-doc/class-loader-howto.html
I don't believe anything before I see it.
Placing them in WEB-INF/lib gives the following error in mmbase.log:
10:10:09,880 ERR 6082 kb org.mmbase.servlet.MMBaseServlet error.74 -
javax/mail/Sessionjava.lang.NoClassDefFoundError: javax/mail/Session
at
org.apache.naming.factory.MailSessionFactory$1.run(MailSessionFactory.java:163)
at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.naming.factory.MailSessionFactory.getObjectInstance(MailSessionFactory.java:147)
at
org.apache.naming.factory.ResourceFactory.getObjectInstance(ResourceFactory.java:176)
at
javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:301)
at org.apache.naming.NamingContext.lookup(NamingContext.java:837)
at org.apache.naming.NamingContext.lookup(NamingContext.java:184)
at org.apache.naming.NamingContext.lookup(NamingContext.java:825)
at org.apache.naming.NamingContext.lookup(NamingContext.java:197)
at org.mmbase.module.JMSendMail.init(JMSendMail.java:53)
at org.mmbase.module.Module.startModule(Module.java:83)
at org.mmbase.module.Module.startModules(Module.java:282)
at org.mmbase.module.Module.getModule(Module.java:326)
at org.mmbase.module.core.MMBase.getMMBase(MMBase.java:428)
at org.mmbase.servlet.MMBaseServlet.init(MMBaseServlet.java:168)
at javax.servlet.GenericServlet.init(GenericServlet.java:256)
at
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1044)
Placing them in shared/lib is even worse:
10:11:23,053 ERR 4743 kb org.mmbase.servlet.MMBaseServlet error.74 -
javax/mail/MessagingExceptionjava.lang.NoClassDefFoundError:
javax/mail/MessagingException
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:141)
at org.mmbase.module.Module.loadModulesFromDisk(Module.java:390)
at org.mmbase.module.Module.getModule(Module.java:322)
at org.mmbase.module.core.MMBase.getMMBase(MMBase.java:428)
at org.mmbase.servlet.MMBaseServlet.init(MMBaseServlet.java:168)
at javax.servlet.GenericServlet.init(GenericServlet.java:256)
Only placing in common/endorsed works flawlessly.
So well, I think this is a bit of a problem, because it is impossible to
ship something which works out of the box.
Michiel
--
Michiel Meeuwissen
Mediapark C101 Hilversum
+31 (0)35 6772979
nl_NL eo_XX en_US
mihxil'
[] ()