关于jfinal 文件上传,jsessionid 的问题
@JFinal 你好,想跟你请教个问题:
各位大侠,最近在用jfinal做文件上传,遇到棘手的问题,描述如下:
我们一般会使用 swfupload 或者 jquery uploadify之类的控件做文件上传,
在火狐浏览器下,经常容易出现 jsessionid 丢失的情况,
所以我在freemarker页面,文件上传的URL路径加上jsessionid ,比如:
'uploader' : '${ctx}/uploadify?jsessionid=${session.id}',
当然前提是,我使用了SessionInViewInterceptor拦截器,才将session传递到freemarker页面上的。
可是,当我点击上传,提交文件时,我的全局SessionHandle 却获得不到session,
也就是说 request.getSession(false) 得到的是 null值
下面我把SessionHandle的代码贴出来
----------------------------------------------------------------------------------------------
public void handle(String target, HttpServletRequest request,HttpServletResponse response, boolean[] isHandled) {
SessionKit.set(request.getSession(false));
nextHandler.handle(target, request, response, isHandled);
}
----------------------------------------------------------------------------------------------
我很纳闷,jsessionid 的值,我已经能够在freemarker页面获得到,
但是如何让它继续传递到提交文件的Controller呢?
'uploader' : '${ctx}/uploadify?jsessionid=${session.id}',
是我哪里写错了,还是用的方法不对? 希望大侠帮帮小弟了,非常感谢!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
好的,谢谢各位大侠的指导,我先试试,后续再给出实验结果哈!
我之前也是采用的这个办法,把上传的请求排除掉
mark 之前也遇到过uploadify上传session丢失的问题
试一下不用绝对路径,用相对路径 我是这样用的 uploader:'fileUpload/file;jsessionid=${sessionId!}',
引用来自“白痴糊涂人”的评论
'uploader' : '${ctx}/uploadify
?jsessionid=${session.id}
'
应该是
'uploader' : '${ctx}/uploadify;jsessionid=${session.id}'