必须与名称空间一起使用吗?" />

必须与名称空间一起使用吗?

发布于 2024-10-12 07:10:11 字数 346 浏览 1 评论 0 原文

我尝试过:

<c:if test="${!request.isRequestedSessionIdFromCookie()}">

在我的任何一个 JSP 中,因为 c:url 由于某种原因没有对我的 url 进行编码。 (正在研究那个)。 所以我想尝试检查是否启用了 cookie,但出现错误:

功能 isRequestedSessionIdFromCookie 必须是 默认时与前缀一起使用 未指定命名空间

有谁知道这意味着什么?我经常使用 EL with request 但从未遇到过此错误。

I tried:

<c:if test="${!request.isRequestedSessionIdFromCookie()}">

in ony of my JSPs since c:url isn't encoding my url's for some reason. (working on that one).
So I wanted to try and check if cookies are enabled with this but I get the error:

The function
isRequestedSessionIdFromCookie must be
used with a prefix when a default
namespace is not specified

Does anyone know what it means with that? I've frequently used EL with request and I've never gotten this error.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

与往事干杯 2024-10-19 07:10:11

除非您使用的是 Servlet 3.0 / JSP 2.2,否则您无法像这样调用 EL 对象上的方法。您需要始终以 Javabean 方式对待它们。即不要使用 getis 前缀,也不使用方法括号 ()

<c:if test="${!request.requestedSessionIdFromCookie}">

(我假设HttpServletRequest放在那里,否则你必须先通过PageContext获取它)

<c:if test="${!pageContext.request.requestedSessionIdFromCookie}">

至于URL没有被编码的具体问题c:out,该标签不对此负责。您不会将它与 c:url 混淆吗?

Unless you're on Servlet 3.0 / JSP 2.2, you cannot invoke methods on EL objects like that. You need to treat them the Javabean-way all the way. I.e. do not use get or is prefixes and also not method parens ().

<c:if test="${!request.requestedSessionIdFromCookie}">

(I assume that HttpServletRequest is been placed there, otherwise you've to get it by PageContext first)

<c:if test="${!pageContext.request.requestedSessionIdFromCookie}">

As to the concrete problem of the URL's not being encoded by c:out, that tag isn't responsible for that. Aren't you confusing it with c:url?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文