2018-04-17 20:51

拦截器是在 ActionMapping 中一次性创建并组装好的,后续都只是调用,这样能最大化提升性能

调用的地方看一下 Invocation 中的代码

在 ActionMapping 与 Invocation 中调断点进行调试就能很清楚了解整个过程,可以在群里面找我要一份俱乐部的 Interceptor 的直播视频,当然加入俱乐部会有更多俱乐部福利

2018-04-17 18:27

浏览器按一下 F12 打开浏览器的开发者工具,看一下上传的请求是否为 multipart 类型

2018-04-17 18:26

参考这个帖子的回复
http://www.jfinal.com/feedback/3504

用 common fileupload 手动解析一下试试

通常是客户端传输的数据格式不对,造成服务端无法解析文件

2018-04-17 18:16

@KKKzzzz 放行 spring 路由后的事情就是 Spring 的事情了,得看 spring 是否可以处理你放行的那些路由

jfinal 只管到自己处理的那部分路由

2018-04-17 16:25

@xiaoshushu在控制器里头通过 getRequest() 得到 HttpServletRequest 对象, 然后扔给 comm-fileupload 这类第三方解析,看是不是可以成功

也就是说自己解代替 getFile()

2018-04-17 15:58

这是个什么应用场景? 不好猜

2018-04-17 15:39

@caicm 如果是 maven 项目,则删掉所有文件,只保留 pom.xml 与 src 目录,然后当成 maven 项目重新 import 到 eclipse 中去

我怀疑是你的项目配置有问题

2018-04-17 15:27

异常的 cause 部分呢? 这个异常奇怪,从来没有碰到过

2018-04-17 14:58

看看是不是这个问题:
http://www.jfinal.com/feedback/2429

2018-04-17 14:57

通过 instanceof 判断后,然后强制转换就可以了:
Controller c = inv.getController();
if (c instanceof ReeBaseController) {
ReeBaseController rbc = (ReeBaseController)c;
} else {
....
}

2018-04-17 11:00

先按常规方法把 spring mvc 都弄妥当,然后通过下面几个步预来做:
1:按正常办法在 web.xml 中添加 JFinalFilter,如果 web.xml 中配置了多个 Filter,则需要将 JFinalFilter 配置在最前面

2:参考 com.jfinal.ext.handler.UrlSkipHandler.java 写一个 MyHandler 用来放行 spring 要处理的路由,大致如下:
public void handle(String target, HttpServletRequest request, HttpServletResponse response, boolean[] isHandled) {
// 如果是 spring 该处理的路由,直接放行
if (isSpringRoutes(target)) {
return ;
} else {
// 这里是交给 jfinal 处理的路由
next.handle(target, request, response, isHandled);
}
}

3:配置一下:
configHandler(Handlers me) {
me.add(MyHandler());

总体上来说 spring 该怎么做就怎么做, jfinal 该怎么用还怎么用,只需要在 web.xml 中添加好 JFinalFilter ,并用一个 MyHandler 分发好路由即可

2018-04-17 08:10

controller层是否用的别的 web 框架?

2018-04-16 22:54

改用 Okv ,表示 Ordered Key Value

一般大家想到过的需求,jfinal 早已实现,jfinal 已经精心打磨七年多时间了

2018-04-16 22:52

这段代码与 jfinal Controller.setCookie(...) 实现方式差多多,不同点在于 setPath 与 setDomain 方法

看你的截图貌似不是这两个方法的事,很可能是取值时出的问题,你的取值代码没有给全,无法猜测,不过看到你用了一个 ThreadLocal , 要小心这个是不是有干扰,单步调试找找原因

此外,对于 cookie 的操作,建议直接使用 jfinal 的 setCookie 与 getCookieValue 这类方法,从来没出过问题

2018-04-16 17:32

@ztvip71 用最新版本的 jfinal 3.4 就可以支持,jfinal 3.4 针对 oracle sqlserver 等数据库的日期类型数据做了细致的优化

jfinal 3.4 还未发布,想尝鲜的同学可以用这种办法用上:
http://www.jfinal.com/share/714