2012-07-19 45 views
0

我正在使用XPages Extension Library中的移動控件爲iPhone構建移動應用程序。XPages Mobile Controls - 正在丟失sessionScope變量

第一頁顯示類別列表(恰好是用戶名列表)。當選擇一個類別時,第二頁顯示列出屬於所選用戶的所有文件。

打開第二頁的URL包含一個帶有用戶名的參數。第二頁有一個頁面標題的控制和對「標籤」屬性我加入如下代碼: -

if (param.get("User") != null) { 
    sessionScope.put("UserName", param.get("User")); 
} 
return sessionScope.UserName; 

我這樣做,讓我有機會獲得的用戶名在後續的網頁,例如當用戶從第二頁上的列表中打開文檔時,會顯示第三頁。

當我在Chrome中測試這一切都很好。當我在Safari中測試時,可以看到sessionScope變量在第二頁打開時設置。但是,當我選擇文檔並打開第三頁時,sessionScope變量正在消失。我看不到任何代碼可以解釋這一點,並且在Chrome中進行測試時,sessionScope變量仍然存在於第3頁。不出所料,當我在iPhone上測試時,我遇到了同樣的問題。

這給了我的問題是,當從文檔(第3頁)導航回選定用戶的文檔列表(第2頁)時,我不知道最初選擇了哪個用戶。

任何人之前看過或有任何解釋可能會發生什麼?

感謝您的任何建議。

+0

用新的sessionScope變量進行一些進一步的測試。沒有這個問題,所以我懷疑這是我的代碼問題。但是我找不到從sessionScope中刪除原始變量的參考。爲了解決這個問題,我將使用這個新變量。 – 2012-07-19 15:31:44

回答

0

您可能想要避免使用參數方法,除非您先輸入您的輸入,而不是將URL直接寫入範圍 - 或者更容易 - 將第一個字段與類別綁定到sessionScope。你是否嘗試修改你的代碼來使用不同的變量名?

+0

是的 - 使用不同的變量名稱,使我有點困惑!但我會考慮改變它來使用你的建議。謝謝。 – 2012-07-24 09:55:01

+0

有些東西不能命名。可能與cgi變量名稱重疊。很高興它的工作。請接受答案 – stwissel 2012-07-25 13:38:28