骆驼捕获jdbc异常ClassNotFound在karaf上运行

时间:2015-11-16 13:32:23

标签: java maven exception jdbc apache-camel

我正在尝试捕获jdbc无法获取连接时抛出的骆驼路由中的异常

org.springframework.jdbc.CannotGetJdbcConnectionException

要做到这一点,我得到了以下骆驼蓝图路线

[...]
<doTry>
    <to uri="sql:UPDATE log SET field = :#value" />
    <doCatch>
        <exception>org.springframework.jdbc.CannotGetJdbcConnectionException</exception>
        <process ref="exceptionProcessor"></process>
    </doCatch>
</doTry>
[...]

但现在我得到了

java.lang.ClassNotFoundException: org.springframework.jdbc.CannotGetJdbcConnectionException

我已经尝试添加依赖项

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-jdbc</artifactId>
    <version>4.2.3.RELEASE</version>
</dependency>

在我的pom.xml中或者在maven-bundle-plugin中导入包

<Import-Package>org.springframework.jdbc.*;*</Import-Package>

两者都不起作用。

我现在只能捕获'java.lang.Exception'。我怎么能用

做到这一点
org.springframework.jdbc.CannotGetJdbcConnectionException

异常?

1 个答案:

答案 0 :(得分:-1)

你缺少连接器?

在这里下载mysql http://dev.mysql.com/downloads/connector/j/

即使您从maven导入了jbdc,您仍然需要在maven中包含mysql连接器的连接器,(如果您使用maven,则无需下载上面的链接)

    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.9</version>
    </dependency>

如果您不使用mysql,则需要连接到不同类型的数据库的其他依赖项。