Spring,hibernate,Struts2进行整合开发时,
为确保对异常能处理,
抛出的是RuntimeException,
如对其捕捉?

解决方案 »

  1.   

    Spring,hibernate,Struts2进行整合开发时,
    为确保对异常能处理,
    抛出的是RuntimeException,
    如对其捕捉? Spring,hibernate,Struts2进行整合开发时,
    为确保对异常能处理,
    抛出的是RuntimeException,
    如何对其捕捉? 
      

  2.   

    spring有专门的异常处理解析器(SimpleMappingExceptionResolver),也可以自定义任意的异常解析器按照项目需求处理异常的。
    通过配置exceptionMappings属性就可捕获各种异常。
      

  3.   

    看别人的项目好像在
    struts.xml里action标签里加个
    <exception-mapping exception="java.lang.Exception" result="error"/>  
    将java.lang.Exception的异常交给result为error的项处理,
    不知对不对,想求证
      

  4.   

    Struts配置增加统一异常捕获
    <global-exception-mappings>
        <exception-mapping result="error" exception="java.lang.RuntimeException"></exception-mapping>
    </global-exception-mappings>
    定义异常返回视图
    <global-results>
        <result name="error" type="freeer">/error.ftl</result>
    </global-results>如果需要对异常加入业务逻辑处理,可增加自定义拦截器
      

  5.   

    <global-results>
        <result name="error" type="freeer">/error.ftl</result>
    </global-results>
    为统一返回视图,若Action中定义“error”返回视图,则优先使用action中的
      

  6.   

    主要有两种方法吧:
    1.struts的声明式异常,在模块中更容易控制。
    在struts.xml配置文件的action标签中添加
    <exception-mapping result="exception" exception="java.lang.RuntimeException" /> 
    2.用spring的aop来处理,可以做一个异常通知。(上网搜aop例子即可)
    <aop:aspect ...>
      <aop:pointcut ...../>
        <aop:after-throwing ...../>
    </aop:aspect>希望对你有用~