API Java IMS Connect: ошибка HWS0008E
Мне нужно подключиться к IMS Connect через Java, используя API IMS Connect.
Я настроил Websphere с помощью адаптера ресурсов TM и развернул проект IVP. Отлично работает.
Поскольку мы хотим избежать лицензирования для Websphere и Rational (что необходимо для правильного использования адаптера ресурсов), я также опробовал простой API Java IMS Connect.
Я следовал инструкциям здесь и настроил Проект и Кодекс.
Начальное подключение к хосту работает, но выполнить команду не удается с кодом ошибки HWS0008E (см. Также: HWS0008E).
Причиной ошибки является EOFException, полная трассировка стека:
12.03.2015 11:36:36 com.ibm.ims.connect.impl.ConnectionImpl receive
SEVERE: IOException caught in Connection.receive(). Exception caught was: com.ibm.ims.connect.ImsConnectCommunicationException: HWS0008E: Failed to send or receive messages to and from IMS Connect hostName [host], portNumber [port]. Original error: [EOFException]
com.ibm.ims.connect.ImsConnectCommunicationException: HWS0008E: Failed to send or receive messages to and from IMS Connect hostName [host], portNumber [port]. Original error: [EOFException]
at com.ibm.ims.connect.impl.ConnectionImpl.receive(ConnectionImpl.java:1609)
at com.ibm.ims.connect.impl.TmInteractionImpl.execute(TmInteractionImpl.java:660)
at Main.main(Main.java:66)
Что я заметил, так это то, что в настройках фабрики соединений я могу установить имя пользователя и пароль, в то время как соединение запрашивает пользователя "RACF".
Я подозреваю, что Connect API не поддерживает тип Аутентификации (просто обычный пользователь и пароль хоста), который мы используем, но адаптер ресурсов поддерживает.
Кто-нибудь имеет какой-либо опыт в этом вопросе и может помочь мне с любыми советами или советами? Заранее спасибо.
1 ответ
Похоже, вы пытаетесь вызвать транзакцию IMS, избегая проблем с лицензией или стоимости. Есть несколько способов сделать это, и TMRA, и SOAP Gateway зависят (если вы не хотите вручную генерировать контент, который можете) от инструментов из RAD, для которых потребуется лицензия.
TMRA можно использовать в качестве отдельного API, аналогично тому, как работает API IMS Connect, а также есть функция Mobile, которая позволяет включать транзакции в качестве служб REST, для которых требуется только лицензия IMS, которая у вас уже есть; это ваши бесплатные варианты. Я рекомендую вам взглянуть на мобильный пакет функций, он включает в себя среду выполнения и инструменты затмения.
Что касается ошибки IMS Connect HWS00008E, то это связано с тем, что IMS Connect должен быть включен с RACF=Y, а API IMS Connect отправляет учетные данные RACF по умолчанию:
RACF ID = "RACFUID"
RACF Password = "RACFPSWD"
RACF Group = "РАКФГРУП"
Итак, обратитесь к администратору IMS и попросите их ввести действительные учетные данные RACF, затем установите их либо прагматично, либо в файле свойств TmInstruction, или, если на самом деле RACF не включен для этого IMS Connect (RACF=N), попробуйте установить для учетных данных значение 8 заготовки вроде так:
public final static String BLANK_USERID = "";
setRacfUserId (BLANK_USERID);
setRacfPassword (BLANK_USERID);
setRacfGroupName ("");
Есть лучшие места, чтобы получить ответ на это, я просто случайно наткнулся на это. Свяжитесь со мной, если у вас есть дополнительные вопросы или вы хотите, чтобы я связался с теми, кто владеет этими продуктами.
Попробуйте список рассылки, отслеживаемый сотрудниками IBM IMS: http://imslistserv.bmc.com/scripts/wa-BMC.exe?INDEX