开发者社区> 问答> 正文

JFinal 异常处理

能给一个exception处理机制吗?

目前发现 Validator 里面有一点机制, 但是仅仅限于Validate。

异常通常是就直接: 500 Internal Server Error 页面了

期望的效果是: 哪个页面出错, 就停在哪里页面, 但是提示出错误信息。 并且有时候, 根据业务需要, 会主动抛出业务异常, 这些都需要在页面上显示。

展开
收起
小旋风柴进 2016-06-08 10:58:38 2645 0
1 条回答
写回答
取消 提交回答
  • 1:如果你的 action 使用了 Validator,并且在 validate 方法中有异常是不会跳转到 error 500 页面的。跳到 error 500 的情况是异常在action或interceptor中发生了。

    2:使用Validator时,如果需要在哪个页面出错,仍回到哪个页面的功能早已存在了,只不过需遵守约定,即:view = methodName + view扩展名。

    3:页面跳转方面除了上面的约定以外 JFinal 还可以让开发者在 handlerError 指定跳转的去处,这样灵活性更高。

    4:原表单的信息保持功能也有,如此办理:controller.keepPara();

    总的来说,JFinal 的 Validator 已经实现了此贴中需要的所有功能,只不过使用的时候需要来点约定,如果没有约定,就需要手动去调用一下方法,也就一行代码的事。虽然代码增加了一两行,但适应性与灵活性都大大加强了。如果 JFinal 的Validator仍然不能满足需求的话,自定义一个自全局拦截器实现整个系统的异常管理也非常的方便。
    
     再次感谢提出这么深入的问题,此问题深入到了 JFinal 的设计层面,是作者在设计时无时不刻都在权衡的问题 :)
    2019-07-17 19:31:25
    赞同 展开评论 打赏
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Java Spring Boot开发实战系列课程【第7讲】:Spring Boot 2.0安全机制与MVC身份验证实战(Java面试题) 立即下载
Java Spring Boot开发实战系列课程【第6讲】:Spring Boot 2.0实战MyBatis与优化(Java面试题) 立即下载
杜万-Java reactive programming - Reactor 3 and Spring WebFlux 立即下载