2016-01-10 72 views
1

我們得到了2頁絕對簡單的應用程序。java spring bean registration

代碼:

<%@ page contentType="text/html;charset=UTF-8" language="java" %> 
<html> 
<head> 
    <title>page2</title> 
</head> 
<body> 
page2 
<a href="page1url">page1</a> 
</body> 
</html> 

控制器代碼:

package controller; 

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

@Controller 
public class MainController { 

    @RequestMapping(value ="/page1url") 
    public String page1() { 
     return "page1"; 
    } 

    @RequestMapping(value = "/page2url") 
    public String page2() { 
     return "page2"; 
    } 
} 

要使它發揮作用,我們需要註冊控制器。 方法1.經典工作正常。代碼:

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.1.xsd"> 

    <bean class="controller.MainController"/> 

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

</beans> 

方式2.使用Spring上下文 代碼:

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

    <context:component-scan base-package="*"/> 

    <!--<bean class="controller.MainController"/>--> 

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

</beans> 

路2不工作。

的web.xml是簡單和基本的代碼

問: 爲什麼春天上下文變種不工作,如何解決呢?

P.S.道歉了大量的代碼

+2

哪你有錯誤嗎? – Abdelhak

+0

HTTP狀態500 - Servlet.init()進行的servlet DispatcherServlet的拋出異常 類型異常報告 消息Servlet.init()進行的servlet DispatcherServlet的拋出異常 描述服務器遇到阻止其完成此請求一個內部錯誤。 – WladZ

回答

0

嘗試在你的Spring-context文件中添加這些行是這樣的:

<mvc:annotation-driven />   
<context:component-scan base-package="controller"/> 

刪除base-package="*"

+0

不知道。我按了+ – WladZ

1

添加此行到Spring上下文:

<mvc:annotation-driven /> 
+0

不起作用。在這裏完整的代碼[鏈接](https://github.com/WalterP/Spring2pagesSimple/blob/master/src/main/webapp/WEB-INF/dispatcher-servlet.xml) – WladZ

+0

@WladZ哦,它似乎是單一的通配符'*')不起作用。怎麼樣:''。我不確定是否... – sndyuk

+0

我加 和chenged to 它工作。 謝謝全部 – WladZ