如何在JSP和Servlet中实现forward功能? 50分相送!

stuttgart 2002-04-04 03:58:30
小弟用的是Tomcat,Apache, JDK1.2,Win2K环境,编写了一个名为Servlet2.java的小Servlet程序,在这个程序里想实现: 当用户调用Servlet2进行一些处理后,将当前浏览器显示的内容改换为Servlet1,我在Servlet2中使用了如下的语句,编译通过,却不知为何无法实现显示Servlet1的内容?

RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("Servlet1");
dispatcher.forward(request,response);

有时会显示如下信息:

Error: 500
Location: /examples/servlet/ServletInclude
Internal Servlet Error:

java.lang.NullPointerException
at ServletInclude.service(ServletInclude.java, Compiled Code)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
at org.apache.tomcat.core.Handler.service(Handler.java:286)
at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:797)
at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:210)
at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java, Compiled Code)

另外不知道为何我总是无法在JSP中实现<jsp:forward..../>的功能,但是使用<jsp:include..../>却可以

不知哪位高人能指点一二? 50分相送!
...全文
64 点赞 收藏 3
写回复
3 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
xue_sharp 2002-04-05
在<jsp:forward>之前一定不要用flush()方法.否则出错.
<jsp:forward page="getmail.jsp">
<jsp:param name="user" value="<%= user %>" />
<jsp:param name="password" value="<%= password_c %>"/>
</jsp:forward>
JSP中使用时,不要用在scriptlet中.格式也要对.
回复
bluejam 2002-04-04
如果你使用了非缓冲输出的话,那么使用<jsp:forward>时就要小心。如果在你使用<jsp:forward>之前,jsp文件已经有了数据,那么文件执行就会出错.

回复
可乐加水 2002-04-04
String url="Servlet1";
ServletContext sc = getServletContext();
RequestDispatcher rd = sc.getRequestDispatcher(url);
rd.forward(request,response);
这样差不多了吧
回复
发动态
发帖子
Web 开发
创建于2007-09-28

7.9w+

社区成员

Java Web 开发
申请成为版主
社区公告
暂无公告