我有使用struts的经验,还简单地尝试过tiles。我知道在一个布局中,每个瓦片都是一个单独的jsp页面。假设我点击了四个平铺上的一个按钮,每个平铺都(间接地)调用了不同的web服务。当结果在不同的时间到来时,磁贴是否会异步刷新?
发布于 2008-11-22 07:37:23
Tiles只是一个html页面的片段。没有ajax的概念,除非您手动添加它。因此:在一个页面上按下4个按钮就相当于在任何html页面上点击4个链接。浏览器将向服务器发送适当的请求。当服务器响应非常快时,您甚至没有时间按下第二个按钮。当它足够慢时,第一个请求(浏览器到服务器)将被取消,第二个请求(第三个、第四个)将被发送(并在按下下一个按钮时取消)。
剩下的取决于后端实现:在某个时间点,服务器会注意到它无法为4个请求中的3个发回数据。在最后一个(打开的)响应中服务/显示的内容也取决于您的实现。如果有一些服务器端状态保存了web服务响应,所有4个结果可能都会显示出来。如果一个web服务还没有返回,那么只有3个结果和一个旧的磁贴可能会出现。
发布于 2008-11-12 20:37:39
我认为这取决于后台的代码。您说tiles间接调用了web服务。我认为它会异步刷新,除非您在代码中指定不这样做。假设您按下按钮1,然后按下按钮2。动作1返回,您的代码显示屏幕需要更新,页面将刷新。一旦动作2返回,您的代码将再次更新屏幕。我相信这就是它的工作原理,但我从来没有尝试过,我不能确定。
为什么不把两个平铺的带有按钮的测试页面拼凑在一起,试一试呢?这应该会给你一个明确的答案。
https://stackoverflow.com/questions/285142
复制相似问题