Адаптер позволяет создавать пользовательские привязки данных для потребностей текущей среды.
Пользовательская привязка данных - это класс 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 базовых классов адаптера.
Запись бизнес-объекта передается в пользовательскую привязку данных в этом методе как текст или 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.