Я разрабатываю для Websphere 8.5 (для z/OS), но я хотел бы использовать Liberty для локальной разработки на моем компьютере с Windows. Я не могу заставить источник данных работать.
Я создал следующую запись в Server.xml для определения источника данных.
<library id="DB2JCC2Lib">
<fileset dir="C:\Program Files\IBM\SQLLIB\java"/><!--includes="db2jcc.jar db2jcc_license_cu.jar db2jcc_license_cisuz.jar"-->
</library>
<dataSource id="xxdb" jndiName="jdbc/xxxx" type="javax.sql.ConnectionPoolDataSource">
<jdbcDriver libraryRef="DB2JCC2Lib" id="db2-driver" javax.sql.ConnectionPoolDataSource="com.ibm.db2.jcc.DB2ConnectionPoolDataSource"/>
<properties.db2.jcc driverType="2" databaseName="xxxx" portNumber="50000" user="xxxx" password="{aes}xxxx"/>
</dataSource>
Когда мое приложение инициализируется, я получаю следующее сообщение об ошибке:
[jcc][4038][12241][3.61.65] Исключение T2LUW: SQL30081N Kommunikationsfehler. Протокол связи Vervendetes: "TCP/IP". Verwendete Kommunikations-API: "РАЗЪЕМЫ". Должность, an der Fehler erkannt wurde: «127.0.0.1». Übertragungsfunktion, die den Fehler festgestellt hat: «подключение». Protokollspezifische(r) Fehlercode(s): "10061", "", "". SQLSTATE=08001
Я думаю, что это сообщение исходит от драйвера db2, к сожалению, я пока не нашел способа изменить его на английский язык; но я думаю, что это понятно для англоговорящих.
У меня есть источник данных системы ODBC, который подключается к уровню обслуживания 015 DB2 v10 для z/OS. Моя локальная установка DB2 Connect — v9.7.300.3885.
В моей обычной Websphere мой рабочий источник данных имеет тип драйвера 2, имя базы данных установлено на имя odbc и номер порта 50000. Имя сервера не установлено (пусто). Путь к классам и класс реализации такие же, как и в server.xml.
Я пробовал все, что мог найти, есть идеи?
Примечание. Я не могу вносить изменения на сервере db2, и нет проблем с подключением к базе данных с помощью других инструментов и обычной WebSphere. Также имя сервера в конфигурации websphere пусто, задано только имя базы данных. Когда я попытался установить имя сервера в server.xml на localhost или сервер db2, я получил тот же результат.
Любая помощь приветствуется!
Изменить: обновлено с правильной информацией о версии
Редактировать 2: Пока это работает, мне все равно, какой тип (2 или 4) драйвера jdbc используется. Я просто хочу еще раз указать, что тип 2 в настоящее время работает на моей машине. Я попробовал это с типом 4 и получил следующее сообщение:
[jcc][t4][2043][11550][3.61.65] Исключение java.net.ConnectException: ошибка при открытии сокета на сервер xxx/xxx.30.3.34 через порт 50 000 с сообщением: Отказано в подключении: подключение. ERRORCODE=-4499, SQLSTATE=08001 DSRA0010E: состояние SQL = 08001, код ошибки = -4499