Как правильно включить имя схемы в URL-адрес строки подключения Exasol?
Я использую Hibernate для подключения к базе данных Exasol с помощью Exasol Hibernate Dialect. Когда я использую следующий файл persistence.xml, все работает нормально:
<persistence-unit name="exasol">
<description>exasol</description>
<provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
<properties>
<property name="javax.persistence.jdbc.driver" value="com.exasol.jdbc.EXADriver" />
<property name="javax.persistence.jdbc.url" value="jdbc:exa:192.168.6.11:8563" />
<property name="javax.persistence.jdbc.user" value="user" />
<property name="javax.persistence.jdbc.password" value="pass" />
<property name="hibernate.dialect" value="com.incuda.config.ExasolDialect"/>
<property name="hibernate.default_schema" value="my_schema" />
</properties>
</persistence-unit>
Но теперь я не хочу использовать следующее свойство по некоторым внутренним причинам (например, по этой причине):
<property name="hibernate.default_schema" value="my_schema" />
и замените его, включив имя схемы в URL-адрес строки подключения, как это было предложено в руководстве пользователя EXASolution, стр. 349 (URL-адрес загрузки):
<property name="javax.persistence.jdbc.url" value="jdbc:exa:192.168.6.11:8563;schema=my_schema" />
Но когда я это делаю, я получаю следующее исключение:
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: -1
at java.lang.String.substring(String.java:1967)
at com.incuda.config.ExasolIdentityColumnSupport.getIdentitySelectString(ExasolIdentityColumnSupport.java:25)
Итак, как правильно включить имя схемы в URL-адрес строки подключения Exasol?