При использовании привязки аргументов SQL Object работает ли JDBI -из -поле -с параметрами UUID?
У меня есть такой метод:
@SqlQuery("EXECUTE [MyProcedure] :myField")
MyDto myMethod(@Bind("myField") UUID myField);
который привязан к хранимой процедуре SQL Server, которая получает такой параметр:
@myField uniqueidentifier
При выполнении выдается это исключение:
! com.microsoft.sqlserver.jdbc.SQLServerException: The conversion from UNKNOWN to UNKNOWN is unsupported.
! at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:190)
! at com.microsoft.sqlserver.jdbc.DataTypes.throwConversionError(DataTypes.java:1117)
! at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.setObject(SQLServerPreparedStatement.java:991)
Если я изменю тип параметра в JDBI на String и вызову его с помощью метода toString ()из объекта UUID, он будет работать :
@SqlQuery("EXECUTE [MyProcedure] :myField")
MyDto trash(@Bind("myField") String myField);
. Есть ли способ написать мои методы DAO, принимающие параметры UUID, и преобразовать их в строки перед привязкой?