WebSphere Application Server поддерживает механизм <resource-env-ref>, предлагая административные объекты-провайдеры ресурсов, которые конфигурируются с помощью административных инструментов в следующем порядке.
1. Resource environment provider (Провайдер среды ресурсов).
Данный провайдер описывает административный объект, объединяющий в себе такие объекты, как Referenceable и Resource environment entry, и все необходимые настраиваемые свойства.
Выбранная область действия определяет, в какой конфигурационный файл resources.xml будет занесен раздел, содержащий конфигурацию провайдера:
<resources.env:ResourceEnvironmentProvider
xmi:id=»ResourceEnvironmentProvider_1» name=»ИмяПровайдераРесурсов»/>
2. Referenceable (Объект для ссылок).
Этот объект определяет имя класса фабрики, который возвращает экземпляры объектов, реализующих Java-интерфейс.
Конфигурация объекта Referenceable добавляется в раздел провайдера файла resources.xml, соответствующего выбранной области действия, как показано в примере 6.7.
Пример 6.7. Объект Referenceable
<resources.env:ResourceEnvironmentProvider
xmi:id="ResourceEnvironmentProvider_1" name="ResProviderName"> <referenceables xmi:id=»Referenceable_1»
factoryClassname=»com.ibm.itso.test.LogWriterFactory» classname=»com.ibm.itso.test.LogWriter»/> </resources.env:ResourceEnvironmentProvider>
3. Resource environment entry (Элемент среды ресурсов).
Указывается цель для привязок (JNDI-имя), класс фабрики и тип возвращаемого объекта (с помощью ссылки на Referenceable) для элемента среды ресурсов.
Конфигурация объекта Referenceable добавляется в раздел провайдера файла resources.xml, соответствующего выбранной области действия, как показано в примере 6.8.
Пример 6.8. Элемент среды ресурсов
<resources.env:ResourceEnvironmentProvider
xmi:id=»ResourceEnvironmentProvider_1» name=»ResProviderName»> <factories xmi:type="resources.env:ResourceEnvEntry"
xmi:id="ResourceEnvEntry_1" name="MyLogWriter" jndiName="myapp/MyLogWriter" referenceable="Referenceable_1"/>
<referenceables xmi:id=»Referenceable_1»
factoryClassname=»com.ibm.itso.test.LogWriterFactory» classname=»com.ibm.itso.test.LogWriter»/> </resources.env:ResourceEnvironmentProvider>