Я использую 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
Я скопировал файл jar postgresql во все следующие каталоги (первый и последний автоматически копируются при перезапуске).
# 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?