У меня есть приложение Spring / Hibernate, которое я преобразовал в веб-приложение для предоставления веб-сервисов RESTful (используя Джерси). Я пытаюсь развернуть веб-приложение на Tomcat 6.0.20 и получаю только загадочное сообщение об ошибке в файле журнала:
Jul 8, 2009 2:25:22 PM org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
Jul 8, 2009 2:25:22 PM org.apache.catalina.core.StandardContext start
SEVERE: Context [/lmrest] startup failed due to previous errors
Я установил уровень ведения журнала для отладки, но нет никаких подозрительных сообщений, показывающих, что пошло не так, кроме этого, что выглядит довольно безобидно для меня:
1360 [http-8080-1] INFO org.hibernate.cfg.search.HibernateSearchEventListenerRegister - Unable to find org.hibernate.search.event.FullTextIndexEventListener on the classpath. Hibernate Search is not enabled.
Я использую последние версии Spring и Hibernate. Я использую ContextLoaderListener в моем web.xml. Может ли это быть слушатель, который не запускается? Я предполагаю, что он работает по крайней мере частично, поскольку я вижу, как многие сообщения журнала конфигурации Hibernate прокручиваются до сбоя при запуске веб-приложения. Моя главная проблема в том, что я не вижу никаких сообщений об ошибках, указывающих на то, что не удалось запустить слушатель, на которого он жалуется.
Файл web.xml, который я использую, выглядит следующим образом:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<!-- listener to pull in the Spring application context -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:appContext.xml</param-value>
</context-param>
<!-- Jersey servlet container to intercept all URIs -->
<servlet>
<servlet-name>JerseyContainer</servlet-name>
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>JerseyContainer</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
</web-app>
Если кто-нибудь может дать мне несколько идей относительно того, где искать мою ошибку, я буду очень признателен, потому что я в замешательстве. Заранее спасибо!
- Джеймс