Jsp 使用JSTL读取cookie

Jsp 使用JSTL读取cookie,jsp,cookies,jstl,Jsp,Cookies,Jstl,我在研究cookie,并且能够使用基于scriptlet的JSP创建和读取它们,但是当我尝试使用JSTL执行相同操作时,它并没有显示我所有的cookie,只有“JSSessionID…”,而在我的另一个项目中,它显示了我创建的cookie。我的问题是为什么,它似乎适合我,但不适合我的浏览器。。 下面是我尝试使用JSTL所做的: <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <c:forEach

我在研究cookie,并且能够使用基于scriptlet的JSP创建和读取它们,但是当我尝试使用JSTL执行相同操作时,它并没有显示我所有的cookie,只有“JSSessionID…”,而在我的另一个项目中,它显示了我创建的cookie。我的问题是为什么,它似乎适合我,但不适合我的浏览器。。 下面是我尝试使用JSTL所做的:

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

<c:forEach var="cookieVal" items="${requestScope.cookies}" > 
    <tr>
        <td align="right">${cookieVal.name}</td>
        <td>${cookieVal.value}</td>
    </tr>
</c:forEach>

${cookieVal.name}
${cookieVal.value}
我的另一个项目是:

<% Cookie[] cookies = request.getCookies();
for (int i = 0; i < cookies.length; i++) {
    Cookie cookie = cookies[i];%>
    <tr>
        <td><%=cookie.getName()%></td>
        <td><%=cookie.getValue()%></td>
    </tr>
<%}%>

我的项目库文件夹中有m JSTL.jars。。。
谢谢大家!

requestScope.cookies
将搜索名为
cookies
的请求属性。如果要访问请求的cookies属性,需要
pageContext.request.cookies


也就是说,访问cookie应该在控制器(servlet)中使用Java代码,而不是在视图(JSP)中,后者只处理HTML生成。

您可以通过
${cookie.cookieName.value}
访问名为
cookeName
的cookie值。

我忘了告诉您,实际上我有这个属性(
Cookie[]cookies=request.getCookies();
)并发现了我的问题(顺便说一句,这太愚蠢了…)我实际上是在将我的新Cookie添加到我的
响应
属性中,而不是我的
请求
…这太愚蠢了,哈哈,谢谢!