Адаптер позволяет создать пользовательские привязки к данным с учетом особенностей
вашей среды. Пользовательская привязка к данным - это написанный пользователем класс Java для
преобразования потока данных в бизнес-объект во время обработки ввода и бизнес-объекта в поток
данных во время обработки вывода.
Операции экспорта и импорта информационной системы предприятия (EIS) и JMS можно настроить таким
образом, чтобы они вызывали пользовательские привязки к данным.
Об этой задаче
Об этой задаче
Для создания пользовательской привязки
к данным выполните следующую процедуру.
Инструкции по выполнению задачи
Инструкции по выполнению задачи
- Для реализации пользовательской привязки к данным используйте интерфейс
commonj.connector.runtime.RecordHolderDataBinding. Этот интерфейс расположен в файле commonj.connector.jar, содержащемся в
динамических библиотеках WebSphere Process Server.
- При создании пользовательской привязки к данным используйте приведенную ниже информацию о
вводе или выводе.
- Для преобразования потока данных в бизнес-объект во время обработки ввода
адаптер вызывает методы public void setRecord(Record arg0) и public DataObject getDataObject()
пользовательской привязки к данным. Вначале вызывается setRecord, а затем - getDataObject.
- Метод setRecord получает в качестве параметра объект com.ibm.j2ca.base.UnstructuredRecord.
Этот класс содержится в файле jar классов Adapter Foundation.
С помощью этого метода привязке пользовательских данных отправляется запись о бизнес-объекте в
виде текста или массива байт (byte[]). Также передается другая необходимая информация.
- Метод getDataObject() получает запись о бизнес-объекте в указанном выше формате, выполняет
необходимое преобразование данных и возвращает бизнес-объект.
- Метод getRecordName() из неструктурированной записи получает полное имя пространства имен, с
помощью которого можно инициализировать бизнес-объект и получить необходимый ASI в аннотации (как
указано на шаге 3).
Этот ASI применяется привязкой к данным. Например:
recordName =
http://www.ibm.com/xmlns/prod/websphere/j2ca/ftp/customerwrapperbg/CustomerWrapperBG
namespace
= http://www.ibm.com/xmlns/prod/websphere/j2ca/ftp/customerwrapperbg
object
name = CustomerWrapperBG
- Для преобразования бизнес-объекта в поток данных во время обработки вывода
адаптер вызывает методы public void setDataObject(DataObject dataObject) и public Record
getRecord() пользовательской привязки к данным. Вначале вызывается setDataObject, а затем -
getRecord.
- Метод setDataObject получает в качестве параметра бизнес-объект. Метод getRecord должен
создавать вывод типа com.ibm.j2ca.base.UnstructuredRecord.
- Информация о приложении берется из входного бизнес-объекта, как указано на шаге 3.
- Метод getRecord выполняет необходимое преобразование и возвращает данные в виде
неструктурированной записи.
Пример данных EIS для текста с ограничителями: Employee~Create~sarath~IBM~Bangalore~560071
Схема бизнес-объекта:
complexType name="Employee"
sequence maxOccurs="1" minOccurs="1"
element maxOccurs="1" minOccurs="0" name="name" type="string"/
element maxOccurs="1" minOccurs="0" name="company" type="string"/
element maxOccurs="1" minOccurs="0" name="city" type="string"/
element maxOccurs="1" minOccurs="0" name="zip" type="string"/
/sequence
/complexType
- Для получения информации о приложении из аннотации к бизнес-объекту используйте файл
CWYBS_AdapterFoundation.jar, содержащий класс com.ibm.j2ca.base.AdapterBOUtil.
Этот класс содержит метод для получения информации о приложении из бизнес-объекта.
- Для получения отдельных значений из аннотации используйте методы API приложения бизнес-объекта. Вывод представляет собой бизнес-объект с информацией о приложении.
- В случае ввода инициализируйте бизнес-объект с помощью значения
recordName, содержащегося в неструктурированной записи.
- В случае вывода вызовите метод getMetadataForObject(), передав
бизнес-объект в качестве параметра.
Что делать дальше
Что делать дальше
Настройте пользовательские привязки
к данным, следуя подробным инструкциям из файла
каталог-установки-WPS\samples\doc\CustomEISDataBinding\index.html.