java - Struts2 异常处理用法?

  显示原文与译文双语对照的内容

我的Action 类下面,getTspNameIdMap 抛出 ReqMgmtException 异常( 自定义异常) 。


public String findTspNameIdMap(){

 SlsReqMgmtCommonRemote slsReqMgmtCommonRemote = null;
 tspNameIdMap = new HashMap<String, String>();

 try{
 slsReqMgmtCommonRemote = getSlsReqMgmtCommonRemote();
 tspNameIdMap = slsReqMgmtCommonRemote.getTspNameIdMap(gmaThresholdParameters.getId().getCircleId());

 }
 catch(ReqMgmtException rEx){
 addActionError(rEx.getError());
 result ="error";
 return ERROR;
 }
 catch (Exception e){ 
 addActionError("Error in processing your request. Contact Administrator");
 e.printStackTrace();
 System.out.println("[ConfigureTspThresholdAction: findTspNameIdMap Function]:In catch Inside Constructor!!");
 result ="error";
 return ERROR;
 }
 return SUCCESS;
 }

我知道 Struts2 中也有异常处理,但是目前我不使用它。 是否应使用 Struts2 异常处理? 它的用途是什么?

时间: 作者:

你应该在 Struts2 中使用异常处理机制,这就是 exception 拦截器提供的。 也应该在操作方法中处理异常,如在问题中。 如果它处理所有异常,那么如果不是异常处理程序可以处理它。 同样在一些没有 throws Exception 签名的方法中,你只能捕获异常,但不能返回 ERROR 结果。 因此,重新抛出异常并由拦截器处理它是解决问题的。

引用:

作者:
...