Содержание
- 2. Портлеты Портлеты - представляют собой специальный тип сервлета, и они используют JSP-страницы для отображения пользовательского интерфейса.
- 3. Наиболее существенное изменение исполнения в том, как обслуживаются запросы: сервлеты обрабатывают запросы "doGet" и "doPost", которые
- 4. Возможности портлетов: встроенная поддержка автоматического использования различных JSP- страниц для различных пользовательских устройств, таких как настольные
- 5. создание сохраняемых между сессиями пользовательских настроек; публикация в виде Web-сервиса; разделение сложных приложений на задачи, когда
- 6. Сходства и различия сервлетов и портлетов Сходства между сервлетами и портлетами: относятся к J2EE Web-компонентам; управляются
- 7. за счёт того, что операции кодирования URL выполняются на стороне сервера, пользователь не может обратиться к
- 8. Жизненный цикл Как и у сервлетов, жизненный цикл портлетов управляется контейнером, и у него есть метод
- 9. При создании портлета доступа к окружающему коду, например к контейнеру, нет, поэтому код внутри портлета не
- 10. Состояния Состояния портлетов – это часть портальной модели отображения. Состояния позволяют портлету отображать различные «виды» в
- 11. Рассмотрим пример простого портлета. Класс SimplePorltet. Этот класс, собственно, и является основным классом портлета. Все, что
- 12. package aaa; import java.io.IOException; import javax.portlet.ActionRequest; import javax.portlet.ActionResponse; import javax.portlet.GenericPortlet; import javax.portlet.PortletConfig; import javax.portlet.PortletContext; import javax.portlet.PortletException;
- 13. public class SimplePortlet extends GenericPortlet { private static final String EDIT_PAGE_PARAM = "Edit-Page"; private static final
- 14. // метод, отвечающий за представление страницы редактирования public void doEdit(RenderRequest request, RenderResponse response) throws PortletException,IOException {
- 15. // метод, отвечающий за представление страницы помощи public void doHelp(RenderRequest request, RenderResponse response) throws PortletException, IOException
- 16. // метод, отвечающий за представление страницы просмотра public void doView(RenderRequest request, RenderResponse response) throws PortletException, IOException
- 17. // вызывается контейнером для обработки событий public void processAction(ActionRequest request, ActionResponse response) throws PortletException, IOException {
- 18. // для установки атрибутов private void setRequestAttributes(PortletRequest request) { PortletPreferences preferences = request.getPreferences(); request.setAttribute("firstName", preferences.getValue("firstName", "undefined"));
- 19. Согласно спецификации для развертывания портлета необходим файл portlet.xml. В данном случае этот файл имеет вид: "http://java.sun.com/xml/ns/portlet/portlet-
- 20. Portlet Application SimplePortlet Simple Portlet aaa.SimplePortlet
- 21. View-Page /WEB-INF/jsp/simple-view.jsp Help-Page /WEB-INF/jsp/simple-help.jsp Edit-Page /WEB-INF/jsp/simple-edit.jsp
- 22. не истекает --> -1 text/html view help edit
- 23. en com.learning.portlet.SimplePortlet Portlet Application Portlet portlet
- 24. Файл web.xml является дескриптором web-приложения, поскольку портлет- приложение является и web-приложением. Данный файл имеет вид: xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- 25. Рассмотрим соответствующие jsp страницы simple-edit.jsp uri="http://java.sun.com/jsp/jstl/core"%> uri="http://java.sun.com/jsp/jstl/fmt"%> uri="http://java.sun.com/portlet"%> //Данный тег определяет три объекта renderRequest, renderResponse и
- 26. //связываем действие с модой view portletMode="view"/> width:150px; color: #000000;"/> "border:none; width: 75px;"/> color:#000000; white-space: nowrap;"/>
- 27. //Подключаем внешний ресурс : value="${firstName}" style="${inputTextStyle}"/>
- 28. : style="${inputTextStyle}"/> : style="${inputTextStyle}"/>
- 29. : style="${inputTextStyle}"/>
- 30. sample-help.jsp uri="http://java.sun.com/jsp/jstl/fmt"%> uri="http://java.sun.com/portlet"%>
- 31. ${portletName} ${firstName} ${lastName}
- 32. . //связываем render с модой edit .
- 33. simple-view.jsp uri="http://java.sun.com/jsp/jstl/core"%> uri="http://java.sun.com/jsp/jstl/fmt"%> uri="http://java.sun.com/portlet"%> color:#000000; white-space: nowrap;"/> color: #000000; white-space: nowrap;"/>
- 34. "com.learning.portlet.SamplePortlet"/> : ${firstName}
- 35. : ${lastName} : ${address}
- 36. : ${telephone}
- 37. файл свойств для английского языка : SamplePortlet_en.txt portlet.label.firstname = First name portlet.label.lastname = Last name portlet.label.address
- 38. файл свойств для русского языка: SamplePortlet_ru.txt portlet.label.firstname = Имя portlet.label.lastname = Фамилия portlet.label.address = Адрес portlet.label.telephone
- 39. Рассмотрим развертывание приложения с использованием портального сервера jetspeed Создать директорию temp(имя не имеет значение) Создать в
- 40. Стоит заметить, что файлы portlet_2_0.tld; portlet.tld можно найти в пакете portlet-api_2.0_spec-1.0.jar, а fmt.tld в пакете jstl.jar
- 41. value="${src.dir}/${message.dir}"/> value="${src.message.dir}/aaa"/> value="${result.dir}/${classes.dir}/aaa"/>
- 42. optimize="yes" debug="no"> includes="**/*.txt" encoding="${localization.encoding}" ext="${localization.ext}"/>
- 43. description="Creates .war file of the portlet."> webxml="${src.config.dir}/web.xml" compress="on"> prefix="${webapp.dir}">
- 44. prefix="${webapp.dir}/${jsp.dir}"/> prefix="${webapp.dir}/${tld.dir}"/> 4. Запустить из директории temp ant. 5. Установить jetspeed, для этого необходимо скачать jetspeed-installer-2.2.2.jar
- 45. 6. Перекопировать файл из директории temp -> result ->SimplePortlet.war в директорию $jetspeed_root_directory->webapps->jetspeed ->WEB-INF -> deploy 7.
- 46. 10. Добавить портлет Для этого необходимо щелкнуть на кнопке в верхнем правом углу
- 47. Затем снова нажать на кнопку “+”, рядом с надписью Add Portlet
- 48. Затем в окне поиска ввести название SimplePortlet и после этого добавить портлет и нажать на кнопку
- 50. Скачать презентацию