Соединение не может быть выделено, потому что: длина идентификатора пользователя (0) находится вне диапазона от 1 до 255

Я создаю интерфейс входа в систему, используя Netbeans с JSF, EJB и JPA. Когда я пытаюсь развернуть проект, он выдает следующее исключение:

Internal Exception: java.sql.SQLException: 
Error in allocating a connection. Cause: Connection could not be allocated because: User id length (0) is outside the range of 1 to 255.
Error Code: 0. Please see server.log for more details.
C:\Users\Dell\Desktop\assignmenttask2\nbproject\build-impl.xml:1033: The module has not been deployed.
See the server log for details.

Как это вызвано и как я могу решить это?

2 ответа

Вам нужно настроить в файле persistence.xml .

<properties>
  <property name="javax.persistence.jdbc.user" value="APP"/>
  <property name="javax.persistence.jdbc.password" value="APP"/>
 </properties>

посмотреть здесь

Ответ @PSR сделал свое дело для меня, вот больше на этом:

NetBeans (воспроизведено в версии 7.4 201310111528) Мастер создания единиц измерения сопротивления JPA не требует ввода пароля для имени пользователя.
Проблема в том, что он не работает с Java DB (derby). Большая проблема в том, что вы получаете эту неловкую ошибку относительно длины идентификатора пользователя, которая является еще одним из тех действительно бесполезных сообщений об ошибках.

Таким образом, чтобы решить эту проблему, либо заново создайте модуль постоянства (persistence.xml) с паролем имени пользователя, либо добавьте две строки вручную в <properites> в XML:

<properties>
  <property name="javax.persistence.jdbc.user" value="APP"/>
  <property name="javax.persistence.jdbc.password" value="APP"/>
 </properties>

НТН

Часто проблема возникает из-за пустой строки в качестве пароля, поэтому для решения этой проблемы вы должны упомянуть '()' в атрибуте значения пароля, например, если пользователь APP и пароль не установлен, конфигурация было бы:

 <properties>
  <property name="javax.persistence.jdbc.user" value="APP"/>
  <property name="javax.persistence.jdbc.password" value="()"/>
 </properties>
Другие вопросы по тегам