Tomcat/Hibernate 问题“严重:错误 listenerStart”

Posted

技术标签:

【中文标题】Tomcat/Hibernate 问题“严重:错误 listenerStart”【英文标题】:Tomcat/Hibernate Problem "SEVERE: Error listenerStart" 【发布时间】:2011-03-05 01:37:49 【问题描述】:

我下载了hibernate的工作示例(使用maven)并将其安装在我的tomcat上,它可以工作。然后我在 MyEclipse 中创建了一个新的 web 项目,添加了 hibernate 支持和 将所有源文件(无 jar)移动到这个新项目,并在需要的地方修复包/路径。我的 servlet 响应正确,但是当我在 web.xml 中添加“Listener”时, tomcat 在启动时返回错误“Error ListenerStart”并且我的应用程序没有启动。 我已经仔细检查了所有包、路径和类,它们看起来不错。除了这两个词之外,错误消息也没有告诉任何其他内容 这是完整的tomcat启动日志:

17-Jun-2010 12:13:37 PM org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-8810
17-Jun-2010 12:13:37 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 293 ms
17-Jun-2010 12:13:37 PM org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
17-Jun-2010 12:13:37 PM org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.20
17-Jun-2010 12:13:37 PM org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
17-Jun-2010 12:13:37 PM org.apache.catalina.core.StandardContext start
SEVERE: Context [/addressbook] startup failed due to previous errors
17-Jun-2010 12:13:37 PM org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8810
17-Jun-2010 12:13:37 PM org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
17-Jun-2010 12:13:37 PM org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/22  config=null
17-Jun-2010 12:13:37 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 446 ms

我的 web.xml 是:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
    xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

    <listener>
        <listener-class>addressbook.util.SessionFactoryInitializer</listener-class>
    </listener>

    <filter>
        <filter-name>Session Interceptor</filter-name>
        <filter-class>addressbook.util.SessionInterceptor</filter-class>
    </filter>

    <filter-mapping>
        <filter-name>Session Interceptor</filter-name>
        <servlet-name>Country Manager</servlet-name>
    </filter-mapping>

    <servlet>
        <servlet-name>Country Manager</servlet-name>
        <servlet-class>addressbook.managers.CountryManagerServlet</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>Country Manager</servlet-name>
        <url-pattern>/countrymanager</url-pattern>
    </servlet-mapping>

</web-app>

有人可以帮我弄清楚我做错了什么吗?或指向一些资源,我可以在其中得到一些精确的问题解决方案?

【问题讨论】:

问题已修复:web.xml 中的过滤器和 servlet 顺序错误。我在过滤器之前移动了 servlet,问题已解决 欢迎将此作为答案发布并接受。 web.xml 中元素的顺序在 2.4 及之前的版本中确实非常严格。在 2.5 中,元素的顺序不太严格。顺便说一句,tomcat 将特定于 webapp 的错误记录到另一个以主机名作为文件名前缀的日志文件中。 是的 BalusC,你是对的。我明白了 【参考方案1】:

web.xml 中过滤器和 servlet 的顺序错误。我在过滤器之前移动了 servlet,问题已解决

【讨论】:

以上是关于Tomcat/Hibernate 问题“严重:错误 listenerStart”的主要内容,如果未能解决你的问题,请参考以下文章

Tomcat/Hibernate 与 MySql 的连接失败,出现“通信链接失败”和“权限被拒绝”

电脑出现严重错误,请高手指教啊!急急急。谢了

错误“与 adb 的连接已关闭,并且发生了严重错误。”

使用日志记录 Python 保存严重错误

tomcat启动时报以下三个严重错误

SQLSRV 致命错误:翻译 Unicode 时出现严重错误