【发布时间】:2014-12-20 10:50:49
【问题描述】:
我想当我的页面如index.jsp加载(调用get方法)发送index.jsp页面的数据,如标题。我检查了这个问题,但是这个问题的解决方案(How to call servlet on jsp page load)在我的网络应用程序中有错误。
这是我的index.jsp 页面代码(我想从changeTitle.java 类发送标题):
<title><c:import url="/sysAdmin/changeTitle.java" />
<c:out value="${message }"></c:out></title>
这是我的changeTitle.java 类获取方法:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setAttribute("message", "hello");
}
而且我不知道如何在我的项目的index.jsp 中寻址类,下面是我的项目目录:
【问题讨论】:
-
"我的 Web 应用程序出错。" 那是什么?如果您重定向请求而不是转发/分派它,则请求属性
message在目标资源(JSP 页面)中将不可用。doGet()方法中剩下的代码是什么? -
我希望每次加载这个页面,标题设置来自班级发送的消息
-
拍摄。您如何从您的 Servlet 类到达 JSP 页面(以及您的 Servlet 如何映射到 JSP 页面)?您是否将请求重定向到 JSP 页面或将请求分派/转发给它(或者您什么都不做)?
-
我什么都不做!!我只想发送消息!
-
真的吗?很难相信你什么也没做。无论如何,您需要将请求发送到目标 JSP 页面,例如
request.getRequestDispatcher("/path/to/jsp/index.jsp").forward(request, response);(它基本上是您的doGet()方法中的最后一行)。考虑根据 JSP 页面位置更改路径。确保将 Servlet 适当地映射到所需的 JSP 页面。