2010-11-22 25 views
4

私は現在、spring mvcでいくつかのテストを行っています。基本的なアプリケーションをテストするには、このチュートリアルを選択してください。 http://loianegroner.com/2010/09/extjs-spring-mvc-3-and-hibernate-3-5-crud-datagrid-example/ 私はこのサンプルをダウンロードしましたが、すべて正常に動作します。問題は別のコントローラを追加しようとするときです。追加しているファイルはスキャンされていないようです。 Spring MVCコントローラのマッピングが登録されていません

私のweb.xmlファイル:

<servlet> 
    <servlet-name>extjs-crud-grid-spring-hibernate</servlet-name> 
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
    <init-param> 
     <param-name>contextConfigLocation</param-name> 
     <param-value> 
      /WEB-INF/spring/app-config.xml 
     </param-value> 
    </init-param> 
    <load-on-startup>1</load-on-startup> 
</servlet> 

<servlet-mapping> 
    <servlet-name>extjs-crud-grid-spring-hibernate</servlet-name> 
    <url-pattern>*.action</url-pattern> 
</servlet-mapping> 

/WEB-INF/spring/app-config.xml:あなたが見ることができるよう

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

<!-- Scans the classpath of this application for @Components to deploy as beans --> 
<context:component-scan base-package="com.loiane" /> 

<!-- Configures the @Controller programming model --> 
<mvc:annotation-driven /> 

<!-- misc --> 
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
    <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/> 
    <property name="suffix" value=".jsp"/> 
</bean> 

<!-- Configures Hibernate - Database Config --> 
<import resource="db-config.xml" /> 

はコンテキストがあります:コンポーネント-scanとmvc:@Controllerアノテーション用のcom.lioneパッケージ内のすべてのクラスをスキャンするようにspringに指示するアノテーション駆動型タグ。しかし、私は自分のコントローラをこのアプリケーションに追加しようとすると、処理されていないようです。最初のコントローラのみがマップされます。ここで

は私が

INFO: Mapped URL path [/contact/delete.action] onto handler 'contactController' 
INFO: Mapped URL path [/contact/create.action] onto handler 'contactController' 
INFO: Mapped URL path [/contact/update.action] onto handler 'contactController' 
INFO: Mapped URL path [/contact/view.action] onto handler 'contactController' 

んだけど/helloWorld.actionは、事前

感謝が欠落しているEclipseのコンソールログにこれを実行した後、私のコントローラのコード

package com.loiane.web; 


import org.springframework.stereotype.Controller; 
import org.springframework.web.bind.annotation.RequestMapping; 
import org.springframework.web.servlet.ModelAndView; 


@Controller 
public class HelloController { 

    @RequestMapping("/helloWorld.action") 
    public ModelAndView helloWorld() { 
     ModelAndView mav = new ModelAndView(); 
     mav.setViewName("helloWorld"); 
     mav.addObject("message", "Hello World!"); 
     return mav; 
    } 
} 

です

+0

すべてうまく見えます。おそらく何らかの理由でコントローラがあなたが走っているWebアプリケーションに追加されていないことが考えられます。 – axtavt

+0

どういうわけか私はそれをマップしました。私は問題がどこにあったのかわからないが、新しいプロジェクトを作成してからすべてのファイルを再度インポートした後、作業を​​開始する。 – Ivan

+3

あなたは誤って他の人がそれにつまずくのを防ぐためにこの質問を閉じることができます –

答えて

3

場合によっては、を使用しているときにあなたのパスに特化することをお勧めします する必要があります<context:component-scan base-package="com.loiane.web" />

関連する問題