我的Flex应用程序如何知道数据何时过时?

时间:2010-12-02 21:35:19

标签: java flex web-applications blazeds amf

我有一个100%基于Flex的企业Web应用程序,带有Java / BlazeDS后端。为了创建更加快捷的用户体验,我想在登录后立即将大量数据加载到客户端并将其保存到整个会话中。

这将包括诸如用户首选项,应用程序外观,应用程序布局等项目。服务器上不经常更新的内容。

我的问题是,如果它们被更新,那么刷新客户端数据的好方法是什么?知道何时刷新?我应该说我对Adobe LCDS没兴趣!

2 个答案:

答案 0 :(得分:2)

要更新客户端中缓存的数据,当服务器上的数据发生更改时,您需要使用支持服务器推送的服务器端软件,并告知客户端需要更新。

LiveCycle是一个支持此功能的服务器端软件。我怀疑你已经知道了,因为你在问题中称呼它。

GraniteDS是另一个,因为它是FOSS,它可能更符合你的喜好。

我怀疑WebORB也支持推送功能,但不要指望我。

如果您不想在服务器端做任何事情;您可以在某个计时器上设置从客户端到服务器的调用。

答案 1 :(得分:-1)

本质上,Flex几乎是单向的,您只能通过使用HTTPRequest将数据传输到Flex - 您不能只将数据发送到Flex客户端(至少不使用Apache)。最好的办法是在Flex应用程序中本地存储首选项数据的时间戳,并使用httprequest查找本地时间戳是否定期与后端应用程序中数据的时间戳匹配(即每隔五分钟)。