2011-09-23 51 views
1

我在Lotus Notes中創建了一個保存布爾值的配置文件。然後我創建了一個XAgent,它以純文本形式返回值(true或false)。問題是:當我更改Lotus Notes客戶端中的配置文件的值時,即使嘗試刷新XAgent頁面,關閉瀏覽器或使用其他瀏覽器,XAgent也不會返回已更改的值。只有當我重新啓動服務器中的HTTP任務('告訴http重新啓動')時纔會出現更改。有沒有辦法總是立即獲取新的文檔配置文件值?我一直在尋找幾個小時如何編程清除Web服務器緩存或類似但無濟於事。我知道個人檔案文件不應該經常更改,但是我爲了測試而做了這些。刷新XPages中的配置文件

請幫幫我。

非常感謝! :D

回答

3

由於性能方面的原因,Domino http(和XPages)引擎緩存頁面和文檔。這包括配置文件。

可行的一種解決方法是不通過Notes客戶端,而是通過Web代理更新配置文件。這樣,HTTP引擎正在運行代理,所以它應該能夠識別配置文件已更改,並且其緩存需要重建。

另一個解決方法是 - 如果這是一個Xpages唯一的解決方案 - 使用scoped variablesproperties files來存儲信息。

除此之外,我能想到的唯一「解決方案」是用「常規」文檔和視圖重新實現「簡檔文檔」。

5

您是否正在使用像這樣的實際「配置文件」文件?

Call workspace.EditProfile("Interest Profile", session.UserName) 

檔案文件已經存在了很長一段時間,他們使用的用意是相當簡單的,而不是專爲定期更新。此後它被誤解爲過程的一般「便箋式」。

通常,我不推薦使用它們,因爲Domino緩存的配置文件與HTTP無關,並且它們更難以管理。當您的副本在其他服務器上浮動時,這尤其困難。

因此,替代方法是使用普通文檔,並通過常規的getdocumentByKey方法訪問它們。這使您可以直接管理它們,從而使維護更加容易。