renderError参数问题

山东-小木 发布于 2015/02/08 19:58
阅读 1K+
收藏 0

@jfinal

JFinal renderError(404,"404error.html");

这个404error.html的路径默认不是config中配置的默认me.setBaseViewPath()?

而是寻找的webroot下的文件

我测试的是如果设置了默认baseviewpath也无效 还是寻找webroot下的

加载中
0
JFinal
JFinal

刚看了下代码,在 com.jfinal.core.ActionHandler.java 中添加一点点代码应该就可以了:

e.getErrorRender().setContext(request, response).render();
// 改成:
e.getErrorRender().setContext(request, response, action.getViewPath()).render();

renderFactory.getErrorRender(500).setContext(request, response).render();
// 改成:
renderFactory.getErrorRender(500).setContext(request, response, action.getViewPath()).render();
   renderError 没有使用 viewPath 参数,所以造成 me.setBaseViewPath(...) 对于 error render 不起作用。记得反馈给我, jfinal 2.0 改进这个地方
JFinal
JFinal
回复 @xwalker : 500 和 404 error render 都试试
JFinal
JFinal
回复 @xwalker : 为了保险起见,你在本地先试一下,我这里项目改了很多地方,还没开发完运行不起来
山东-小木
山东-小木
恩 也是今天准备教程看源码的时候发现的 平时都是用renderError(404)
返回顶部
顶部