< Назад | Далее >

Урок 3: создание метода Java

Урок 3 посвящен созданию метода Java™.
Предварительно следует выполнить Урок 2: настройка веб-проекта, интерфейса и реализаций Java.
В этом уроке решаются следующие задачи:
  1. Сначала создается метод Java, использующий программу импорта COBOL для преобразования типов данных между источником COBOL и данными в методе Java. Откройте панель Фрагменты, нажимая на Окно > Показать панель > Фрагменты. На панели Фрагменты щелкните на J2C.
  2. Правой кнопкой мыши щелкните на Добавить метод в объект J2C Java и выберите Вставить.
  3. На странице Создать метод Java щелкните на Добавить.
  4. В поле Имя введите getCustomerInfo.
  5. На этом этапе импортируйте файл taderc25.cbl (COBOL), который нужен для создания приложения. Файл taderc25.cbl расположен в каталоге <installdir>IBM/IBMIMShared/plugins/com.ibm.j2c.cheatsheet.content/Samples/CICS/taderc25, где<installdir> - каталог, в котором установлен данный продукт. Файл COBOL содержит программу, которая запускается на сервере CICS. Имеется определение его структуры, передаваемое на сервер CICS через область сообщений (COMMAREA). Данная структура представляет записи клиента, возвращаемые из прикладной программы CICS. Перед тем, как работать с файлом, его необходимо импортировать из файловой системы в рабочую среду. Рядом с полем Тип ввода щелкните на Создать.
  6. На странице Импорт данных убедитесь, что в поле Выбрать преобразование выбрано COBOL_TO_JAVA. Щелкните на Обзор рядом с файлом COBOL
  7. Найдите в файловой системе файл taderc25.cbl и щелкните на Открыть.
    taderc25.cbl
          identification division.
           program-id. TADERC25.
           environment division.
           data division.
           working-storage section.
           01 tmp pic a(40).
           01  ICOMMAREA.
               02  ICustNo    PIC X(5).
               02  Ifiller    PIC X(11).
           01  GENCUST.
               02  GCUSTCODE PIC X(4).
               02  GFILLER PIC X(40).
           01  PREFCUST.
               02  PCUSTCODE PIC X(4).
               02  PCUSTNO    PIC X(5).
               02  ASSETS  PIC S9(6)V99.
           01  REGCUST.
               02  RCUSTCODE PIC X(4).
               02  RCUSTNO    PIC X(5).
               02  ACCOUNTNAME PIC A(10).
               02  BALANCE PIC S9(6)V99.
           01  BADCUST.
               02  BCUSTCODE PIC X(4).
               02  BCUSTNO    PIC X(5).
               02  DAYSOVERDUE PIC X(4).
               02  AMOUNT PIC S9(6)V99.
           LINKAGE SECTION.
           01 DFHCOMMAREA.
              02 inputfield pic x(50).
           procedure division.
           start-para.
               move DFHCOMMAREA to ICOMMAREA.
               IF ICustNo EQUAL '12345'
                  move 'PREC' to PCUSTCODE
                  move ICustNo to PCUSTNO
                  move 43456.33 to ASSETS
                  move PREFCUST TO DFHCOMMAREA
               ELSE IF ICustNo EQUAL '34567'
                       move 'REGC' to RCUSTCODE
                       move ICustNo to RCUSTNO
                       move 'SAVINGS' TO ACCOUNTNAME
                       move 11456.33 to BALANCE
                       move REGCUST TO DFHCOMMAREA
                    ELSE
                       move 'BADC' to BCUSTCODE
                       move ICustNo to BCUSTNO
                       move '132' to DAYSOVERDUE
                       move -8965.33 to AMOUNT
                       move BADCUST TO DFHCOMMAREA
          *         END-IF.
               END-IF.
               EXEC CICS RETURN
               END-EXEC.
  8. Нажмите кнопку Далее.
  9. На странице Программа импорта COBOL выберите структуру данных связи:
    1. Выберите Win32 для Имя платформы.
    2. Выберите ISO-8859-1 для Код страницы.
    3. Щелкните на Запросить.
    4. Выберите ICOMMAREA для Структур данных.
  10. Нажмите кнопку Далее.
  11. На странице Сохранение свойств:
    1. Выберите По умолчанию для Стиль создания.
    2. Щелкните на Обзор для выбора веб-проекта Taderc25Sample.
    3. В поле Имя пакета введите sample.cics.data
    4. В поле Имя класса значение по умолчанию ICOMMAREA; замените его InputComm.
  12. Нажмите кнопку Готово.
  13. В поле Задать тип ввода/вывода на странице Метод Java щелкните на Создать рядом с областью Тип вывода.
  14. На странице Импорт данных убедитесь, что поле Изменить преобразование выбрано COBOL_MPO_TO_JAVA.
  15. Щелкните на Создать рядом с областью вывода многих возможных вариантов.
  16. Щелкните на Обзор рядом с полем Имя Cobol-файла и найдите, где расположен файл taderc25.cbl. Щелкните на Открыть.
  17. Нажмите кнопку Далее.
  18. На странице Программа импорта COBOL выберите структуру данных связи:
    1. Выберите Win32 для Имя платформы.
    2. Выберите ISO-8859-1 для Код страницы.
    3. Щелкните на Запросить.
    4. Выберите PREFCUST, REGCUST и BADCUST для Структуры данных.
  19. Нажмите кнопку Готово. На странице Задание свойств конфигурации импорта данных будут перечислены три типа данных.
  20. Нажмите кнопку Далее.
  21. На странице Сохранение свойств будет показана установка значений по умолчанию для каждого типа клиентской записи. Убедитесь, что Taderc25Sample появилось в поле Имя проекта. Щелкните на Обзор и выберите веб-проект Taderc25Sample.
    1. На странице Задание Свойств сохранения выделите Тип COBOL-контейнера MPO.
      • Введите sample.cics.data в поле Имя пакета
      • Введите OutputComm в поле Имя класса.
      • Можно выбрать Поверх существующего класса.
    2. Откройте Сохранить свойства COBOL MPO в Java. Появятся три типа элементов привязки данных.
    3. Выделите Сохранить свойства COBOL в Java для "PREFCUST" в Файле taderc25.cbl
      • Для Стиль создания выберите По умолчанию.
      • Введите sample.cics.data в поле Имя пакета
      • Введите PrefCust в поле Имя класса.
      • Можно выбрать Поверх существующего класса.
    4. Выделите Сохранить свойства COBOL в Java для "REGCUST" в файле taderc25.cbl.
      • Введите sample.cics.data в поле Имя пакета
      • Введите RegCust в поле Имя класса.
      • Можно выбрать Поверх существующего класса.
    5. Выделите Сохранить свойства COBOL в Java для "BADCUST" в файле taderc25.cbl.
      • Введите sample.cics.data в поле Имя пакета
      • Введите BadCust в поле Имя класса.
      • Можно выбрать Поверх существующего класса.
  22. Нажмите кнопку Готово. Откройте OutputComm, и убедитесь, что PrefCust, RegCust и BadCust сохранены в поле Тип вывода.
  23. На странице Метод Java щелкните на Готово.
  24. На странице Методы Java:
    1. Введите TADERC25 (идентификатор программы COBOL) в поле functionName.
    2. Выберите Показать дополнительные параметры.
    3. Выберите SYNC_SEND_RECEIVE(1) в поле interactionVerb.
    4. Введите -1 в поле replyLength.
  25. Нажмите кнопку Готово.
  26. Поскольку возвращаемый вывод может оказаться любым типом данных, единственным способом его согласования является наличие в потоке данных некоторых заранее заданных примеров. В методе согласования шаблон опознается по совпадению.

    добавление тега doclet для шаблона распознавания

    1. Для того чтобы добавить шаблон распознавания для PrefCust, выполните следующие действия:
      • Откройте файл PrefCust.java в редакторе Java.
      • Перейдите к методу getPcustcode(). Лучший способ сделать это заключается в том, чтобы открыть панель Схема и прокручивать, пока не будет найден нужный метод.
      • В область комментариев метода добавьте тег @type-descriptor.recognition-desc pattern="PREC" или воспользуйтесь содержимым: нажмите сочетание клавиш CTRL-пробел и прокручивайте список, чтобы найти тег, а затем введите "PREC" в качестве шаблона.
      • Сохраните изменения и код PrefCust.java будет обновлен.
      • Перейдите к методу согласования и убедитесь, что изменения произошли:
        /**
        	 * @generated
        	 
        	 */
        	public boolean match(Object obj) {
        		if (obj == null)
        			return (false);
        		if (obj.getClass().isArray()) {
        			byte[] currBytes = buffer_;
        			try {
        				byte[] objByteArray = (byte[]) obj;
        				buffer_ = objByteArray;
        				if (!("PREC".equals(getPcustcode().toString())))
        					return (false);
        			} catch (ClassCastException exc) {
        				return (false);
        			} finally {
        				buffer_ = currBytes;
        			}
        		} else
        			return (false);
        		return (true);
        	}

    2. Для того чтобы добавить шаблон распознавания для RegCust, выполните следующие действия:
      • Откройте файл RegCust.java в редакторе Java.
      • Перейдите к методу getRcustcode(). И опять, лучший способ сделать это заключается в том, чтобы открыть панель Схема и прокручивать, пока не будет найден нужный метод.
      • В область комментариев метода добавьте тег @type-descriptor.recognition-desc pattern="REGC" или воспользуйтесь содержимым: нажмите сочетание клавиш CTRL-пробел и прокручивайте список, чтобы найти тег, а затем введите "REGC" в качестве шаблона.
      • Сохраните изменения и код RegCust.java будет обновлен.
      • Перейдите к методу согласования и убедитесь, что изменения произошли:
        /**
        	 * @generated
        	 
        	 */
        	public boolean match(Object obj) {
        		if (obj == null)
        			return (false);
        		if (obj.getClass().isArray()) {
        			byte[] currBytes = buffer_;
        			try {
        				byte[] objByteArray = (byte[]) obj;
        				buffer_ = objByteArray;
        				if (!("REGC".equals(getRcustcode().toString())))
        					return (false);
        			} catch (ClassCastException exc) {
        				return (false);
        			} finally {
        				buffer_ = currBytes;
        			}
        		} else
        			return (false);
        		return (true);
        	}
    3. Для того чтобы добавить шаблон распознавания для BadCust, выполните следующие действия:
      • Откройте файл BadCust.java file в редакторе Java.
      • Перейдите к методу getBcustcode(). И опять, лучший способ сделать это заключается в том, чтобы открыть панель Схема и прокручивать, пока не будет найден нужный метод.
      • В область комментариев метода добавьте тег @type-descriptor.recognition-desc pattern="BADC" или воспользуйтесь содержимым: нажмите сочетание клавиш CTRL-пробел и прокручивайте список, чтобы найти тег, а затем введите "BADC" в качестве шаблона.
      • Сохраните изменения и код BadCust.java, если он возобновлялся.
      • Перейдите к методу согласования и убедитесь, что изменения произошли:
        /**
        	 * @generated
        	 
        	 */
        	public boolean match(Object obj) {
        		if (obj == null)
        			return (false);
        		if (obj.getClass().isArray()) {
        			byte[] currBytes = buffer_;
        			try {
        				byte[] objByteArray = (byte[]) obj;
        				buffer_ = objByteArray;
        				if (!("BADC".equals(getBcustcode().toString())))
        					return (false);
        			} catch (ClassCastException exc) {
        				return (false);
        			} finally {
        				buffer_ = currBytes;
        			}
        		} else
        			return (false);
        		return (true);
        	}
< Назад | Далее >

Комментарии