0

Springを使用してGlassfish3.1.2で実行しているJavaWebアプリケーションがあり、それをOSGiアーキテクチャに変換しようとしています。

まず、Geminiブループリントをダウンロードし、jarファイルをautodeploy/bundleGlassfishのディレクトリにコピーしました。その時点で、次のような要件の欠落に関する多くのエラーが発生しました。

[#|2012-10-24T12:58:07.176 0500|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_Thread
ID=18;_ThreadName=Thread-5;|org.osgi.framework.BundleException: 
Unresolved constraint in bundle org.eclipse.gemini.blueprint.core [258]: 
Unable to resolve 258.1: missing requirement [258.1] osgi.wiring.package; (&(osgi.wiring.package=org.aopalliance.aop)(version>=0.0.0))

そして、org.apache.commons.loggingとりわけ同様のエラー。

私はOSGiとGlassfishについてかなり読んでいますが、Glassfish用のOSGi Springアプリケーションを作成する例を見つけることができないので、おそらく私は何か非常に間違ったことをしていると思います。

私がしていることが正しいかどうか、もしそうなら、これらの問題をどのように解決するかについて、誰もが何か考えを持っています。

4

1 に答える 1

1

Glassfish内でosgiコンテナを実行しようとしているようです。その場合は、osgiコンテナーを起動する一種のosgiブートストラッパーを使用または作成する必要があります。必要なバンドルを使用してosgiコンテナーを起動する必要があります。これは、osgiコンテナーが次のバンドルをデプロイする準備ができるための最小セットです。

更新された回答:エラーメッセージに基づいて、Geminiバンドルには、コンテナ内でまだ利用できないバンドルが必要なようです。Geminiをデプロイする前に、他のバンドルからインポートするパッケージ/クラスを把握し、それらをインストールして開始する必要があります。あなたはジェミニバンドルのマニフェストを調べることによってそれを行うことができます

于 2012-10-24T18:32:45.663 に答える