2012-05-31 7 views
7

私はSpringで新しく、簡単なチュートリアルから始めます。私は、JSPの簡単な定義とコントローラ、そしてXML文書にマッピングされ、それを実行しますが、唯一の私はのこぎりを持っていることは、私はのcontrolerに合格した値をせずに私のWEVページです:Spring:単純なコントローラを呼び出す方法は?

@Controller 
public class HomeController { 

@Autowired 
private ExampleService exampleService; 

@RequestMapping(value = "/", method = RequestMethod.GET) 
public String home(Model model) { 
    model.addAttribute("serverTime", exampleService.getSystemTime()); 
    model.addAttribute("appVersion", exampleService.getAppVersion()); 
    return "home"; 
} 
} 

@Component 
public class ExampleService { 

@Value("#{appProperties.appVersion}") 
private String appVersion; 

/** 
* Returns formatted system time. 
* 
* @return 
*/ 
public String getSystemTime() { 
DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG); 
return dateFormat.format(new Date()); 
} 

public String getAppVersion() { 
return appVersion; 
} 
} 

<?xml version="1.0" encoding="UTF-8"?> 
<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>Spring</display-name> 

<context-param> 
    <param-name>contextConfigLocation</param-name> 
    <param-value>/WEB-INF/spring-config.xml</param-value> 
<!--  <param-value>/WEB-INF/jdbc-config.xml</param-value> --> 
</context-param> 

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

<servlet> 
    <servlet-name>appServlet</servlet-name> 
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
    <init-param> 
     <param-name>contextConfigLocation</param-name> 
     <param-value>/WEB-INF/servlet-context.xml</param-value> 
    </init-param> 
    <load-on-startup>1</load-on-startup> 
</servlet> 

<servlet-mapping> 
    <servlet-name>appServlet</servlet-name> 
    <url-pattern>/</url-pattern> 
</servlet-mapping> 

<?xml version="1.0" encoding="UTF-8"?> 
<beans:beans xmlns="http://www.springframework.org/schema/mvc" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:beans="http://www.springframework.org/schema/beans" 
xmlns:util="http://www.springframework.org/schema/util" 
xmlns:context="http://www.springframework.org/schema/context" 
xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd 
    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"> 

<annotation-driven /> 

<resources mapping="/resources/**" location="/resources/" /> 

<beans:bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
    <beans:property name="prefix" value="/views/" /> 
    <beans:property name="suffix" value=".jsp" /> 
</beans:bean> 

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

enter image description here

<?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:util="http://www.springframework.org/schema/util" 
xsi:schemaLocation="http://www.springframework.org/schema/beans 
    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 
    http://www.springframework.org/schema/util 
    http://www.springframework.org/schema/util/spring-util-3.0.xsd"> 

<!-- Root Context: defines shared resources visible to all other web components --> 

<util:properties id="appProperties" location="properties.properties"/> 

私はいくつかのチュートリアルを学び、自分の仕事に関連する公式文書のWebパーツを読んだことがありますが、私のコードではどこに問題があるのか​​まだ分かりません。

私はそれに固執しています。アイデアがあれば教えてください。ありがとう。

+0

あなたはpetclinicアプリケーション(http://static.springsource.org/docsを見たことがあり/petclinic.html)?多分それがあなたを助けるだろう。 – Christian

+0

jspページも見てください。 – NimChimpsky

+0

エラーがあればコンソールに表示できますか?あなたのjspが私にとってうまく見えます。エラーは私たちにいくつかのヒントを与えるかもしれない – dharam

答えて

1

私にとってはうまく動作します。同じコード。あなたもjspを投稿してください。

私は以下のjspを持っています: jspが似ているかどうかお知らせください。

<head> 
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
<title>Insert title here</title> 
</head> 
<body> 
${serverTime} 
</body> 
</html> 

EDIT:web.xmlのからすべてのものを削除し、以下を置く:

<context-param> 
<param-name>contextConfigLocation</param-name> 
<param-value>/WEB-INF/appServlet-servlet.xml</param-value> 
</context-param> 
<listener> 
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
</listener> 
<servlet> 
<servlet-name>appServlet</servlet-name> 
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
</servlet> 

<servlet-mapping> 
<servlet-name>appServlet</servlet-name> 
<url-pattern>*.do</url-pattern> 
</servlet-mapping> 
+0

同様に見えますが、jspの先頭にいくつかのコードもあります。しかしあなたのコードもうまくいきませんでした –

+0

spring-config.xmlファイルの内容は何ですか? EDITのxmlを試してください – dharam

+0

それは動作しません、結果は変更されません。 –

関連する問題