Мне нужно вызвать функцию Postgresql с параметром hstore.
Я называю это так:
@Repository
public interface DocumentRepo extends JpaRepository<DokumentInstancja, Integer> {
@Query(value = "SELECT * FROM gabinet.test(?)", nativeQuery = true)
public Integer test(HStore mapa);
}
Где HStore - мой класс упаковки:
@Convert(converter = MyHStoreConverter.class)
public class HStore extends HashMap<String, String> {
public HStore() {
super();
}
public HStore(Map map) {
super(map);
}
}
Я использовал Converter, как предлагалось в других вопросах, связанных с stackoverflow, но там он использовался для полей, а не для классов. Но в моем случае карта не является полем любого другого объекта.
Ошибка, которую я получил:
2018-09-03 15:24:17.864 TRACE 13288 --- [nio-8080-exec-3] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [VARBINARY] - ["key1"=>"val1","key2"=>"val2"]
2018-09-03 15:24:17.865 WARN 13288 --- [nio-8080-exec-3] o.h.engine.jdbc.spi.SqlExceptionHelper : SQL Error: 0, SQLState: 42883
2018-09-03 15:24:17.865 ERROR 13288 --- [nio-8080-exec-3] o.h.engine.jdbc.spi.SqlExceptionHelper : ERROR: function gabinet.test(bytea) does not exist
Кто-нибудь может предложить решение моей проблемы?
Заранее спасибо.