2013-05-08 96 views
0

嗨我是Spring的新手,我试图做一个简单的spring mvc应用程序,它接受来自客户表单的值并在UI中显示相同的值。现在的问题是,当我尝试发布在JBoss服务器的代码我收到以下错误消息:在春季类路径扫描期间发生I/O故障MVC

14:40:31,555 ERROR [ContextLoader] Context initialization failed 
org.springframework.beans.factory.BeanDefinitionStoreException: I/O failure during classpath scanning; nested exception is java.io.FileNotFoundException: D:\jboss-5.1.0.GA\server\default\deploy\SpringMVC.war\WEB-INF\classes\com\spring\customer\controller (The system cannot find the path specified) 
at org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider.findCandidateComponents(ClassPathScanningCandidateComponentProvider.java:222) 
at org.springframework.context.annotation.ClassPathBeanDefinitionScanner.doScan(ClassPathBeanDefinitionScanner.java:201) 
at org.springframework.context.annotation.ComponentScanBeanDefinitionParser.parse(ComponentScanBeanDefinitionParser.java:84) 
at org.springframework.beans.factory.xml.NamespaceHandlerSupport.parse(NamespaceHandlerSupport.java:69) 

这里是我的web.xml:

<web-app 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns="http://java.sun.com/xml/ns/javaee" 
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
id="WebApp_ID" version="2.5"> 
<display-name>SpringMVC</display-name> 
<servlet> 
    <servlet-name>mvc-dispatcher</servlet-name> 
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
    <load-on-startup>1</load-on-startup> 
</servlet> 

<servlet-mapping> 
    <servlet-name>mvc-dispatcher</servlet-name> 
    <url-pattern>*.htm</url-pattern> 
</servlet-mapping> 

<context-param> 
<param-name>contextConfigLocation</param-name> 
<param-value>/WEB-INF/mvc-dispatcher-servlet.xml</param-value> 
</context-param> 

<listener> 
    <listener-class> 
    org.springframework.web.context.ContextLoaderListener 
    </listener-class> 
</listener> 

<error-page> 
<error-code>404</error-code> 
<location>/WEB-INF/pages/404.jsp</location> 
</error-page> 

<error-page> 
<exception-type>java.lang.Exception</exception-type> 
<location>/WEB-INF/pages/404.jsp</location> 
</error-page> 
</web-app> 

和调度servlet代码是如下:

<beans xmlns="http://www.springframework.org/schema/beans" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:context="http://www.springframework.org/schema/context" 
xsi:schemaLocation="http://www.springframework.org/schema/beans 
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd 
http://www.springframework.org/schema/context 
http://www.springframework.org/schema/context/spring-context-2.5.xsd"> 

<context:component-scan base-package="com.spring.customer.controller" /> 

<bean class="com.spring.customer.validator.CustomerValidator" /> 

<!-- Register the Customer.properties --> 
<bean id="messageSource" 
    class="org.springframework.context.support.ResourceBundleMessageSource"> 
    <property name="basename" value="com/spring/customer/properties/Customer" /> 
</bean> 
    <bean id="viewResolver" 
     class="org.springframework.web.servlet.view.InternalResourceViewResolver" > 
     <property name="prefix"> 
      <value>/WEB-INF/pages/</value> 
     </property> 
     <property name="suffix"> 
     <value>.jsp</value> 
     </property> 
</bean> 

我试着在谷歌搜索也没有找到什么错误。近两个小时我一直在为这个问题而头痛。有人帮忙!

P.S:我正在使用maven。

在此先感谢

+0

弹簧试图找到com.spring.customer.controller封装控制器。这个包是否正确? – 2013-05-08 13:09:15

+0

@DeividiCavarzan正如我所说我正在使用maven,并且CustomerController.class文件位于名为“target”的文件夹内的“web-inf/classes/com/spring/customer/controller”位置。 – Venu 2013-05-08 17:12:45

回答

0

有:

<context:component-scan base-package="com.spring.customer.controller" />

,似乎你没有你的程序有这样的包,但春天正在寻找这个包(这样的目录)找到组件。

请确认双星你有这样的包(或者也许你没有这个包呢?)