spring aop异常增强问题

wangcaidpjxwq 2011-06-08 10:45:51
针对所有action方法使用异常增强。我action中的方法是使用的try catch来抛出异常。在catch模块里面配置了返回参数success和tip(提示信息)后再抛出异常。如果不加入异常增强时我的客户端可以接收到tip信息的。加了异常增强后,action在抛出异常后就被异常增强拦截,客户端就只能接收到异常信息,而不是tip信息了。有什么办法可以让异常增强后页面仍然可以接受tip?具体情况:

struts配置片段: <result type="json">
<param name="includeProperties">success,tip</param>
</result>
异常增强里面仅仅是输出异常信息而已。
action中catch内容: catch (Exception e) {
tip = e.toString();
success = true;
throw new RuntimeException(e);
}
不加异常增强时页面接受内容:{"success":false,"tip":程序异常}
加了异常增强时页面接受内容就成了一个xml代码。显示的是struts错误和错误具体内容
...全文
165 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangcaidpjxwq 2011-06-08
  • 打赏
  • 举报
回复
没有人来回答么?
wangcaidpjxwq 2011-06-08
  • 打赏
  • 举报
回复
呵呵。解决了。“增强就是通知”。不记得在哪看到的。所以,异常增强其实只是通知发生了异常,并没有捕获异常。解决办法:如果需要发生异常后返回友好提示,就不要使用spring的异常增强。直接在环绕增强中使用try catch捕获方法异常就行了。还有,无爱的csdn。。。。。。

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧