struts+hibernate的问题??
刚照着书上完成了小项目struts+hibernate,一个网络商城。完成后一部署,结果myeclipse里的tomcat要等上5-10分钟才能开启,开启的同时显示的错误如下:
信息: Initialization processed in 1406 ms
2009-3-4 21:48:23 org.apache.catalina.core.StandardService start
信息: Starting service Catalina
2009-3-4 21:48:23 org.apache.catalina.core.StandardEngine start
信息: Starting Servlet Engine: Apache Tomcat/5.5.26
2009-3-4 21:48:23 org.apache.catalina.core.StandardHost start
信息: XML validation disabled
2009-3-4 21:48:25 org.apache.catalina.core.ApplicationContext log
信息: org.apache.webapp.balancer.BalancerFilter: init(): ruleChain: [org.apache.webapp.balancer.RuleChain: [org.apache.webapp.balancer.rules.URLStringMatchRule: Target string: News / Redirect URL: http://www.cnn.com], [org.apache.webapp.balancer.rules.RequestParameterRule: Target param name: paramName / Target param value: paramValue / Redirect URL: http://www.yahoo.com], [org.apache.webapp.balancer.rules.AcceptEverythingRule: Redirect URL: http://jakarta.apache.org]]
2009-3-4 21:48:32 org.apache.catalina.core.ApplicationContext log
信息: ContextListener: contextInitialized()
2009-3-4 21:48:32 org.apache.catalina.core.ApplicationContext log
信息: SessionListener: contextInitialized()
log4j:ERROR Could not instantiate class [org.apche.log4j.RollingFileAppender].
java.lang.ClassNotFoundException: org.apche.log4j.RollingFileAppender
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1363)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1209)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:164)
at org.apache.log4j.helpers.Loader.loadClass(Loader.java:160)
at org.apache.log4j.helpers.OptionConverter.instantiateByClassName(OptionConverter.java:309)
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:448)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:700)
at org.apache.catalina.startup.Catalina.start(Catalina.java:552)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)
log4j:ERROR Could not instantiate appender named "file".
2009-3-4 21:54:42 org.apache.catalina.startup.HostConfig deployDirectory
严重: Error deploying web application directory netshop
java.lang.NoSuchMethodError: org.apache.log4j.Category.log(Ljava/lang/String;Lorg/apache/log4j/Level;Ljava/lang/Object;Ljava/lang/Throwable;)V
at org.apache.commons.logging.impl.Log4JCategoryLog.error(Log4JCategoryLog.java:149)
at org.apache.catalina.core.ApplicationContext.log(ApplicationContext.java:676)
at org.apache.catalina.core.ApplicationContextFacade.log(ApplicationContextFacade.java:270)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1175)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:966)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3956)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4230)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:760)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:740)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:544)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:926)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:889)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1022)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:736)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:448)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:700)
at org.apache.catalina.startup.Catalina.start(Catalina.java:552)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)
2009-3-4 21:54:43 org.apache.catalina.core.ApplicationContext log
信息: ContextListener: contextInitialized()
2009-3-4 21:54:43 org.apache.catalina.core.ApplicationContext log
信息: SessionListener: contextInitialized()
2009-3-4 21:54:43 org.apache.coyote.http11.Http11BaseProtocol start
信息: Starting Coyote HTTP/1.1 on http-8088
2009-3-4 21:54:44 org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:8009
2009-3-4 21:54:44 org.apache.jk.server.JkMain start
信息: Jk running ID=0 time=0/94 config=null
2009-3-4 21:54:44 org.apache.catalina.storeconfig.StoreLoader load
信息: Find registry server-registry.xml at classpath resource
2009-3-4 21:54:44 org.apache.catalina.startup.Catalina start
信息: Server startup in 381641 ms
征对以上错误信息,小弟有些疑问,请热心人多多帮助!
1、请问为什么要这么久呢?我昨天重装了次tomcat,结果启动还是要这么久?
2、我的项目名是netshop,在WebRoot下面有个很简单的index.jsp,可输入http://localhost:8088/netshop/index.jsp居然显示404错误,不管出了什么问题这个jsp页面应该可以访问的呀,为什么连这个index.jsp都不能访问呢?以前完成了一个小项目,项目名为demo,在WebRoot下面有个login.jsp,同理输入http://localhost:8088/demo/login.jsp后,是能够访问页面的。
3、我用的是hibernate自带的连接池,在hibernate.cfg.xml的部分配置如下:
<session-factory>
<property name="connection.username">root</property>
<property name="connection.url">jdbc:mysql://localhost:3306/netshop</property>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="myeclipse.connection.profile">MySQL</property>
<property name="connection.password">admin</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<!--是否在后台显示数据库操作语句-->
<property name="show_sql">true</property>
tomcat开启要这么久,会不会是用了hibernate自带的连接池,而没用tomcat的连接池呢?
4、在myeclipse中,我只打开了netshop这项目,其他项目都暂时关闭了,加载tomcat时显示的错误信息会不会报出是已经关闭项目里面的错误信息呢?
5、错误信息已经显示出来了,要想正确运行这个项目,应该从哪几个方面入手解决呢?现在我逻辑混乱,老眼昏花,万不得已,才发帖麻烦大家,诚心期待各位学长的指教。
[解决办法]
首先看看你的项目加到Tomcat下没有(只是一个小问题,看不出大的问题)
然后重新换一个log4j文件试试,记住加个jar包 再试试
[解决办法]
缺少log4j jar包
[解决办法]
在你的项目里面配置了jdk和tomcat了吗,
然后就是重新部署你的项目到tomcat下面。
右击项目->myeclipse->add and remove project depolyment 进行重新部署。
[解决办法]
感觉你的log4j的版本有冲突,看看log4j的包,如果有重复就只留一个版本的