标签: java ajax tapestry
我在使用tapesty时遇到了问题。
我有使用tapestry的应用程序。当我从5.3.8更新到5.4.3时,我发现我的ajax请求不是在单独的线程中处理的。
例如:我有一个在控制器/类中执行的漫长过程。但是,我还有一个JS脚本,它正在为组件生成ajax请求。在Tapestry 5.3.8中,这些请求通常是handeled。当我切换到5.4.3我的请求没有被处理时,从控制器结束我的主进程。
有没有人知道有关此行为的事情?
答案 0 :(得分:1)
在Tapestry JIRA中进行了一些挖掘后,我找到了答案:
Link 1
Link 2
简短总结:来自Tapestry 5.4会话对象是同步的,甚至读取操作都需要writelock。所以所有“长”操作都应该在不同的线程中运行,以使ajax调用工作(不会冻结GUI线程)。
编辑:在邮件列表中,我还提示使用确认参数 tapestry.session-locking-enabled