2016-03-29 51 views
0

我想從我的數據庫打印聯繫人列表,但是我的jsp視圖無法打印它。JSP不能從彈簧控制器打印列表

this is contact view

這是控制器

@RequestMapping(value="contact") 
public ModelAndView listContact(ModelAndView model) throws IOException{ 
    List<contactModel> listContact = contactDAO.listContact(); 
    model.addObject("listContact", listContact); 
    model.setViewName("contact"); 
    for(contactModel contact : listContact){ 
     System.out.println(contact.getCid()+", "+contact.getUid()+", "+contact.getName()); 
    } 
    return model; 
} 

這是視圖代碼

<%@page contentType="text/html" pageEncoding="UTF-8"%> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
    "http://www.w3.org/TR/html4/loose.dtd"> 
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
     <title>Contact Manager Home</title> 
    </head> 
    <body> 
     <div align="center"> 
      <h1>Contact List</h1> 
      <h3><a href="newContact">New Contact</a></h3> 
      <table border="1"> 
       <th>No</th> 
       <th>Name</th> 
       <th>Email</th> 
       <th>Address</th> 
       <th>Telephone</th> 
       <th>Action</th> 

       <c:forEach var="contact" items="${ListContact}" varStatus="status"> 
       <tr> 
        <td>${status.index + 1}</td> 
        <td>${contact.name}</td> 
        <td>${contact.email}</td> 
        <td>${contact.address}</td> 
        <td>${contact.phone}</td> 
        <td> 
         <a href="editContact?id=${contact.id}">Edit</a> 
         &nbsp;&nbsp;&nbsp;&nbsp; 
         <a href="deleteContact?id=${contact.id}">Delete</a> 
        </td>   
       </tr> 
       </c:forEach>     
      </table> 
     </div> 
    </body> 
</html> 

的web.xml

<?xml version="1.0" encoding="UTF-8"?> 
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> 
    <display-name>Reminder and Address Book</display-name> 
    <context-param> 
     <param-name>contextClass</param-name> 
     <param-value> 
      org.springframework.web.context.support.AnnotationConfigWebApplicationContext 
     </param-value> 
    </context-param> 
    <listener> 
     <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
    </listener> 

    <servlet> 
     <servlet-name>SpringDispatcher</servlet-name> 
     <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
     <init-param> 
      <param-name>contextClass</param-name> 
      <param-value> 
       org.springframework.web.context.support.AnnotationConfigWebApplicationContext 
      </param-value> 
     </init-param> 
     <init-param> 
      <param-name>contextConfigLocation</param-name> 
      <param-value>com.hbj.raddb.config</param-value> 
     </init-param> 
     <load-on-startup>1</load-on-startup> 
    </servlet> 
    <servlet-mapping> 
     <servlet-name>SpringDispatcher</servlet-name> 
     <url-pattern>/</url-pattern> 
    </servlet-mapping> 
</web-app> 

接觸值只是可以打印在控制檯中,但不能打印到jsp視圖。我的錯誤在哪裏?有人可以幫我解決問題嗎?

+0

首先,您有一個錯字'ListContact'不是您添加到模型中的'listContact'。另外,當EL沒有被解析時,你的web.xml中可能會有一行表明它是2.3版本而不是新版本。 –

+0

我已經改變了我的錯字和web xml。仍然有價值像我的截圖 – faridrakh

+0

添加您的web.xml –

回答

2

你有一個錯字,變化:

<c:forEach var="contact" items="${ListContact}" varStatus="status"> 

到:

<c:forEach var="contact" items="${listContact}" varStatus="status"> 
+0

春季mvc jdbc仍然不打印查看 – faridrakh

0

你將不得不圍繞這些變量與<c:out>。例如:

<td><c:out value="${status.index + 1} /></td> 
+0

沒有任何變化。仍然像我的截圖一樣 – faridrakh