2

私はOSGi(具体的にはKaraf)を介してJerseyを使用しようとしています。これを行うために、このバンドルjarをMavenからダウンロードし、Karafデプロイディレクトリに配置しました。ただし、バンドルを開始しようとすると、依存関係を解決できませんでした。また、各依存関係のバージョン0.0.0を探しているようでしたが、これは間違っているようです。

このバンドルをプロジェクトに組み込むための最良の方法は何ですか?すべての依存関係を手動でダウンロードする必要がありますか、それともこのバンドルを含む既存のOBRを使用できますか?これはどこにありますか?

4

2 に答える 2

8

jersey-bundleの代わりにこの依存関係を使用して問題なくJerseyとKarafを使用しました。

<!-- Jersey -->
<dependency>
    <groupId>com.sun.jersey</groupId>
    <artifactId>jersey-core</artifactId>
    <version>1.12</version>
</dependency>

<dependency>
    <groupId>com.sun.jersey</groupId>
    <artifactId>jersey-server</artifactId>
    <version>1.12</version>
</dependency>

<dependency>
    <groupId>com.sun.jersey</groupId>
    <artifactId>jersey-json</artifactId>
    <version>1.12</version>
</dependency>   

<dependency>
    <groupId>javax.ws.rs</groupId>
    <artifactId>jsr311-api</artifactId>
    <version>1.1.1</version>
</dependency> 

私は最後のKarafApacheコンソールでテストしましたが、これでうまくいきました。

$ bin/karaf
  Apache Karaf (2.2.5)

karaf@root> install mvn:com.sun.jersey/jersey-core/1.12
Bundle ID: 49
karaf@root> install mvn:com.sun.jersey/jersey-server/1.12
Bundle ID: 50
karaf@root> install mvn:javax.ws.rs/jsr311-api/1.1.1
Bundle ID: 51
karaf@root> install mvn:com.sun.jersey/jersey-json/1.12
Bundle ID: 52
karaf@root> install mvn:org.codehaus.jackson/jackson-core-asl/1.9.5
Bundle ID: 53
karaf@root> install mvn:org.codehaus.jackson/jackson-jaxrs/1.9.5
Bundle ID: 54
karaf@root> install mvn:org.codehaus.jackson/jackson-mapper-asl/1.9.5
Bundle ID: 55
karaf@root> install mvn:org.codehaus.jettison/jettison/1.1
Bundle ID: 56
karaf@root> start 49 50 51 52 53 54 55 56
karaf@root> list 
   ID   State         Blueprint      Level  Name
[  49] [Active     ] [            ] [   60] jersey-core (1.12)
[  50] [Active     ] [            ] [   60] jersey-server (1.12)
[  51] [Active     ] [            ] [   60] jsr311-api (1.1.1)
[  52] [Active     ] [            ] [   60] jersey-json (1.12)
[  53] [Active     ] [            ] [   60] Jackson JSON processor (1.9.5)
[  54] [Active     ] [            ] [   60] JAX-RS provider for JSON content type, using Jackson data binding (1.9.5)
[  55] [Active     ] [            ] [   60] Data mapper for Jackson JSON processor (1.9.5)
[  56] [Active     ] [            ] [   60] jettison (1.1)
于 2012-03-28T11:48:18.757 に答える
1

Karaf(3.0.1)でも試してみましたが、うまくいきました。ブループリント(features.xml内)を使用し、次の3つのJARをバンドルとして機能に追加しました。RESTサービスでのJSON変換にのみ必要でした。

<feature name="feature-name-test" version="${pom.version}">
  ....
  <bundle>mvn:org.codehaus.jackson/jackson-core-asl/${jackson.version}</bundle
  <bundle>mvn:org.codehaus.jackson/jackson-mapper-asl/${jackson.version}</bundle>
  <bundle>mvn:org.codehaus.jackson/jackson-jaxrs/${jackson.version}</bundle>
  ....
</feature>

ここで、$ {jackson.version}は、pom.xml(私の場合は1.9.0)で定義されたプロパティです。Karafコンソールからインストールするだけでも同じように機能します。

于 2014-07-09T11:50:51.760 に答える