Я пытаюсь использовать PostgreSQL Array varchars с Hibernate Converter.Мой метод конвертации
@Override
public Array convertToDatabaseColumn(List<String> attribute) {
if (attribute == null) return null;
try {
DataSource dataSource = StaticContextHolder.getBean(DataSource.class);
Connection conn = dataSource.getConnection();
Array varchar = conn.createArrayOf("varchar", attribute.toArray());
return varchar;
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
Это прекрасно работает, но при сохранении давка за исключением.Ниже выводится лог.
Hibernate:
insert
into
level
(codes, markdown, name,
order, id)
values
(?, ?, ?, ?, ?)
2018-10-19 00:06:58.967 TRACE 9868 --- [nio-8080-exec-3] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [UNKNOWN(979166392)] - [{"foo","bar","buzz"}]
2018-10-19 00:06:58.967 WARN 9868 --- [nio-8080-exec-3] o.h.engine.jdbc.spi.SqlExceptionHelper : SQL Error: 0, SQLState: 07006
2018-10-19 00:06:58.971 ERROR 9868 --- [nio-8080-exec-3] o.h.engine.jdbc.spi.SqlExceptionHelper : Unsupported Types value: 979,166,392
или то же самое с другим массивом
Hibernate:
insert
into
level
(codes, markdown, name,
order, id)
values
(?, ?, ?, ?, ?)
2018-10-19 00:13:15.174 TRACE 9868 --- [nio-8080-exec-8] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [UNKNOWN(979166392)] - [{"123","321"}]
2018-10-19 00:13:15.175 WARN 9868 --- [nio-8080-exec-8] o.h.engine.jdbc.spi.SqlExceptionHelper : SQL Error: 0, SQLState: 07006
2018-10-19 00:13:15.175 ERROR 9868 --- [nio-8080-exec-8] o.h.engine.jdbc.spi.SqlExceptionHelper : Unsupported Types value: 979,166,392