Это немного сложно объяснить ..
Я использую tomcat 6.0 для тестирования развертывания файла WAR. Я использую proGuard, чтобы скрыть файл WAR.
Чтобы использовать proGuard, все com. *, Org. * И т. Д., Которые обычно находятся в классах WEB-INF /, должны быть упакованы в один файл .jar в WEB-INF / lib.
Пока хорошо.
Проблема возникает при развертывании. Приложение использует Hibernate и Hibernate слушатель. Этот слушатель не может загрузить. Из этого я понимаю, что .jar с полным набором классов был найден и, по крайней мере, начал использоваться. Однако отказ прослушивателя гибернации завершает развертывание приложения, и ничего не появляется, даже страница индекса.
Мой файл журнала (установлен на DEBUG) дает мне:
[2011-11-11 10:19:33] [1381 prunsrv.c] [debug] Commons Daemon procrun log initialized
[2011-11-11 10:19:33] [info] Commons Daemon procrun (1.0.2.0) started
[2011-11-11 10:19:33] [info] Running Service...
[2011-11-11 10:19:33] [1165 prunsrv.c] [debug] Inside ServiceMain...
[2011-11-11 10:19:33] [info] Starting service...
[2011-11-11 10:19:33] [447 javajni.c] [debug] Jvm Option[0] -Dcatalina.home=C:\tomcat\Tomcat 6.0
[2011-11-11 10:19:33] [447 javajni.c] [debug] Jvm Option[1] -Dcatalina.base=C:\tomcat\Tomcat 6.0
[2011-11-11 10:19:33] [447 javajni.c] [debug] Jvm Option[2] -Djava.endorsed.dirs=C:\tomcat\Tomcat 6.0\endorsed
[2011-11-11 10:19:33] [447 javajni.c] [debug] Jvm Option[3] -Djava.io.tmpdir=C:\tomcat\Tomcat 6.0\temp
[2011-11-11 10:19:33] [447 javajni.c] [debug] Jvm Option[4] -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
[2011-11-11 10:19:33] [447 javajni.c] [debug] Jvm Option[5] -Djava.util.logging.config.file=C:\tomcat\Tomcat 6.0\conf\logging.properties
[2011-11-11 10:19:33] [447 javajni.c] [debug] Jvm Option[6] -Djava.class.path=C:\tomcat\Tomcat 6.0\bin\bootstrap.jar
[2011-11-11 10:19:33] [447 javajni.c] [debug] Jvm Option[7] vfprintf
[2011-11-11 10:19:33] [629 javajni.c] [debug] argv[0] = start
[2011-11-11 10:19:33] [655 javajni.c] [debug] Java Worker thread started org/apache/catalina/startup/Bootstrap:main
[2011-11-11 10:19:34] [1006 prunsrv.c] [debug] Java started org/apache/catalina/startup/Bootstrap
[2011-11-11 10:19:34] [info] Service started in 1138 ms.
[2011-11-11 10:19:34] [1272 prunsrv.c] [debug] Waiting worker to finish...
и затем останавливается.
Каталина дает мне:
11-Nov-2011 10:21:35 org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
Есть ли у кого-нибудь опыт перехода в спящий режим для запуска в обфусцируемой войне (на самом деле война еще не запутана, она просто настроена в формате, в котором она нуждается в proGuard, чтобы запутать), независимый сосуд или даже просто как получить более точное ведение журнала!
Спасибо
UPDATE:
Я думал, что Tomcat находит банку с классами com. * И т. Д., Но теперь я не уверен. Кто-нибудь знает, как использовать файл web.xml для указания внутри конкретного файла .jar в папке WEB-INF / lib?
В настоящее время это, например:
<listener>
<listener-class>com.*etc*.HibernateListener</listener-class>
</listener>
<servlet>
<servlet-name>Application Name</servlet-name>
<servlet-class>com.vaadin.terminal.gwt.server.ApplicationServlet</servlet-class>
etc etc...
но все эти пути должны указывать внутри файла .jar. Или же свойство в файле web.xml должно определять, где можно найти эти пути.
Спасибо