如何在Mule ESB服务器上为jdbc设置合适的驱动程序?

如何在Mule ESB服务器上为jdbc设置合适的驱动程序?,jdbc,mule,mule-studio,sqlexception,Jdbc,Mule,Mule Studio,Sqlexception,你好。 我在Anypoint Studio中创建了一个Mule应用程序,在其中我向Oracle和MsSQL数据库发出了请求。 当我在本地机器上运行应用程序时,运行正常,没有问题。 现在,我正在尝试在独立服务器上的文件夹C:\mule-standalone-3.4.0\app中部署应用程序。已成功部署应用程序。 之后,我尝试向web服务发出请求,但出现错误: java.sql.SQLException:未找到适合jdbc:sqlserver的驱动程序: // 应用程序文件夹中有sqljdbc4-4

你好。 我在Anypoint Studio中创建了一个Mule应用程序,在其中我向Oracle和MsSQL数据库发出了请求。 当我在本地机器上运行应用程序时,运行正常,没有问题。 现在,我正在尝试在独立服务器上的文件夹C:\mule-standalone-3.4.0\app中部署应用程序。已成功部署应用程序。 之后,我尝试向web服务发出请求,但出现错误:

java.sql.SQLException:未找到适合jdbc:sqlserver的驱动程序: //

应用程序文件夹中有sqljdbc4-4.0.jar和ojdbc6-11.2.0.jar…\lib: 我刚刚在这里读了这篇文章 我在配置文件中添加了以下字符串:

<spring: beans>
     <spring: bean id = "jdbcDataSource" class = "org.enhydra.jdbc.standard.StandardDataSource" name = "jdbcDataSource">
         <spring: property name = "url" value = "jdbc: sqlserver: // MYSERV: 1433; databaseName = MYDB" />
         <spring: property name = "driverClassName" value = "com.microsoft.sqlserver.jdbc.SQLServerDriver" />
         <spring: property name = "username" value = "user_login" />
         <spring: property name = "password" value = "PASS" />
     </ spring: bean>
<spring: bean id = "jdbcDataSource" class = "org.enhydra.jdbc.standard.StandardDataSource" name = "jdbcDataSource">
         <spring: property name = "url" value = "jdbc: oracle: thin: @ // MYSERVER.is.loc: 1521 / ORACLEINST" />
         <spring: property name = "driverClassName" value = "oracle.jdbc.driver.OracleDriver" />
         <spring: property name = "username" value = "user_login" />
         <spring: property name = "password" value = "PASS" />
     </ spring: bean>
</ spring: beans>
之后,应用程序无法部署到服务器上,出现以下错误:

org.springframework.beans.factory.parsing.Bean定义ParsingException: 配置问题:Bean名称“jdbcDataSource”已在中使用 这个元素

请帮助部署能够访问数据库的应用程序。
我需要在配置中添加什么,或者有其他方法允许应用程序与DBs通信?

将此依赖项添加到pom.xml中

    <dependency>
        <groupId>com.oracle.jdbc</groupId>
        <artifactId>ojdbc6</artifactId>
        <version>11.2.0.2.0</version>
    </dependency>

我可以看到您已经创建了两个bean:一个用于mssql,另一个用于oracle数据库。但是您已经将这两个spring bean命名为“jdbcDataSource”,这会混淆spring。我建议更改它们的名称和引用,以获得合适的名称,如“msqlDataSource”和“oracleDataSource”。

通过将ojdbc6-11.2.0.jar砦sqljdbc4-4.0.jar添加到C:\mule-standalone-3.4.0\lib\muleThank中来解决这个问题,谢谢您的回复。当然,我在pom.xml中有这些依赖项:commons dbcp commons dbcp 1.2.2 com.microsoft.sqlserver sqljdbc4.0 com.oracle ojdbc6 11.2.0