。 RMIとOSGIのクラスローダーはあまりにも嫌いですが、私は最初の問題hereを解決できました。
私のサーバーアプリケーションはサーバーバンドルで構成され、コアに依存します。さらに、バンドルマップが、コアの拡張ポイント(DataUpdate)を使用してロードされます。
同様クライアントは、プラグインとしてコアとロード地図に応じて開始されます。
は今が(上記の問題を解決しました)もう問題ないクライアントからサーバにユーザーを送信します。悲しいことに、逆は機能しません。 クライアントは、サーバにコールバックとして保存され、DataUpdateオブジェクトを受け取る必要があります。それらはサーバ上のマップバンドルで作成され、RMI経由で送信されます。私はクライアント側でそれらを受け取ると、私は不吉なClassNotFound例外を取得します。私はサーバーと同じことをします:
Thread.currentThread().setContextClassLoader(
this.getClass().getClassLoader());
しかし、これは役に立ちません。
-consoleLog -Djava.security.policy=java.policy -Djava.rmi.server.codebase=file:${workspace_loc}
そしてクライアントに、私はすべてを可能にする個人的な実装にセキュリティマネージャを設定します。また、サーバーとクライアントの両方を開始するために私のスタートパラメータがあります。
だから誰も考えがあります、なぜクラスが見つからないのですか?