java - 从 servlet 获取对 JspContext/PageContext 的引用

标签 java jsp jakarta-ee servlets

有谁知道从 servlet 获取 JspContext 引用的方法吗?

我有一个转发到 Jsp 的 servlet,我想从 servlet 中设置一些 PageContext 变量,以便它们可以在 Jsp 中使用。

最佳答案

让我看看我是否理解:您想从 servlet 调用 JSP 并使一些变量(在 servlet 的控制下)对 JSP 可用。对吧?

然后忘记 PageContext,它只是特定于 JSP 页面并且不能从 servlet 访问。您在请求、 session 或 servlet 上下文中设置的任何属性都将在 JSP 中可用。 PageContext 的范围比之前的范围更广,它带有一个 findAttribute 方法,当调用该方法时,将在页面上下文中查找具有给定名称的属性,请求、 session 或 servlet 上下文(按此顺序)。

因此,您唯一需要做的就是将这些变量设置为这些范围之一中的属性,我建议使用 request 之一(HttpServletRequest.setAttribute("foo", "fooValue")),然后使用值表达式 (${foo}) 在您的 JSP 中使用它。

关于java - 从 servlet 获取对 JspContext/PageContext 的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12056437/

相关文章:

java - 作为服务与大型 java 程序交互?

java - 我的 java 循环出现问题

java - 在表单中修改时,不会返回 JSP 页面中的对象。(数据写入 ID 为 0 的新对象)

java - 从 Java 中的字符串中删除未使用的空格和逗号

java - 我无法调用@NamedQueries

java - 如何使用 Java 和 SWT 将 ActiveX 对象添加到 ROT?

java - 如何让 Liferay 不产生压缩的 HTML 代码?

Java Bean getter 不返回值

jquery - 如何在网页上创建 float 搜索栏

java - 从 JAX-RS 中排除提供者