业务场景很简单,就是在一个j2ee的web应用里同时需要两种异常处理,一种是restful的返回json异常,一种是普通的出现500或者404页面的异常。
当然最好的处理方法还是分开成两个应用来处理,一个专门做web服务。可是一般小应用不会分这么细,而且web服务异常还可以用作ajax的异常处理,也是不错的。
基本内容和一年前的帖子差不多,[url]http://leobluewing.iteye.com/admin/blogs/1777704[/url]。
当时写完以后一直没时间整理,同时也有不少bug,年前年后总算有点空闲,于是整理出了一个可以跑的例子来,同时改写了点代码,大致思路没有变化。
架构基于springmvc3,项目组织架构上参考的springside和jeesite,只不过在这个示例里面都删光了,因为不需要展示数据持久化,但是由于是从大的项目里剥出来的,可以看到在core文件夹内保留了很多空文件夹。
使用maven,请先在project下执行install安装到本地。因为web是引用了core jar包的。
具体思路就是捕捉所有的异常,首先交给restful异常处理类来判断是否为restful异常,如果不是,则由springmvc来处理普通的页面异常。
跑起来后界面如下:
[img]http://ww3.sinaimg.cn/mw690/55c682degw1edj0oy3xgcj20zk0jet9r.jpg[/img]
git地址:[url]https://github.com/wwlleo0730/restjplat[/url]
同时我也打了个包上传。
当然最好的处理方法还是分开成两个应用来处理,一个专门做web服务。可是一般小应用不会分这么细,而且web服务异常还可以用作ajax的异常处理,也是不错的。
基本内容和一年前的帖子差不多,[url]http://leobluewing.iteye.com/admin/blogs/1777704[/url]。
当时写完以后一直没时间整理,同时也有不少bug,年前年后总算有点空闲,于是整理出了一个可以跑的例子来,同时改写了点代码,大致思路没有变化。
架构基于springmvc3,项目组织架构上参考的springside和jeesite,只不过在这个示例里面都删光了,因为不需要展示数据持久化,但是由于是从大的项目里剥出来的,可以看到在core文件夹内保留了很多空文件夹。
使用maven,请先在project下执行install安装到本地。因为web是引用了core jar包的。
具体思路就是捕捉所有的异常,首先交给restful异常处理类来判断是否为restful异常,如果不是,则由springmvc来处理普通的页面异常。
跑起来后界面如下:
[img]http://ww3.sinaimg.cn/mw690/55c682degw1edj0oy3xgcj20zk0jet9r.jpg[/img]
git地址:[url]https://github.com/wwlleo0730/restjplat[/url]
同时我也打了个包上传。