【问题标题】:passing object from servlet to jsp and getting output with jstl将对象从 servlet 传递到 jsp 并使用 jstl 获取输出
【发布时间】:2014-08-11 13:34:53
【问题描述】:

我正在使用 jstl 过期。 我将一个对象(bean)放在我的 servlet 中的 req 上,如下所示:

req.setAttribute("myBean", myBean);

在我的jsp中我有:

MyBean mb = (MyBean)request.getAttribute("myBean");
<%= mb.getStuff() %>

然后我尝试使用Jstl如下:

<c:out value="${mb.getStuff}"/>

我在输出中得到了文字 ${mb.getstuff}。 这是错误的。应该怎么样。

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

雄猫 6. 日食。

这是来自网络上的示例:

request.setAttribute("name", "ss ss");
getServletContext().getRequestDispatcher("/result.jsp").forward(request, response);

<h3>An Example of c:out JSTL...</h3><br/>
The value comes from servlet is : <b> <c:out value="${name}"/></b>

计算为空白。

【问题讨论】:

  • 您的容器未评估 JSP EL。您的web.xml 中的 servlet 级别是多少?
  • 你的评估是正确的。我尝试了一个简单的字符串属性,但没有运气。我正在使用 tomcat 6。S/B servlet 级别 2.5。根据我的阅读,web.xml 不需要在 Tomcat 上进行修改。只有jar 文件需要放在WEB-INF/lib 中。我正在使用 Eclipse 并部署上下文。
  • web.xml 中声明的 servlet 级别是什么?
  • 不确定要问什么,但是: 我把它改成这样: java.sun.com/xml/ns/javaee" xmlns:xsi="w3.org/2001/XMLSchema-instance" xsi:schemaLocation="java.sun.com/xml/ns/javaee java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> 仍然没有很好。
  • 重启了tomcat。它现在正在评估为空白。我会更新问题。

标签: jsp servlets jstl


【解决方案1】:

有两个(可能三个)问题。

1.web.xml 中声明的 servlet 级别应为 2.5+

<web-app version="2.5" xmlns="java.sun.com/xml/ns/javaee"
  xmlns:xsi="w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="java.sun.com/xml/ns/javaee java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

2.请求属性与scriptlet变量不同;您创建的 scriptlet 变量对 JSP EL 是不可见的,JSP EL 访问的是作用域属性,而不是 scriptlet 变量。正确的 EL 是:

${myBean.getStuff}

3.如果getStuff实际上是一个方法getStuff(),那么EL实际上是:

${myBean.stuff}

另外,请确保应用已重新部署,并且更改已被拾取和编译。

【讨论】:

  • 看起来也像是更新 servlet jsp 和服​​务器之间的延迟。现在一切都好。即使在本地盒子上也不是瞬时的...谢谢!
  • @Paul 不可能;当web.xml 更新时,需要重新启动应用程序。
  • 没有没有。更新 jsp 和 servlet 时。需要一些时间(2 秒)。所以我以为什么都没有出现。我正在点击快速页面。
  • @Paul 好吧,它必须识别文件已更改,然后重新编译 JSP,虽然速度很快,但不是即时的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-17
  • 2015-07-29
  • 1970-01-01
  • 2012-05-04
  • 1970-01-01
  • 2011-05-07
相关资源
最近更新 更多