0

現在、Preferences API を使用して Vaadin アプリケーションに設定を保存しています。このアプリケーションには、Tomcat サーバーで実行されている 3 つの WebApps があります。私が学んだように、Tomcat サーバーには、実行中のすべてのモジュールに対して ClassLoader がありますが、すべてが 1 つの仮想マシンで実行されています。

Java Preferences が複数の ClassLoader で動作する理由を誰か説明してもらえますか? これのソースが見つかりません。デバッグしても何も見つかりませんでした。

本当にありがとうございました。

4

1 に答える 1

0

私は答えを見つけました:

以下を呼び出して Preferences オブジェクトを取得します。

Preferences prefs = Preferences.userRoot().node("test);

Preferences と PreferencesFactory は Bootstrap ClassLoader によってロードされるため、すべてのモジュール ( Apache での ClassLoader の動作) で同じであり、オブジェクトは PreferencesFactory で作成されるため、WebApp コンテキストでは作成されません。

于 2013-07-25T06:30:07.553 に答える