Портлет Struts. Информация о выпуске

© Copyright International Business Machines Corporation 2006. Все права защищены. Ограниченные права пользователей государственных учреждений США - Использование, копирование или обнародование регламентируется Контрактом GSA ADP с IBM® Corp.

Информация о выпуске

1.0 Ограничения
   1.1 Теги шаблонов Struts плохо поддерживаются в инструментах портлетов Struts
   1.2 Разработка портлетов Struts tiles не поддерживается в инструментах портлетов Struts
2.0 Известные неполадки и способы их обхода
   2.1 При импорте примеров портлетов Struts может возникать ошибка: не определена среда выполнения
   2.2 В проекте проекта Struts tiles не работает поддержка шаблонов динамических страниц

1.0 Ограничения

1.1 Теги шаблонов Struts плохо поддерживаются в инструментах портлетов Struts

При разработке проекта портлета Struts необходимо учитывать, что теги шаблонов Struts плохо поддерживаются в инструментах портлетов Struts.

  1. При добавлении тега шаблонов Struts из палитры на Web-страницу инструмент неверно генерирует директиву taglib Struts для пользователя:
    <%@taglib uri="http://jakarta.apache.org/struts/tags-template" prefix="template"%>
    вместо правильной директивы taglib Struts:

    <%@taglib uri="http://struts.apache.org/tags-template" prefix="template"%>

    Если исправить директиву taglib на этой странице, это не решит проблему, так как последующие теги шаблонов будут содержать ту же неверную директиву taglib.
  2. Теги шаблонов Struts не видны в проектировщике страниц.  

1.2 Разработка портлетов Struts tiles не поддерживается в инструментах портлетов Struts

Инструмент портлетов Struts пока не поддерживает разработку портлетов Struts tiles, хотя и содержит примеры портлетов Struts tiles (IBM и JSR168). Их можно импортировать в рабочую область, чтобы портлет мог использовать tiles в приложении.

Примечание: Разработка с применением tiles в портлете Struts может привести к тому, что в проект будет добавлен фасет поддержки динамических шаблонов (Struts Tiles).   Это вызовет неполадки при развертывании портлета.  Дополнительная информация приведена в разделе об известных неполадках и способах их устранения.

2.0 Известные неполадки и способы их обхода

2.1 При импорте примеров портлетов Struts может возникать ошибка: не определена среда выполнения

При импорте примера портлета Struts (IBM или JSR168) в рабочую область в примере может возникать ошибка:  не определена среда выполнения.  В зависимости от конфигурации рабочей среды и установленного сервера в проекте может возникать ошибка: "Целевая среда выполнения WebSphere® Portal V6.0 не определена". Это означает, что WebSphere Portal V6.0 не включен в список серверов рабочей среды.

Рекомендация:
Перед началом работы с примерами необходимо настроить целевую среду выполнения для проекта.

  1. Убедитесь, что соответствующий целевой сервер доступен.
    • Просмотреть и изменить список доступных серверов можно в окне параметров  (Окно > ПараметрыСервер > Установленные среды выполнения).
    • Найдите заготовку "WebSphere Portal V6.0". Она должна устанавливаться с комплектов инструментов портала продукта.  В противном случае  нажмите кнопку Добавить, чтобы добавить среду выполнения WebSphere Portal V6.0.
  2. Выберите импортированный проект и через контекстное меню откройте свойства проекта.
  3. Выберите целевую среду выполнения. Должен быть показан список доступных сред выполнения, подходящих  для  проекта.
  4. Нажмите OK.  
  5. Повторите эти действия для проекта EAR, импортированного с примером.

 

Настроив целевую среду выполнения, повторно скомпонуйте проект, чтобы устранить ошибки и развернуть его:
  1. Для того чтобы повторно скомпоновать проект, выберите Проект > Очистить > Очистить все проекты или Очистить выбранные проекты, затем нажмите OK. Примечание: некоторые примеры содержат ошибки.
  2. Для того чтобы развернуть примеры, содержащие ошибки, необходимо включить  опцию    Разрешить публикацию на сервере приложений с ошибками ( Окно > Параметры> Сервер > WebSphere
  3. Нажмите OK.
  4. Для того чтобы развернуть проект, выберите проект (не EAR) и нажмите Выполнить как > Запустить на сервере. Для целевой среды выполнения должен быть выбран тот же тип сервера.


2.2 В проекте проекта Struts tiles не работает поддержка шаблонов динамических страниц

При работе с портлетом Struts tiles  в проекте может быть установлен фасет поддержки шаблонов динамических страниц (Struts Tiles).  Фасет поддержки шаблонов динамических страниц (Struts Tiles) позволяет упросить работу с Struts tiles в динамическом Web-проекте, но не в проекте портлета Struts.  Если фасет установлен, при развертывании будут возникать ошибки среды выполнения.  Кроме того, если теги tiles будут добавляться в JSP портлетов Struts из палитры, то при этом генерируются неверные директивы taglib.

Рекомендация: Если ведется разработка портлета Struts, то перед развертыванием выполните следующее:

  1. Проверьте, был ли установлен в проекте фасет поддержки шаблонов динамических страниц (Struts Tiles).  Для этого в свойствах проекта откройте > Фасет проекта.
  2. Если он установлен,  то удалите дополнительные сервлеты и записи файлов конфигурации, добавленные в проект:
    • Откройте  web.xml в редакторе файла описания.  На вкладке  Сервлет удалите запись TilesServlet и сохраните файл.
    • Откройте struts-config.xml в  редакторе файлов конфигурации Struts.  На вкладке  Модули удалите запись org.apache.struts.tiles.TilesPlugin и сохраните файл.
      Примечание: При удалении из проекта фасета поддержки шаблонов динамических страниц (Struts Tiles) указанные записи не удаляются. Лучше оставить запись этого фасета проекта в списке.
  3. Для каждой из JSP, содержащей тег tiles,  проверьте, используется ли директива taglib портлета struts tiles.   Если это не так, (как для портлетов Struts tiles WPS V6.0), то
    • замените <%@taglib uri="http://jakarta.apache.org/struts/tags-tiles" prefix="tiles"%>
    • на  <%@taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles"%>