struts2!!!action抛出异常后struts2能正确转向吗

本人新手!
try {
userService.addBookshelf(user, book);
bookshelf_add_msg = "ok";
} catch (Exception e) {
e.printStackTrace();//这句出现异常
bookshelf_add_msg = "not";
}finally{
bookshelf_show = "ok";
bs_cp = userService.getBookshelf(user);
bookshelf_num = bs_cp.size();
return SUCCESS;
}

             能执行到SUCCESS那句。就是不转向,只是在那不停的载入中(访问数据库)?

5个回答

自己设定下嘛。例如抛了异常就走input好了,不走success。

描述的不清楚,如果
bookshelf_show = "ok";
bs_cp = userService.getBookshelf(user);
bookshelf_num = bs_cp.size();
这段也抛异常,就不行.

只要能返回success那就能跳转了。struts2就根据这个字符串找到对应的result来跳转的

如果你想这样跳转,你可以这样改一下:
try {
userService.addBookshelf(user, book);
bookshelf_add_msg = "ok";
} catch (Exception e) {
e.printStackTrace();//这句出现异常
bookshelf_add_msg = "not";
return OTHER;//自己定义异常串
}finally{
bookshelf_show = "ok";
bs_cp = userService.getBookshelf(user);
bookshelf_num = bs_cp.size();

}
return SUCCESS;

觉得lz现在的问题不是 “action抛出异常后struts2能正确转向吗”的问题。这个问题自己测试下就行了。实际上应该会跳转的。
而是为什么不会跳转了,而一直在读数据库,lz 既然知道他在读数据库,最好定位一下哪里在读,为什么在读,这里应该才是问题的关键。

立即提问