Я написал модульный тест для подключения к Amazon Redshift. Поскольку он недоступен, я использую это docker изображение для проверки соединения: https://hub.docker.com/r/guildeducation/docker-amazon-redshift/
Когда я пытаюсь подключиться через Jdb c к этому docker экземпляру У меня всегда есть эта ошибка:
[Amazon][JDBC](11380) Exception : pointeur Null.
java.sql.SQLException: [Amazon][JDBC](11380) Exception : pointeur Null.
at com.amazon.redshift.client.PGClient.startSession(Unknown Source)
at com.amazon.redshift.client.PGClient.<init>(Unknown Source)
at com.amazon.redshift.core.PGJDBCConnection.connect(Unknown Source)
at com.amazon.jdbc.common.BaseConnectionFactory.doConnect(Unknown Source)
at com.amazon.jdbc.common.AbstractDriver.connect(Unknown Source)
У меня нет источника, поэтому я не знаю, что вызвало NPE.
Вот простой тест, который я написал (это kotlin):
@Test fun `connection to redshift test`() {
val dataSource = DriverManagerDataSource().apply {
setDriverClassName("com.amazon.redshift.jdbc4.Driver")
url = "jdbc:postgresql://localhost:5439/report"
username = "postgres"
password = "postgres"
}
val jdbcTemplate = JdbcTemplate(dataSource)
jdbcTemplate.query("SELECT * from my_table", RowMapper { rs, rowNum ->
})
}
Я пытался переключать драйверы, как указано в документации https://docs.aws.amazon.com/redshift/latest/mgmt/configure-jdbc-connection.html#download -jdb c -driver , но ошибка все еще та же
Проще говоря, подключение к базе данных с драйвером postgresql работает отлично. Но поскольку мы собираемся развернуть наше приложение в aws с Redshift в качестве базы данных, я хотел протестировать свой код перед развертыванием.
Любая помощь будет принята