1

ブール値を保存するプロファイル文書を Lotus Notes で作成しました。次に、値をプレーン テキスト (true または false) として返す XAgent を作成しました。問題は、Lotus Notes クライアントでプロファイル ドキュメントの値を変更したときに、XAgent ページを更新したり、ブラウザーを閉じたり、別のブラウザーを使用したりしても、変更された値が XAgent から返されないことです。サーバーで HTTP タスクを再起動する (「http 再起動を通知する」) 場合にのみ、変更が表示されます。新しいドキュメント プロファイル値を常にすぐに取得する方法はありますか? Web サーバーのキャッシュなどをプログラムでクリアする方法を何時間も探していましたが、役に立ちませんでした。プロファイル ドキュメントは頻繁に変更するべきではないことはわかっていますが、テストのためにこれを行っています。

私を助けてください。

どうもありがとうございました!:D

4

2 に答える 2

5

このような実際の「プロファイル」ドキュメントを使用していますか?

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

プロファイル ドキュメントは非常に長い間存在しており、その使用法は非常に単純であることを目的としており、定期的な更新用には設計されていません。それ以来、プロセスの一般的な「スクラッチ パッド」と誤解されてきました。

通常、Domino キャッシュのプロファイル ドキュメントは HTTP に関係なく、管理しにくいため、これらの使用はお勧めしません。これは、レプリカが他のサーバーに分散している場合に特に困難です。

そのため、代わりに通常のドキュメントを使用し、通常のgetdocumentByKeyメソッドを介してアクセスすることもできます。これにより、それらを直接管理できるようになり、保守が容易になります。

于 2011-09-28T03:52:16.527 に答える
3

パフォーマンス上の理由から、Domino http (および XPages) エンジンはページと文書をキャッシュします。これにはプロフィール文書も含まれます。

有効な回避策の 1 つは、ノーツ クライアントではなく、Web エージェントを介してプロファイル ドキュメントを更新することです。このように、HTTP エンジンはエージェントを実行しているため、プロファイルが変更され、そのキャッシュを再構築する必要があることを認識できるはずです。

別の回避策は、これが Xpages のみのソリューションである場合、スコープ変数プロパティ ファイルを使用して情報を保存することです。

それ以外に、私が考えることができる唯一の「解決策」は、「通常の」ドキュメントとビューで「プロファイル ドキュメント」を再実装することです。

于 2011-09-24T18:07:01.730 に答える