SWFUpload和Java:会话丢失

我正在使用SWFUpload将文件上传到java servlet(spring框架)。 问题是当前Web会话在文件上载期间丢失(它创建一个新会话)。 我读到这是一个已知的bug,并且在某处有一些解决方法,但我找不到任何东西。 有谁知道如何使它工作?

谢谢。

在SWFUpload论坛上查看这篇文章 。 添加;jsessionid=XXX到上传url可能适合您,或者可能不适用; 问题的确切原因似乎不清楚。 请注意,Flash使用Wininet堆栈(与IE相同),因此如果您使用的是其他浏览器,则需要以某种方式将会话cookie(浏览器已知)放入IE cookie中。

还有这个在.NET平台上。 问题是Flash对象在与Java App不同的会话环境中运行(它实际上被视为新客户端)。 解决所有这一切的一种方法是有效地让对象发布在查询字符串中提交上传所需的任何必要信息。

你描述的已知错误听起来像这个 。 如果你有时间,请注册说“我也有这个问题”所以我们可以让Adobe明确表示它影响了很多人。

很难给出一个最适合你特定情况的方法的例子,因为我对spring知之甚少。

也就是说,解决它的常用方法是将会话的GET变量附加到上传URL,然后将其手动设置为服务器端的会话。

这是关于这个问题的另一个SO线程有一个很好的答案(遗憾的是不是特定于java + spring,但可能会给你一个更好的主意)。

希望这足以让你有一个良好的开端。