servlet中request.getRequestDispatcher("index.jsp")跳转到jsp页面没有任何反应

zkeenly 2013-05-12 11:43:38
目的想要在servlet中跳转到jsp页面上。

index.jsp页面在根目录上,没有出现404错误。


	public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String path = "/index.jsp";
List<Books> all = null;
try{
all = DaoFactory.getIBookDaoInstance().findAll(" ");
}catch(Exception e){
e.printStackTrace();
}finally{

}
System.out.println("dd");
request.setAttribute("books", all);
request.getRequestDispatcher("/index.jsp").forward(request, response);
System.out.println("dd");

}


我直接在浏览器上输入的 servlet 地址,然后打印出来

dd
dd

说明中间的request.getRequestDispatcher("/index.jsp").forward(request, response);一定有执行,但是却没有任何反应。请问是为什么?
...全文
1377 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
我是小山山 2014-05-20
  • 打赏
  • 举报
回复
怎么找到的?什么原因呢?
zkeenly 2013-09-13
  • 打赏
  • 举报
回复
知道了谢谢各位
aBOUNTWINTER 2013-06-03
  • 打赏
  • 举报
回复
request.getRequestDispatcher() 是转发,转发到别的servlet或jsp去了,你下面的 System.out.println("dd");还能执行?这代码就有问题。 request.getRequestDispatcher()后面要加一个return ;不然会报错 同理,response.sendRedirect后面也要加一个return ;
zkeenly 2013-06-01
  • 打赏
  • 举报
回复
引用 4 楼 u010756768 的回复:
话说楼主,我现在有个问题是servlet把信息存session里了,然后跳转到jsp,jsp取出session信息并显示,但是我的jsp页面什么都没有,连普通的字都显示不出来,这个问题是因为getRequestDispatcher这个跳转没成功还是因为什么?
建议在控制台输出一下session中的数据(可以在servlet里面就输出),看看是不是null.每隔一条语句输出一下,找找错误的原因,
tokyoII 2013-06-01
  • 打赏
  • 举报
回复
引用 6 楼 zhangkaixu321 的回复:
[quote=引用 4 楼 u010756768 的回复:] 话说楼主,我现在有个问题是servlet把信息存session里了,然后跳转到jsp,jsp取出session信息并显示,但是我的jsp页面什么都没有,连普通的字都显示不出来,这个问题是因为getRequestDispatcher这个跳转没成功还是因为什么?
建议在控制台输出一下session中的数据(可以在servlet里面就输出),看看是不是null.每隔一条语句输出一下,找找错误的原因,[/quote] 话说在servlet里直接输出的话只是普通的字能输出,数据库里的内容没输出,用的是netbeans自带数据库,建实体类Bean又会自动生成代码,所以我实在不知道我哪里不对劲了。跟成功的同学写一样的也还是不可以。按理说是没问题的才对,难道我netbeans有问题么?=。=
ZHOU西口 2013-05-31
  • 打赏
  • 举报
回复
request.getRequestDispatcher()是请求转发,前后页面共享一个request ,所以url不会变。 response.sendRedirect()是重新定向,前后页面不是一个request,所以这个会变化。
tokyoII 2013-05-31
  • 打赏
  • 举报
回复
话说楼主,我现在有个问题是servlet把信息存session里了,然后跳转到jsp,jsp取出session信息并显示,但是我的jsp页面什么都没有,连普通的字都显示不出来,这个问题是因为getRequestDispatcher这个跳转没成功还是因为什么?
rihaduo202 2013-05-13
  • 打赏
  • 举报
回复
request.getRequestDispatcher("/index.jsp").forward(request, response);
服务器端调整,地址栏不会变的。
zkeenly 2013-05-13
  • 打赏
  • 举报
回复
找到原因了,好像跳转的时候URL不会变化,就是显示的是servlet的地址,
		String sql = "select * from Books where bno like ? or bname like ? or bkind like ?";
		this.pstmt = this.conn.prepareStatement(sql);
		pstmt.setString(1,"%"+keyWord+"%");
		pstmt.setString(2,"%"+keyWord+"%");
		pstmt.setString(3,"%"+keyWord+"%");
这句话出了问题,上面是改正后的,因为查询语句没有查到的原因
zkeenly 2013-05-12
  • 打赏
  • 举报
回复
浏览器上输入servlet地址之后回车URL不变。

81,091

社区成员

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

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