关于请求转发的问题。。

大明哥_
Java领域优质创作者
博客专家认证
2011-09-23 10:24:53
public class CheckServlet extends HttpServlet {
@Override
//响应客服端请求
public void service(ServletRequest request, ServletResponse response)
throws ServletException, IOException {
//获取用户名
String username = request.getParameter("username");
String message = null;
if(username==null)
message = "please input username";
else {
message = "hello "+username;
}

//添加message属性
request.setAttribute("message", message);

//把请求转发给outputServlet
ServletContext context = getServletContext();
RequestDispatcher dispatcher = context.getNamedDispatcher("/output");

PrintWriter out = response.getWriter();
out.print("output from checkServlet before forwarding request");
System.out.println("output from checkServlet before forwarding request");
dispatcher.forward(request,response);

out.print("output from checkServlet after forwarding request");
System.out.println("output from checkServlet after forwarding request");
}
}

这段代码是将相关的信息转发到OutputServlet中去:OutputServlet中的代码如下
public class OutServlet extends HttpServlet {

@Override

public void service(ServletRequest request, ServletResponse response)

throws ServletException, IOException {

//读取checkServlet存放在请求范围内的消息

String message = (String) request.getAttribute("message");

PrintWriter out = response.getWriter();

out.print(message);

out.close();

}

}

所有的配置都是没有问题的。但是对于dispatcher.forward(request,response);这个代码就会抛出NullPointerException异常
为什么呢???

...全文
98 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
你好毒你好毒 2011-09-23
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 jsut_yi 的回复:]

楼主试试 request.getRequestDispatcher("/output").forward(request, response)
[/Quote]

UP
jsut_yi 2011-09-23
  • 打赏
  • 举报
回复
楼主试试 request.getRequestDispatcher("/output").forward(request, response)
淡定的峰哥 2011-09-23
  • 打赏
  • 举报
回复
RequestDispatcher dispatcher = request.getRequestDispatcher("/output");

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧