我的flex应用程序遇到了一个奇怪的问题。 它是在Tomcat服务器上部署的flex / java(带LCDS)项目。
上下文
该应用程序有不同的看法。让我们说我有" homePage"查看和"日期"视图。日期包含2个日期:一个代表当前日期,另一个代表(当前日期)+ 3周
每次我从homePage转到Dates,日期都会使用" new Date()"重置。
奇怪行为的情景
让我们说昨天(2012年6月11日),我启动应用程序进行一些测试,结束让主页视图可见,离开而没有关闭浏览器(电脑睡觉),今天早上回来(12.06.2012)。
今天早上,我没有刷新浏览器,只需点击下一步按钮即可加载日期视图。显示的当前日期是昨天的日期,而不是今天的日期。
我的问题
这怎么可能?假设Flex正在从部署应用程序的服务器获取日期,那么日期应该是今天的日期。如果它是用户计算机的日期,它应该是今天的......
某个地方是否有缓存,它没有令人耳目一新的东西。我怎样才能避免这个问题再次发生?
感谢您的帮助。
Edit1
homePage和Dates是Viewstack中的mxml组件,所以我只是在从一个到另一个时切换视图。
当我从homePage转到Dates时,我运行了以下代码:
private function order(s:String):void
{
if(s == 'order')
{
OrderData.instance.state = 'order';
OrderViewData.instance.initOrderData();
}
...
}
OrderViewData.as中的函数:
public function initOrderData():void
{
var df:DateFormatter = new DateFormatter;
df.formatString = GlobalData.instance.languageProperties.dateFormat.toString();
txtDateEntry = df.format(new Date);
...
}
txtDateEntry是可绑定的。
它是如何显示的:
<mx:TextInput id="txtDateEntry"
text="{OrderViewData.instance.txtDateEntry}"
width="97" height="18" maxChars="12"
enabled="false" editable="false"
borderStyle="none" styleName="ORTextInput"/>
希望这会有所帮助......