2016-06-22 6 views
0

bnd OSGIプロジェクトの構築方法を学び始めました。 私はエラーメッセージなしで非常に簡単なプロジェクトを実行しようとしますが、私がlocalhostに行くと、 "HTTPエラー:404"と表示されます。bnd osgiプロジェクトがFirefoxを実行していない

単純なクラス:

enter image description here

アクティベータークラス: enter image description here

残りのビルド依存関係

enter image description here

実行の依存関係

enter image description here

HTTPエラー:

enter image description here

あなたの助けをありがとう!

答えて

3

クラスにはjax-rsアノテーションが付いており、OSGiサービスが公開されています。これがRESTリソースとしてサービスを公開する場合は、インストールするバンドルによって異なります。

このようなサービスを監視し、それらのサービスのRESTエンドポイントを作成するバンドルをインストールする必要があります。

enter link description here 少なくとも、org.amdatu.web.winkバンドルをbdnrunファイルに追加する必要があると思います。

+0

私はいくつかのバンドルを追加した(web.winkを含む)および活性化剤のクラスを作成するが、それは動作しませんしてみてください... Iあなたの援助に感謝します – xiao

+0

あなたは現在宣言的なサービスを利用しています。だから、アクティベータを使うべきではありません。コンポーネントが起動したときに何かを実行する場合は、@Activateアノテーションを使用します。 –

+0

私はそれを削除しました。まだ動作していません。 – xiao

4

org.amdatu.web.rest.winkバンドルの最新2.0.4リリースは、Felix Http Jetty 3.xではうまく動作しません。

バンドルのバージョンを2.0.3バージョンに固定すると、期待通りに動作するはずです。 org.amdatu.web.rest.winkエントリをあなたのrunbnd.bndrun -runbundlesをこの変更を行うには:

org.amdatu.web.rest.wink;version='[2.0.3,2.0.3]'

+0

これはそれだと思います。デモバンドルにも同じ問題がありました。メーリングリストを参照してください:http://lists.amdatu.org/pipermail/users/2016-May/000455.html – Jeroen

関連する問題