2010-12-22 62 views
0
<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:p="http://www.springframework.org/schema/p" 
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> 

    <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="/WEB-INF/jsp/" p:suffix=".jsp" /> 

    <bean id="myDataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> 
     <property name="driverClassName" value="com.mysql.jdbc.Driver"/> 
     <property name="url" value="jdbc:mysql://127.0.0.1:3306/spring"/> 
     <property name="username" value="monty"/> 
     <property name="password" value="indian"/> 
    </bean> 

    <bean id="mySessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"> 
     <property name="dataSource" ref="myDataSource" /> 
     <property name="annotatedClasses"> 
      <list> 
       <value>uk.co.vinoth.spring.domain.User</value> 
      </list> 
     </property> 
     <property name="hibernateProperties"> 
      <props> 
       <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop> 
       <prop key="hibernate.show_sql">true</prop> 
       <prop key="hibernate.hbm2ddl.auto">create</prop> 
      </props> 
     </property> 
    </bean> 

    <bean id="myUserDAO" class="uk.co.vinoth.spring.dao.UserDAOImpl"> 
     <property name="sessionFactory" ref="mySessionFactory"/> 
    </bean> 

    <bean name="/user/*.htm" class="uk.co.vinoth.spring.web.UserController" > 
     <property name="userDAO" ref="myUserDAO" /> 
    </bean> 

</beans> 

上面是我的bean配置,为什么我在运行我的应用程序时出现错误。我的日志文件夹为空...Servlet调度程序当前不可用

[email protected] 
org.springframework.web.servlet.DispatcherServlet 
java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet 
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1436) 
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1282) 
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1068) 
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:966) 
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3996) 
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4266) 
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014) 
    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(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295) 
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433) 
Dec 22, 2010 3:44:48 PM org.apache.catalina.core.StandardContext loadOnStartup 
SEVERE: Servlet /interMedix threw load() exception 
java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet 
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1436) 
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1282) 
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1068) 
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:966) 
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3996) 
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4266) 
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014) 
    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(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295) 
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433) 
Dec 22, 2010 3:44:48 PM org.apache.coyote.http11.Http11BaseProtocol start 
INFO: Starting Coyote HTTP/1.1 on http-8181 
Dec 22, 2010 3:44:48 PM org.apache.jk.common.ChannelSocket init 
INFO: JK: ajp13 listening on /0.0.0.0:8009 
Dec 22, 2010 3:44:48 PM org.apache.jk.server.JkMain start 
INFO: Jk running ID=0 time=0/27 config=null 
Dec 22, 2010 3:44:48 PM org.apache.catalina.storeconfig.StoreLoader load 
INFO: Find registry server-registry.xml at classpath resource 
Dec 22, 2010 3:44:49 PM org.apache.catalina.startup.Catalina start 
INFO: Server startup in 558 ms 
Dec 22, 2010 3:44:50 PM org.apache.catalina.core.StandardWrapperValve invoke 
INFO: Servlet dispatcher is currently unavailable 
Dec 22, 2010 3:50:18 PM org.apache.catalina.core.StandardWrapperValve invoke 
INFO: Servlet dispatcher is currently unavailable 

但我已经加入春季的Web-MVC到不包含此类文件的类路径中。

+0

请发布导致问题的代码,以便我们可以查找并发现错误(如果有) – mvg 2010-12-22 10:15:07

+0

请检查服务器日志,在您的$ TOMCAT_HOME/logs目录中。通常你可以看到catalina.out,localhost - *。out中发生的事情。您是否将tomcat连接器jar添加到您的项目中? – ivy 2010-12-22 10:19:26

回答

4

但我已经加入春季的Web-MVC到包含此 类文件我 类路径。

你是怎么给你的CLASSPATH添加东西的?

如果您要创建一个Web应用程序,唯一适合的方法是将.class文件放在WEB-INF/classes下的WEB-INF/classes和.jar文件下。如果你做了其他任何事情,我会说这是错误的。不应该修改启动脚本;本地环境变量将被忽略,并且不太可能在您部署到的服务器上设置。

UPDATE:

如果你告诉我,你所做的一切权利,根据您的IDE,我建议最后一个检查:先看压缩或展开WAR文件,您实际部署到Tomcat,使确保您可以看到错误提及的.class文件的JAR。如果它不是WAR的一部分,你必须弄清楚你的包装出了什么问题。如果您认为JAR在那里,请打开它并找到.class并检查路径。

你必须相信你看到的错误信息。不要说“我一切正常”,最好是说“我错过了什么?”

3

A ClassNotFoundException建议你不要在classpath上有Spring。确保它位于WAR的lib目录中。

此外,请确保您的类路径中也有commons-logging.jar。春天取决于此。