Threads Tapestry 5.3.8 vs 5.4.3

时间:2017-07-27 13:44:09

标签: java ajax tapestry

我在使用tapesty时遇到了问题。

我有使用tapestry的应用程序。当我从5.3.8更新到5.4.3时,我发现我的ajax请求不是在单独的线程中处理的。

例如:我有一个在控制器/类中执行的漫长过程。但是,我还有一个JS脚本,它正在为组件生成ajax请求。在Tapestry 5.3.8中,这些请求通常是handeled。当我切换到5.4.3我的请求没有被处理时,从控制器结束我的主进程。

有没有人知道有关此行为的事情?

1 个答案:

答案 0 :(得分:1)

在Tapestry JIRA中进行了一些挖掘后,我找到了答案:

Link 1

Link 2

简短总结:来自Tapestry 5.4会话对象是同步的,甚至读取操作都需要writelock。所以所有“长”操作都应该在不同的线程中运行,以使ajax调用工作(不会冻结GUI线程)。

编辑:在邮件列表中,我还提示使用确认参数 tapestry.session-locking-enabled