Struts 中的自定义异常

在struts 中要想自定义异常,首先我们要写一个普通的java类来继承RuntimeException如下所示:
package exception;
public class MyException extends RuntimeException {
public MyException() {
  super();
}
}

然后我们可以在业务逻辑层(biz)的方法中的try...catch()....中throw 一个刚才我们自定义的那个异常(MyException).代码如下所示: 
public List getList() {
  List list = null;
  Session session = HibernateSessionFactory.getSession();
  String hqlString = "from Favorite";
  try {
   list = commomDao.getList(hqlString);
  } catch (RuntimeException e) {
   System.out.println("FavoriteSerachBizImpl.getList()方法有错误!!!");
   e.printStackTrace();
//注意此处我抛出的是MyException的对象...
   throw new MyException();
  }
  return list;
}


在后要在struts-config.xml文件中对<global-exception/>的节点进行设置:
如:
//注意key的值应与error.jsp中的某个property的值相同.同时也应与ApplicationResources.properties属性文件中的某个key相同
<global-exception>
<exception key="haha" type="exception.MyException" path="/error.jsp"/>
</global-exception>

进行上面配置后.由于<global-exception/>是全局的.所以不论在那个action中抛出异常都会被抓到..并转到error.jsp页面....
posted @ 2010-12-20 21:58  左正  阅读(280)  评论(0编辑  收藏  举报