Можно создать приложение для использования IMS TM
для взаимодействия с IMS с помощью
Общего интерфейса клиента (CCI).
Можно использовать код приложения, созданный в мастере J2C, в интегрированных средах Rational или WebSphere (IDE) для доступа к транзакциям IMS через IMS TM.
Кодирование не требуется, если используется этот подход. Можно также написать исходный код приложения без использования IDE.
Для самостоятельного написания кода должен использоваться интерфейс программирования CCI.
Интерфейс CCI API обеспечивает доступ клиентов Java™ EE, например, объектов EJB, страницы JavaServer Pages (JSP) и сервлетов,
к таким базовым информационным системам предприятий (EIS), как IMS.
Независимо от того, какая информационная система предприятия (EIS) используется, приложения, соответствующие модели интерфейса программирования CCI, имеют общую структуру. The J2EE Connector
В спецификации (JCA) определены два необходимых для приложения объекта:
- Объекты соединения, представляющие соединения с EIS
- Объекты ConnectionFactory, создающие эти объекты Соединений
Эти объекты позволяют серверу
приложений управлять безопасностью, контекстом транзакций и пулами
соединений, что необходимо для адаптера ресурсов.
Приложение, в котором используется
программный интерфейс
IMS TM CCI,
начинает работу с получения объекта
IMSConnectionFactory.
Объект
IMSConnectionFactory можно получить двумя способами:
- Управляемый: В случае использования сервера приложений объект IMSConnectionFactory, как правило, создают на основе адаптера ресурсов с помощью интерфейса администратора - например, консоли администрирования WebSphere Application
Server. Такого рода среда называется управляемой, поскольку она позволяет серверу приложений управлять качеством обслуживания соединений в своей среде. Например, можно создать объект фабрики соединений IMSConnectionFactory
и настроить его пользовательские свойства с помощью консоли администрирования WebSphere Application
Server.
Такие пользовательские свойства, как имя хоста и номер порта целевой системы IMS
необходимо настроить в объекте IMSConnectionFactory.
После создания объект фабрики соединений
IMSConnectionFactory можно сделать
доступным для использования любыми приложениями предприятия
посредством JNDI.
- Неуправляемый: если вы не
используете сервер приложений для управления соединением
(например, запускаете приложение как автономное приложение
Java), то такой тип
среды называется неуправляемой средой. В
конфигурации такого типа:
- Вы должны вручную создать объект
IMSManagedConnectionFactory и задать его настраиваемые
свойства. Затем из объекта IMSManagedConnectionFactory
можно создать объект IMSConnectionFActory.
- IMS TM
использует класс DefaultConnectionManager из API JCA 1.5
Connection Management для установления соединений. Этот
класс не поддерживает пулы соединений, поэтому любые
свойства пула соединений игнорируются.
IMS TM
открывает и закрывает соединение через сокет с
IMS Connect для
каждого запроса на подключение. Открытие и закрытие
соединений через сокеты вызывает дополнительную нагрузку и,
как правило, снижает производительность системы по
сравнению с управляемым сценарием. Вы можете настроить
собственную поддержку пула соединений, реализовав класс
PoolManager для использования с классом
DefaultConnectionManager. Дополнительная информация
приведена в разделе API JCA 1.5 Connection Management.
Поскольку транзакции CM0 восстанавливаемы,
IMS Connect создает
отдельный TPIPE для каждого клиента, использующего CM0. Без
функции управления пулами соединений, предоставляемой
сервером приложений, создавалось бы слишком много каналов
TPIPE, что вызывало бы перегруженность системы.
Соединения
IMS
После этого из объекта
IMSConnectionFactory можно создать
объект соединения IMSConnection.
Свойства объекта IMSConnection можно
либо указать в объекте
IMSConnectionSpec, передаваемом в
качестве параметра метода getConnection,
либо использовать значения, определенные по умолчанию в
фабрике соединений IMSConnectionFactory.
После получения экземпляра IMSConnection
из него можно создать экземпляр
IMSInteraction. Экземпляр
IMSInteraction представляет собой
взаимодействие, которое будет выполнено в этом соединении. Как и в случае с соединением, взаимодействия могут обладать пользовательскими свойствами, взятыми из класса IMSInteractionSpec.
Ввод и вывод
Для выполнения взаимодействия
приложение направляет вызов методу execute() объекта IMSInteraction,
передавая ему объекты ввода и вывода для хранения данных. Во входном сообщении в IMS должен быть создан входной массив байтов, содержащий значения каждого поля. Аналогичным образом, необходимо создать выходной массив байтов для хранения ответного сообщения, возвращаемого IMS. Значение каждого поля в выходном сообщении извлекается из выходного массива байтов.
Входные и выходные массивы байтов можно создать вручную или воспользоваться функциональностью J2C в среде разработки Rational или WebSphere для создания связываний данных Java для входных и выходных сообщений приложения CCI.
Требования к приложениям для извлечения данных из системы
IMS:
- Используйте объект IMSConnectionFactory для создания объекта IMSConnection.
- Используйте объект IMSConnection для создания объекта IMSInteraction.
- Использование объекта IMSInteraction для выполнения транзакций в базовой системе IMS.
- Закрытие объектов IMSInteraction и IMSConnection.