我有以下控制器:
@Controller
public class HomeController {
@Resource(name="returnGraph")
Graph returnGraph;
@RequestMapping("/")
public String goToHomePage(HttpSession session){
session.setAttribute("sm", returnGraph.getVertexes());
return "home";
}
}
以下web.xml:
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
<display-name>Archetype Created Web Application</display-name>
<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>/</url-pattern>
</servlet-mapping>
</web-app>
在我输入的jsp中:
${sm}
我在服务器上运行时的输出只是:
${sm}
在网页上。
这是home.jsp页面。
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="s" uri="http://www.springframework.org/tags" %>
<%@ taglib prefix="sf" uri="http://www.springframework.org/tags/form" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
${sm}
</body>
</html>
缺少什么?
答案 0 :(得分:1)
session
声明JSP
中没有<%! %>
。所以,你可以按照以下方式使用。
<input type="text" value="<%= session.getAttribute("sm") %>" />
对于表达式语言(EL),您可以
<input type="text" value="${sm}" />
答案 1 :(得分:0)
以下内容需要添加到home.jsp:
<%@ page isELIgnored="false" %>
SkyWalker在答案中提供了一个很好的暗示。