【问题标题】:JSTL Items not getting displayedJSTL 项目未显示
【发布时间】:2016-12-27 12:16:17
【问题描述】:

有一个关于 JSTL 标签的非常简单的问题。 我正在使用 spring 从后端获取数据并显示在 JSP 中。

有以下代码。我正在控制台中打印每个标签的项目。但是相同的项目不会在表格行中打印/显示。

<table id="table_id" class="display">
<thead> 
    <tr>
        <th>Movie Name</th>
        <th>Movie Rating</th>
    </tr>
</thead>
<tbody>
    <c:forEach items="${model.movieslist}" var="movie">
    <tr>
        <td>${movie.name}</td>
        <td>${movie.rating}</td>
    </tr>

    </c:forEach>
</tbody>

我的弹簧控制器类

public ModelAndView handleRequest(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception {
    // TODO Auto-generated method stub
    logger.info("returning hello view");
    List<Movie> moviesList = DbManager.getInstance().getMovies();
    ModelMap modelMap = new ModelMap();
    modelMap.addAttribute("movieslist", moviesList);
    return new ModelAndView("hello.jsp",modelMap);
}

电影领域类

 package springapp.domain;

import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document;
@Document(collection = "movie")
public class Movie {

    @Id
    public String _id;

    public String name;
    public String getId() {
        return _id;
    }

    public void setId(String _id) {
        this._id = _id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public float getRating() {
        return rating;
    }

    public void setRating(float rating) {
        this.rating = rating;
    }

    public String getDate() {
        return date;
    }

    public void setDate(String date) {
        this.date = date;
    }

    public float rating;
    public String date;

    @Override
    public String toString() {
        // TODO Auto-generated method stub
        return name;
    }

}

【问题讨论】:

  • 您是否将对象添加到模型属性中。如果添加,请尝试调试该值是否通过。检查名称是否相似。即模型属性中使用的名称和jsp中的名称
  • @ManojRamanan 感谢您的回复...添加了我的弹簧控制器和域对象的代码
  • 你可以尝试单独使用movielist而不是model.movi​​elist尝试单独使用movielist

标签: spring spring-mvc jstl


【解决方案1】:

首先,你的jsp应该包含以下taglib

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

第二,不用${model.movi​​esList}获取,修改如下:

<c:forEach items="${movieslist}" var="movie">

【讨论】:

  • 非常感谢...这两个都是我的问题的原因...现在解决了
猜你喜欢
  • 2020-04-22
  • 1970-01-01
  • 2021-12-20
  • 2010-11-24
  • 1970-01-01
  • 1970-01-01
  • 2012-05-29
  • 1970-01-01
相关资源
最近更新 更多