0

我有这段小代码

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt" %>
<!DOCTYPE html>
<html>
<head>
    <title><%= request.getAttribute("index_title") %></title>
</head>
<body>
<c:out value="${request['index_title']}" />
</body>
</html>

表达式<%= request.getAttribute("index_title") %>被正确替换,但<c:out value="${request['index_title']}" />不是。我也尝试过${request['index_title']}${index_title}但没有人工作。

那是我的第一个jsp,所以我真的认为这一定是一个微不足道的错误,但我无法理解错误在哪里。

附加问题:

在我的 servlet 中request.setAttribute ("index_title", "page title");。问题是否与我添加到请求中的不是 bean 的事实有关?

4

3 回答 3

0

将代码更改为

<c:out value="${requestScope.index_title}"/> 
于 2012-08-24T08:51:36.563 回答
0

只需使用

<c:out value="${index_title}"/>
于 2012-08-24T08:54:34.157 回答
0

您可以只使用表达式语言,而不使用 jstl 库。

直接在 html 中使用${index_title}(或者${requestScope.index_title},不确定):

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt" %>
<!DOCTYPE html>
<html>
<head>
    <title><%= request.getAttribute("index_title") %></title>
</head>
<body>
${index_title}
</body>
</html>

编辑:

不,您可以添加任何内容作为属性。

于 2012-08-24T09:03:19.723 回答