sqlserver-databaseをエンドポイントとして使用してラクダルートを作成しようとしています。 OSGiでデータソースを統合する一般的な方法は、それらをOSGiサービスとしてエクスポートすることです。sqljdbc4をOSGiサービスとしてエクスポート
私はH2メモリ内のデータベースを使用して、サービスとして正常にエクスポートしました。私はSQL Serverで同じことをしようとしたが、いくつかの問題が発生しました。
私は、SQL ServerのJDBCドライバをダウンロードし、そのように私の地元のMavenリポジトリに.jarファイルを追加しました:
$ mvn install:install-file -Dpath=<path-to-jar>
-DgroupId=com.microsoft.sqlserver -DartifactId=sqljdbc4 -Dversion=4.0.2206
-Dpackaging=jar
私は、その後のpom.xmlを作成することにより、OSGiのバンドルでの.jarをラップするために進んでそのよう:
:<?xml version="1.0" encoding="utf-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.microsoft</groupId>
<artifactId>sqljdbc4-osgi-bundle</artifactId>
<version>1.0-SNAPSHOT</version>
<name>SQL Server JDBC Driver</name>
<packaging>bundle</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>2.3.7</version>
<extensions>true</extensions>
<configuration>
<instructions>
<Embed-Dependency>*</Embed-Dependency>
<_exportcontents>
com.microsoft.sqlserver.jdbc.*
, microsoft.sql.*
</_exportcontents>
</instructions>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>sqljdbc4</artifactId>
<version>4.0.2206</version>
</dependency>
</dependencies>
</project>
私は正常ので、私は私のサービスの青写真を作成するために、先に行きKarafにバンドルをインストールすることができました210
今、青写真を/ deployにコピーしても何も起こらず、バンドルはインストールされず、ログには何も格納されません。私がH2データソースに対して同じことをしたときに、バンドルがインストールされました。
私は深く、この問題に関する任意のヘルプをお願い申し上げますJBossのヒューズ6.2.1、ラクダバージョン2.15.1およびKaraf 2.4.0
を使用しています。
kluafのblueprint.xmlがバンドルとして表示されていますか? –
@ChristianSchneider、H2データソースの場合はyesですが、SQL Serverの場合はありません。私はドライバーを正しくラッピングするのに苦労したかもしれないとは思いますが、わかりません。 – noMad17
wrap:mvn:protocol –