Конвертировать карту в HStore - PullRequest
0 голосов
/ 03 сентября 2018

Мне нужно вызвать функцию 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

Кто-нибудь может предложить решение моей проблемы? Заранее спасибо.

...