`
xj4150
  • 浏览: 97559 次
  • 性别: Icon_minigender_1
  • 来自: 山东
社区版块
存档分类
最新评论

tomcat启动时出现的 严重: Error listenerStart

阅读更多

      最近看《WebWork.Spring.Hibernate整合开发网络书城》视频教程,自己按照教程上说的做练习,在启动tomcat时总是出一个错误:<o:p></o:p>

      2007-5-31 14:27:13 org.apache.catalina.core.StandardContext start
     
严重: Error listenerStart
      2007-5-31 14:27:13 org.apache.catalina.core.StandardContext start
     
严重: Context [/testWSH] startup failed due to previous errors
   
     
教程的作者在录制教程时也遇到了此问题,但是他删了一个jar包后就没事了,可是我的一直无法正常启动,从昨天到现在一天的时间都在研究这个问题,也百 度到了很多有关此问题的信息,但是都没有很明确的解决方案。现在此问题已经解决,而且基本肯定问题所在,所以将解决方案写出来以供参考。

     
有一种解决方案是把web.xml文件中的<o:p></o:p>

<listener>       <listener-class>org.springframework.web.context.ContextLoaderListenerlistener-class>
listener>
改为
   <
servlet>
       
<servlet-name>SpringContextServletservlet-name>
       
<servlet-class>
            org.springframework.web.context.ContextLoaderServlet
       
servlet-class>
       
<load-on-startup>1load-on-startup>
   
servlet><o:p></o:p>

      但这种方法可能会出现其他问题(网上又说会导致其他文件无法打开)。
    <o:p></o:p>

    我的最终解决方案如下:
     
我用的是tomcat5.5,配置了日志之后打印出下列信息:
       ERROR main org.springframework.web.context.ContextLoader - Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Instantiation of bean failed; nested exception is java.lang.NoClassDefFoundError: org/apache/commons/pool/impl/GenericObjectPool
Caused by:
java.lang.NoClassDefFoundError: org/apache/commons/pool/impl/GenericObjectPool
    at java.lang.Class.getDeclaredConstructors0(Native Method)
    at java.lang.Class.privateGetDeclaredConstructors(Class.java:2328)
    at java.lang.Class.getConstructor0(Class.java:2640)
    at java.lang.Class.getDeclaredConstructor(Class.java:1953)
    ……


     
从日志信息看问题已经很明显了,是 applicationContext.xml dataSource  
问题。

<bean class="org.apache.commons.dbcp.BasicDataSource" id="dataSource"></bean>
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<!---->
<bean class="org.apache.commons.dbcp.BasicDataSource" id="dataSource"></bean>改为
<bean class="org.springframework.jdbc.datasource.DriverManagerDataSource" id="dataSource"></bean>
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
之后问题得到解决。 <o:p></o:p>

       出现"Error listenerStart"一般是applicationContext.xml中的bean加载有问题。在用eclipsewebwork + spring + hibernate 的项目时一般都是用Myeclipse自动生成那些配置文件,而有些相关的jar或者文件并没有加载在至项目中,以至引出奇怪的问题,又因为是自动生成的东西所以往往会忽略一些文件,而问题确恰恰是这些生成的文件所致,所以自动化的东西也未必一定是正确的,呵呵……<o:p></o:p>

    org.springframework.jdbc.datasource.DriverManagerDataSource 不可以使用连接池。org.apache.commons.dbcp.BasicDataSource作为注入的DataSource源,为了使用 DBCP的功能,必须要将commons-dbcp.jar加入CLASSPATH中,另外还需要commons-pool.jarcommons- collections.jar,这些都可以在Springlib目录下找到。

org.springframework.jdbc.datasource.DriverManagerDataSource
并没有提供连接池的功能,只能作作简单的单机连接测试。
使用org.apache.commons.dbcp.BasicDataSource时缺少commons-pool.jar所以会出现如题的问题。 <o:p></o:p>

再次修正:<o:p></o:p>

    昨天又遇到此问题,解决的办法是删除无用的jar<o:p></o:p>

    工程是 springhibernatetomcat<st1:chsdate year="1899" month="12" day="30" islunardate="False" isrocdate="False" w:st="on">5.5.25</st1:chsdate>jar都是用eclipse自动加载的,很多jar明显的用不到,例如:ibatistoplink等。将无用的jar删除后问题解决。<o:p></o:p>

<o:p> </o:p>

分享到:
评论
14 楼 lmjia573839335 2011-11-08  
                   
13 楼 lmjia573839335 2011-11-08  
                    :-
12 楼 shudikoo 2008-05-21  
我也遇到了这个问题,研究了3天,最后知道是少了几个spring的包。去官网下载spring的最新包。就ok了。具体的文件配置在http://user.qzone.qq.com/3470537/blog/1211351181
11 楼 摆渡人 2008-04-07  
怪事,偶也是报这个错误,发现没加入spring.jar包,加了之后.tomcat6启动就OK了
10 楼 richardlovejob 2007-10-26  
谢谢你的提示帮助!
9 楼 danielchen19 2007-09-01  
我也曾经试过这样可以过一次,但现在又出现这种情况,原因是在web.xml 删了<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>就可以了, 正常情况是可以的,不知是什么原因,请高手解答一下。
8 楼 xj4150 2007-08-23  
danielchen19 写道
我也是将它变成这样<!--<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
-->
<servlet>
        <servlet-name>SpringContextServlet</servlet-name>
        <servlet-class>    </servlet-class>
          <load-on-startup>1</load-on-startup>
    </servlet>

但是还是出现严重: Error listenerStart
2007-8-12 8:37:30 org.apache.catalina.core.StandardContext start
严重: Context [/ConnectNote] startup failed due to previous errors, 请问是什么原因??


ybbtgvusr 写道
我也遇到了楼主说的情况,按你说的解决方法试过了。但没有用呀,还是出现Error listenerStart错误!!


先看看日志吧,看看报什么异常
7 楼 danielchen19 2007-08-12  
我也是将它变成这样<!--<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
-->
<servlet>
        <servlet-name>SpringContextServlet</servlet-name>
        <servlet-class>    </servlet-class>
          <load-on-startup>1</load-on-startup>
    </servlet>

但是还是出现严重: Error listenerStart
2007-8-12 8:37:30 org.apache.catalina.core.StandardContext start
严重: Context [/ConnectNote] startup failed due to previous errors, 请问是什么原因??
6 楼 ybbtgvusr 2007-07-05  
我也遇到了楼主说的情况,按你说的解决方法试过了。但没有用呀,还是出现Error listenerStart错误!!
5 楼 hcconquer 2007-06-15  
楼上说的很对,commons-dbcp.jar、commons-pool.jar和commons- collections.jar都加到lib就好了
我现在报sessionFactory不能创建,请问要加那几个包啊
4 楼 aimama_1314 2007-06-04  
在这里搜到你的帖`~  XJ~~

我又遇见这样的问题了``

估计是刚才applicationContext.XML 加bean的时候加错了``555

泪``继续改错``
3 楼 xj4150 2007-06-01  
使用org.apache.commons.dbcp.BasicDataSource时缺少commons-pool.jar所以会出现如题的问题。
2 楼 xj4150 2007-05-31  
org.springframework.jdbc.datasource.DriverManagerDataSource并没有提供连接池的功能,只能作作简单的单机连接测试。
1 楼 xj4150 2007-05-31  
<bean id="dataSource"class="org.springframework.jdbc.datasource.DriverManagerDataSource">不可以使用连接池。org.apache.commons.dbcp.BasicDataSource作为注入的DataSource源,为了使用DBCP的功能,必须要将commons-dbcp.jar加入CLASSPATH中,另外还需要commons-pool.jar和commons- collections.jar,这些都可以在Spring的lib目录下找到。

相关推荐

    Tomcat中--Error listenerStart错误的解决方案

    在Java Web应用开发过程中,经常遇到的一个问题是Tomcat启动时出现“Error listenerStart”这样的异常信息。本文将详细介绍这一问题的原因、可能涉及的因素以及具体的解决方法。 #### 一、问题背景 在部署Spring ...

    严重: Error listenerStart

    标题 "严重: Error listenerStart" 是一个典型的Java应用在启动时遇到的问题,通常与日志监听器或事件处理机制有关。这个问题可能出现在使用了Apache Log4j库的应用中,Log4j是一个广泛使用的日志记录框架,用于收集...

    tomcat排错经典案例之404.docx

    严重: Error listener Start 2009-11-06 21:39:17 org.apache.catalina.core.StandardContext start 严重: Context startup failed due to previous errors 2009-11-06 21:39:17 org.apache.catalina.core....

    struts2驱动包

    严重: Error listenerStart 2009-8-29 14:02:25 org.apache.catalina.core.StandardContext start 严重: Context [/OAProject] startup failed due to previous errors 2009-8-29 14:02:25 org.apache.catalina.core...

    信息: Deploying web application directory lx01

    错误进一步导致了`listenerStart`阶段的失败,这意味着应用程序的启动监听器无法正确配置。由于这个错误,Tomcat跳过了安装应用监听器的步骤,并在启动`/blog`上下文时遇到了错误。这最终导致了应用启动的失败。 ...

    log4j详细配置说明

    - **配置 web.xml**:在应用的 `web.xml` 文件中添加以下配置,以便在启动时加载 Log4j: ```xml &lt;listener&gt; &lt;listener-class&gt;com.apache.jakarta.log4j.Log4jInit&lt;/listener-class&gt; &lt;/listener&gt; ``` 其中 `...

    redis发布订阅Java代码实现过程解析

    logger.info("启动 Tomcat"); // 连接 Redis Map, String&gt; proMap = PropertyReader.getProperties(); final String url = proMap.get("redis.host"); final Integer port = Integer.parseInt(proMap.get(...

    spring-boot-reference.pdf

    10.2.6. Quick-start Spring CLI Example 10.3. Upgrading from an Earlier Version of Spring Boot 11. Developing Your First Spring Boot Application 11.1. Creating the POM 11.2. Adding Classpath ...

Global site tag (gtag.js) - Google Analytics