在 WSO2ei 中找不到适合 jdbc:postgresql 的驱动程序



我正在使用wso2ei并从碳应用程序中创建了一个计划作业。我面临的问题是,在 wso2 重新启动后,该作业无法连接到本地 postgresql 数据库,并出现以下错误:

TID: [-1] [] [2018-07-04 22:09:17,319] ERROR {org.wso2.carbon.ntask.core.impl.TaskQuartzJobAdapter} -  Error in executing task: null {org.wso2.carbon.ntask.core.impl.TaskQuartzJobAdapter}
java.lang.ExceptionInInitializerError
...
Caused by: org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]
...
Caused by: org.hibernate.exception.JDBCConnectionException: Error calling DriverManager#getConnection
...
Caused by: java.sql.SQLException: No suitable driver found for jdbc:postgresql://127.0.0.1:5432/dbanme

我已经在以下所有目录中复制了 postgresql jar 文件(重新启动时自动复制的第一个和最后一个(。

# find ./* -name 'postgresql*.jar'
./dropins/postgresql_42.1.4_1.0.0.jar
./lib/endorsed/postgresql-42.1.4.jar
./lib/postgresql-42.1.4.jar
./repository/axis2/client/lib/postgresql-42.1.4.jar
./repository/components/lib/postgresql-42.1.4.jar
./samples/axis2Client/lib/postgresql-42.1.4.jar
./wso2/broker/repository/lib/postgresql-42.1.4.jar
./wso2/components/plugins/postgresql-42.1.4.jar
./wso2/components/default/configuration/org.eclipse.osgi/bundles/619/1/.cp/postgresql-42.1.4.jar

解决问题的一件事是 进入Home > Configure > Datasources,编辑自定义数据源,点击Test connection,一切都恢复正常,不再有错误,连接从任何地方工作。

是否有应该放置 jar 文件的特定位置?

通常,在配置 WSO2 数据源或开发数据服务时,只需将 jdbc 驱动程序放在/lib 文件夹中。当您启动服务器时,jar 将重新打包到 osgi 捆绑包中,并复制到/dropins 文件夹中。 因此,请尝试删除您之前放置的所有 jar,并将正确的 jar 复制到 lib 文件夹并尝试启动服务器。

最新更新