1

我有一个jsp页面

<%@page import="org.springframework.web.servlet.ModelAndView"%>
  <%@page import="mvc3.helpers.Utils"%>
  <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
  <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
  <%@ page session="false" %>
  <html>
  <head>
      <title>View Topic</title>
  </head>
  <body>

  <fieldset>
       <legend>${topic.getName()}</legend>
       <div class="display-label-field"><b>Content:</b>${topic.getText()}</div>
       <div class="display-label-field"><b>Comments count:</b>${topic.getCommentsCount()}</div>
       <div class="display-label-field"><b>Last time updated:</b>${topic.getTimeLastUpdated()}</div>

  </fieldset>

  <p>
    <%=Utils.actionLink("Comment Topic", "Topic", "AddComment", Integer.toString( topic.getId() ) ) %>
    <%=Utils.actionLink("Back to Topic List", "", "home", null)%>
  </p>

问题是,${topic.getName()}工作正常,但是<%=Utils.actionLink("Comment Topic", "Topic", "AddComment", Integer.toString( topic.getId() ) ) %>导致主题无法解析错误。我该如何处理这个问题?

4

3 回答 3

1

如果您在请求中设置了属性主题,则执行

Integer.toString( ((Topic)request.getAttribute("topic")).getId())
于 2012-08-01T20:07:21.403 回答
0

我们不应该用 EL 访问 getId 吗?像下面这样的东西?

Integer.toString( ${topic.getId()})
于 2012-08-01T20:07:44.423 回答
0

"topic"尚未为您的视图模型设置变量。在您的控制器中,您将需要以下内容:

myModelData.put("topic", topicId);
于 2012-08-01T20:14:32.870 回答