有人进来讲讲,用struts开发的异常捕获嘛? 这种情况一般是因为标签的使用错误引起的,如果用ide(jbuilder等)有时会发现不了,这时直接用tomcat运行的话,是可以看到错误标识的。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 struts?兄台,你们项目有多大?呵呵!~ ActionErrors errors = new ActionErrors();if(!errors.empty()) { saveErrors(request, errors); return (new ActionForward(mapping.getInput())); } // 把userinfo对象存入session session.setAttribute(Constants.USER_LOGIN, UC); return mapping.findForward("success");我是这样做的在ACTION里然后在JSP中<html:errors/>就可以了 异常处理?跟struts没有关系,该怎么处理就怎么处理,最后如果你有异常跑到了action里面try{}catch(SQLException se){ return 统一的异常错误页面]当然如果有很多的异常的话,你可设定异常类型 struts还得灵活用吧,关于错误的处理,是需要一个机制的比如在数据处理这一层 或者 业务逻辑这一层, 这时你不可能操作页面显示错误,那只有抛出异常。 而在action 这一层你就要捕获这些异常,对于不同的异常,写一个友好明白的错误信息,forward 到一个错误显示的jsp 或者 直接将错误显示在当前页。而一个通畅的错误传递和处理机制式需要一番设计的 xinshou1979330(Success.java)所说的是,在actionservlet中如何把异常送到页面,在jsp页面上也有捕捉的话,就可以把后台的异常送到页面。这样解决肯定是对的。但是,我遇到的最挠头的问题并不是这样的,而是如楼主所说的那种,很多时候有空白页,也有时候会出现编译错误,无法编译完整。这样的情况很多时候是由于struts的标签错误导致的,不知道现在是否有比较好的方法来处理这类问题,每次遇到这样的情况,我都是尽量把页面上的东西删的差不多,让它在编译的时候报错,但是很多时候是无法确定到底错误是在什么地方产生的。 是哦是哦! 就是因为白板的原因太多太多,有时查半天可能是个很小的问题,真格是郁闷了。 就如上面 rex0y(没学好九阳神功就妄想几小时练成乾坤大挪) 说的要一个通畅的错误传递和处理机制式需要一番设计的。而这个设计,有没有一个通用的模式啊?当然不同的问题还是有不同处理方式的。但从分层来说还是有一定通用的方法的,希望大家接着说。 struts很多错误都是标签上的错误,一错误就空白了。如果是针对代码的,还是自己写一个可以显示抛错误的。好像ActionErrors也只是保存errors的串,对客户/用户来说没多大意义,即使有完善的错误描述,维护起来也比较麻烦吧。 struts使用了宣称式异常处理。在struts-config.xml文件里是这样定义的: <global-exceptions> <exception handler="com.dmk.strutstest.CustomizedExceptionHandler" key="org.apache.struts.action.Exception" path="/Error.jsp" scope="request" type="java.lang.Exception" /> </global-exceptions>也就是说,你需要捕获什么样的错误类型就在global-exceptions里写出它的类型。当错误发生里,就会交给比如“error.jsp”来处理。 还有一种方法,可以用logger来进行测试,这是比较流行的做法了~~ 我用一个类继承Action类,重载perform,再捕捉异常,跳转到错误页。这样可以把除JSP页面错误以外的错误都处理掉。public ActionForward perform(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) {try { //处理请求信息 forwardTo = perForm(mapping, form, request, response);//自己写的处理方法 } catch(Exception e) { forwardTo = "syserr"; } return(mapping.findForward(forwardTo)); 求 一网页上测试网速的java实现 jsp 页面传值问题,等大家来回答啊! jsp页面导入struts标签问题,在线等! 用hibernate的API调用存储过程必须返回的是结果集吗 有谁了解神州数码思特奇的面试情况的 如何学习spring AOP 两个ear互访的问题 郁闷,放100分,调试RMI有这么麻烦吗? 本人是个新手,请问各位高人,用jb开发完成后,怎样将程序打包发布 链接的中文问题 JAVA中如何模拟表单 讨论struts和ibatis的网站
兄台,你们项目有多大?呵呵!~
saveErrors(request, errors);
return (new ActionForward(mapping.getInput()));
}
// 把userinfo对象存入session
session.setAttribute(Constants.USER_LOGIN, UC);
return mapping.findForward("success");
我是这样做的在ACTION里然后在JSP中<html:errors/>
就可以了
try
{
}
catch(SQLException se)
{
return 统一的异常错误页面
]
当然如果有很多的异常的话,你可设定异常类型
但是,我遇到的最挠头的问题并不是这样的,而是如楼主所说的那种,很多时候有空白页,也有时候会出现编译错误,无法编译完整。这样的情况很多时候是由于struts的标签错误导致的,不知道现在是否有比较好的方法来处理这类问题,每次遇到这样的情况,我都是尽量把页面上的东西删的差不多,让它在编译的时候报错,但是很多时候是无法确定到底错误是在什么地方产生的。
就是因为白板的原因太多太多,有时查半天可能是个很小的问题,真格是郁闷了。 就如上面 rex0y(没学好九阳神功就妄想几小时练成乾坤大挪) 说的要一个通畅的错误传递和处理机制式需要一番设计的。而这个设计,有没有一个通用的模式啊?当然不同的问题还是有不同处理方式的。但从分层来说还是有一定通用的方法的,希望大家接着说。
如果是针对代码的,还是自己写一个可以显示抛错误的。
好像ActionErrors也只是保存errors的串,对客户/用户来说没多大意义,
即使有完善的错误描述,维护起来也比较麻烦吧。
struts使用了宣称式异常处理。
在struts-config.xml文件里是这样定义的:
<global-exceptions>
<exception
handler="com.dmk.strutstest.CustomizedExceptionHandler"
key="org.apache.struts.action.Exception"
path="/Error.jsp"
scope="request"
type="java.lang.Exception" />
</global-exceptions>
也就是说,你需要捕获什么样的错误类型就在global-exceptions里写出它的类型。当错误发生里,就会交给比如“error.jsp”来处理。
public ActionForward perform(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
{
try
{
//处理请求信息
forwardTo = perForm(mapping, form, request, response);//自己写的处理方法
}
catch(Exception e)
{
forwardTo = "syserr";
}
return(mapping.findForward(forwardTo));