2016-05-12 30 views
0

我是Spring MVC中的新成員,並嘗試進行練習,如示例中所示。我有index.jsp和view.jsp。 Index.jsp加載得很好,但是當我嘗試加載view.jsp時,它會限制空字段和記錄器不會給我任何錯誤。我使用IntellijIDEA。在所有課程和文件下面,讓我知道,如果我必須提供其他信息。謝謝。無法使用Spring MVC加載view.jsp

的web.xml

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee 
    http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" 
    version="3.1"> 

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

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

<servlet> 
    <servlet-name>dispatcher</servlet-name> 
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
    <load-on-startup>1</load-on-startup> 
</servlet> 

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

調度-servlet.xml中

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

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

<bean id="vievResolver" class ="org.springframework.web.servlet.view.UrlBasedViewResolver"> 
    <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/> 
    <property name="prefix" value="/WEB-INF/"/> 
    <property name="suffix" value=".jsp"/> 
</bean> 

<bean id="HttpGatewayInit" class ="controllers.HttpGatewayInit"> 
</bean> 

<bean name="shape" class="shapes.Rectangle"> 
    <constructor-arg index="0" value ="12" /> 
    <constructor-arg index="1" value ="2" /> 
</bean> 

<bean name="circle" class="shapes.Circle"> 
    <constructor-arg index="0" value ="8" /> 
</bean> 

<bean name="rectanglepoint" class="shapes.RectanglePoint"> 
    <constructor-arg index="0" ref ="leftend" /> 
    <constructor-arg index="1" ref ="rightend" /> 
</bean> 

<bean name="leftend" class="shapes.Point"> 
    <constructor-arg index="0" value ="4" /> 
    <constructor-arg index="1" value ="3" /> 
</bean> 

<bean name="rightend" class="shapes.Point"> 
    <property name="x" value ="12" /> 
    <property name="y" value ="8" /> 
</bean> 

控制器(的System.out.println(shape.square())示出了我,該映射確實有效)

package controllers; 

import org.springframework.asm.Attribute; 
import org.springframework.beans.factory.annotation.Autowired; 
import org.springframework.beans.factory.annotation.Qualifier; 
import org.springframework.stereotype.Controller; 
import org.springframework.web.WebApplicationInitializer; 
import org.springframework.web.bind.annotation.RequestMapping; 
import org.springframework.web.bind.annotation.RequestMethod; 
import org.springframework.web.portlet.ModelAndView; 
import shapes.Shape; 

import javax.servlet.ServletContext; 
import javax.servlet.ServletException; 


@Controller 
public class MainController { 

@Autowired 
@Qualifier("shape") 
private Shape shape; 

public MainController(){ 
} 

@RequestMapping (value="/shape.form",method = RequestMethod.GET) 
public ModelAndView main(){ 
    /*class HttpGatewayInit implements WebApplicationInitializer { 
     @Override 
     public void onStartup(ServletContext servletContext) throws ServletException { 

     } 
    }*/ 

    ModelAndView modelAndView = new ModelAndView(); 
    modelAndView.setViewName("view"); 
    modelAndView.addObject("message", shape.square()); 
    System.out.println(shape.square()); 


    return modelAndView; 

} 
} 

的index.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %> 
<html> 
<head> 
    <title>$Title$</title> 
</head> 
<body> 
    <a href = "shape.form">Next page</a> 
</body> 
</html> 

view.jsp的

<%@ page contentType="text/html;charset=UTF-8" language="java" %> 
<html> 
<head> 
    <title>View</title> 
</head> 
<body> 
    <span>${message}</span> 
</body> 
</html> 
+0

你的意思是在這裏我猜? $ {message}。將其更改爲 $ {message}

$ {message}

Aditya

回答

0

請檢查進口

import org.springframework.web.portlet.ModelAndView; 

我試圖將其更改爲import org.springframework.web.servlet.ModelAndView; ,它爲我工作。

+0

男人,你是我最棒的!它也適用於我。 IDE建議我爲導入2個變體,並且我機械地選擇了不正確的。 – ISilchev

+0

這是我在stackoverflow上的第一篇文章,我不知道如何標記,這是wright的回答,並提高你的聲譽)網站告訴我,我必須有15的投票聲望。 – ISilchev

相關問題