我想在项目中直接使用jdbc进行服务组合。我尝试用以下命令安装ojdbc7.jar
包:安装包装:文件:f:/tmp/ojdbc7.jar
启动后,我得到264 | Active | 80 |0| wrap_file_F__tmp_ojd bc7.jar
我的代码是:
try (final Connection con = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521/orcl2", "bla", "bla")) {
String sql = "Insert INTO message values('" + fall.getMessageid() + "','" + fall.getXml() + "')";
final Statement statement = con.createStatement();
statement.executeUpdate(sql);
} catch (Exception e) {
String msg = "Error while trying to persist Fall with msgid " + fall.getMessageid();
log.error(msg, e);
throw new AdvisException(msg, e);
}我得到java.sql.SQLException:找不到适合jdbc的驱动程序:oracle:thin:@localhost:1521/orcl2
我需要添加一些额外的配置吗?
编辑:
我想我必须以某种方式在MANIFEST.MF中导入已安装的包
问题1:
我已经声明了依赖项
<dependency>
<groupId>com.oracle</groupId>
<artifactId>oracle-jdbc</artifactId>
<version>6.0.0</version>
</dependency>并使用
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>2.5.3</version>
<extensions>true</extensions>
<configuration>
<instructions>
<Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
<Import-Package>*</Import-Package>
<Private-Package>de.iteos</Private-Package>
</instructions>
</configuration>但是ojdbc6没有显示导入:
Import-Package: javax.jws,javax.xml.bind,javax.xml.bind.annotation,javax
.xml.bind.annotation.adapters,javax.xml.datatype,javax.xml.namespace,ja
vax.xml.parsers,javax.xml.transform,javax.xml.transform.stream,javax.xm
l.ws,javax.xml.xpath,org.apache.activemq,org.apache.activemq.camel.comp
onent,org.apache.camel;version="[2.16,3)",org.slf4j;version="[1.7,2)",o
rg.w3c.dom,org.xml.sax为什么?
问题2:安装后捆绑包的名称可能不兼容,如何更改?
发布于 2019-07-01 19:49:58
我已经通过将ojdbc驱动程序复制到apache-servicemix-7.0.1\lib\ext解决了这个问题
https://stackoverflow.com/questions/56805721
复制相似问题