首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Exception >

struts的异常捕获

2014-01-26 
最近在用struts作东西,可程序出问题了,经常就是白板,什么都不显示,郁闷。还有程序整个完成了,运行起来,发现,

最近在用struts作东西,可程序出问题了,经常就是白板,什么都不显示,郁闷。还有程序整个完成了,运行起来,发现,有些问题还是会出现,有时候又不出现,怎么对这些异常进行有效的捕获啊?
    
  有人进来讲讲,用struts的异常捕获嘛?

------解决方法--------------------------------------------------------
这种情况一般是因为标签的使用错误引起的,如果用ide(jbuilder等)有时会发现不了,这时直接用tomcat运行的话,是可以看到错误标识的。
------解决方法--------------------------------------------------------
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 或者 直接将错误显示在当前页。
 
  而一个通畅的错误传递和处理机制式需要一番设计的
------解决方法--------------------------------------------------------
在actionservlet中如何把异常送到页面,在jsp页面上也有捕捉的话,就可以把后台的异常送到页面。这样解决肯定是对的。
  但是,我遇到的最挠头的问题并不是这样的,而是如你所说的那种,很多时候有空白页,也有时候会出现编译错误,无法编译完整。这样的情况很多时候是由于struts的标签错误导致的,不知道现在是否有比较好的方法来处理这类问题,每次遇到这样的情况,我都是尽量把页面上的东西删的差不多,让它在编译的时候报错,但是很多时候是无法确定到底错误是在什么地方产生的。
------解决方法--------------------------------------------------------
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" />         

热点排行