Tomcat 5.5 と 6 の両方で人気のある jWebmail (または Java Webmail) jar を使用する際に問題があります。
現在、Tomcat 6で動作させようとしています。どこかでアドバイスされているように、javamail jarをtomcatのlibフォルダーに配置しましたが、まだ実行できません。
このエラーが発生しました:
jul 22, 2013 10:28:54 AM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Excepción de reserva de espacio para servlet WebMail
javax.servlet.UnavailableException
at net.wastl.webmail.server.WebMailServer.initStorage(Unknown Source)
at net.wastl.webmail.server.WebMailServer.doInit(Unknown Source)
at net.wastl.webmail.server.WebMailServlet.init(Unknown Source)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1213)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:827)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:129)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Unknown Source)
しかし、Oracle Web サイトからの最後の javax メール jar を持っています。そこには net.wastl.webmail.server.WebMailServer クラスがないので、他の何かが欠けている可能性があり、すでに解決されている場所に関する投稿が見つかりません
前もって感謝します
編集:
例外が発生しているように見える戦争クラス内にあるはずのこのコードを見つけましたが、そこで何が起こっているのかまだ理解していません
protected void initStorage() {
/* Storage API */
try {
Class storage_api=Class.forName(config.getProperty("webmail.storage"));
Class[] tmp=new Class[1];
tmp[0]=Class.forName("net.wastl.webmail.server.WebMailServer");
Constructor cons=storage_api.getConstructor(tmp);
Object[] sargs=new Object[1];
sargs[0]=this;
storage=(Storage)cons.newInstance(sargs);
} catch(InvocationTargetException e) {
Throwable t=e.getTargetException();
System.err.println("Nested exception: ");
t.printStackTrace();
System.err.println("Fatal error. Could not initialize. Exiting now!");
System.exit(1);
} catch(Exception e) {
e.printStackTrace();
System.err.println("Fatal error. Could not initialize. Exiting now!");
System.exit(1);
}
}