XPages

Фреймворк веб-приложений
XPages
Разработчик(и)ИБМ
Первоначальный выпуск2008
Стабильный релиз
9.0.1
Написано вJavaScript , HTML , Java, JSF , набор инструментов Dojo
Операционная системаНесколько
ТипФреймворк веб-приложений
Веб-сайтXPages.info

XPages — это реализация JavaServer Faces от IBM с серверной средой выполнения JavaScript и встроенной базой данных NoSQL IBM Domino . Она позволяет отображать данные из IBM Notes и реляционных баз данных в браузерных клиентах на всех платформах.

Модель программирования основана на языках и стандартах веб-разработки, включая JavaScript , Ajax , Java , Dojo Toolkit , Server-side JavaScript и JavaServer Faces . XPages использует IBM Domino , платформу быстрой разработки приложений IBM , включая такие функции, как документоориентированная база данных .

Фронтенд-технологии

Используя веб-стандарты, приложения XPages могут быть доступны веб-клиентам и мобильным устройствам, что позволяет разработчику поставлять кроссплатформенные приложения. Для пользовательского интерфейса XPages фокусируются на стандартах веб-разработки HTML , CSS и JavaScript. Кроме того, темы могут использоваться для управления несколькими файлами CSS, [1] и XPages поставляется с темами по умолчанию, например, темой OneUI. [2]

Для клиентской логики можно использовать различные JavaScript-фреймворки, хотя XPages поставляется с Dojo Toolkit , а на элементы управления Dojo можно легко ссылаться в приложениях XPages. XPages также использует Dojo внутренне для определенных функций, чтобы сделать ключевые функции более простыми в использовании без необходимости писать код Dojo. Специальная библиотека XPages JavaScript содержит дополнительные удобные функции, например, для проверки полей на стороне клиента. [3] В дополнение к клиентской логике Dojo также можно использовать для виджетов и диаграмм с богатым пользовательским интерфейсом. [4]

Как и любое веб-приложение, приложения XPages могут использовать службы REST . XPages также предоставляет простые механизмы для привязки источников данных к элементам управления пользовательского интерфейса, так что для многих сценариев не требуется писать код. Кроме того, XPages позволяет декларативно обновлять только части страницы через Ajax при отправке данных.

Бэкэнд-технологии

Разработка приложений XPages выполняется с помощью IBM Domino Designer. С помощью Designer можно декларативно и быстро реализовать множество ключевых сценариев, например, для отображения списка записей из базы данных. Кроме того, для бизнес-логики можно писать как код JavaScript, так и Java. XPages внутренне базируются на JavaServer Faces , но источниками страниц XPages являются производные XML, называемые XSP, которые транслируются в код Java при запуске приложений. Во время выполнения этот код возвращает HTML различным клиентам.

Для доступа к данным XPages и Domino Designer используют источники данных . Эти источники данных можно графически привязать к элементам управления пользовательского интерфейса на страницах. Элементы управления пользовательского интерфейса и другие типы элементов управления отображаются в палитре элементов управления в Domino Designer и могут быть перетащены на страницы. Domino Designer также поставляется с дополнительными удобными функциями, такими как проверка полей и переводы. Функциональность XPages можно модулировать в пользовательских элементах управления , которые являются элементами управления XPages, которые можно повторно использовать на нескольких страницах XPages и параметризовать на основе контекста.

Для написания бизнес-кода бэкэнда в первую очередь используется JavaScript на стороне сервера. Существуют API для доступа к ориентированной на документы базе данных и контексту XPages. [5] Поскольку XPages основаны на JSF, а JSF является стандартом Java, также возможно вызывать стандартный код Java SDK из кода JavaScript и писать пользовательский код Java с использованием управляемых компонентов JSF.

Среду выполнения XPages можно расширить с помощью API расширяемости, который основан на JavaServer Faces. [6] Эта возможность может быть использована, например, независимыми поставщиками программного обеспечения, которые хотят предоставить свои собственные библиотеки элементов управления XPages.

Хранилище: Документоориентированная база данных

Среда выполнения XPages является частью IBM Domino и использует проверенные и зрелые возможности, предоставляемые Domino. Domino использует документоориентированную базу данных под названием NSF (Notes Storage Facility) для управления полуструктурированными данными, такими как форматированный текст и файлы. Данные хранятся в виде документов, а представления позволяют эффективно находить определенные документы. [7] Документы имеют уникальные идентификаторы и дополнительные встроенные поля, такие как последний автор, дата последнего изменения и т. д., а также настраиваемые поля, специфичные для приложения. Документы могут содержать форматированный текст, который может быть отформатированным текстом и изображениями (MIME) или полными файловыми вложениями. Документы можно запрашивать через API и представления. [8] Domino также поддерживает полнотекстовый поиск для полной базы данных как встроенную функцию.

Приложения XPages могут быть развернуты на серверах Domino или кластере серверов Domino с использованием IBM Domino Administrator и механизма репликации/синхронизации, встроенного в IBM Domino. Механизм репликации поддерживает двунаправленное обнаружение и разрешение конфликтов в распределенных средах.

Сообщество

XPages.info

Сообщество разработчиков XPages управляет веб-сайтом XPages.info с различными типами информации о XPages, включая как начать работу, загрузки, ресурсы и демонстрации. OpenNTF — это сайт с открытым исходным кодом для приложений на основе IBM Domino, содержащий несколько приложений и элементов управления разработкой под лицензией Apache .

История

Истоки технологии XPages можно проследить еще в 2000 году. Trilog Group, бизнес-партнер IBM, изобрела компонентно-ориентированную модель быстрой разработки веб-приложений, называемую XSP, похожую на модель Domino RAD, но основанную на J2EE, XML и открытых стандартах. В августе 2004 года IBM приобрела активы технологии XSP у Trilog Group, чтобы предложить инструмент RAD для IBM Workplace, аналогичный Domino Designer.

Технология XPages, основанная на JSF и J2EE, начала свою жизнь в IBM с 2005 по 2007 год в ныне не поддерживаемом IBM Lotus Workplace Designer и впоследствии IBM Lotus Component Designer под кодовым названием «XFaces». В середине 2007 года технология XFaces стала «XPages» и была принята IBM Lotus Notes Domino, включена в цикл разработки для выпуска 8.5. XPages была предварительно представлена ​​на Lotusphere 2008 (AD303 Transforming IBM Lotus Domino Web Apps with IBM Lotus Domino Designer Докладчики: Рокки Оливер, Мартин Доннелли). IBM Lotus Notes Domino 8.5 была выпущена в декабре 2008 года и как раз к Lotusphere 2009, где она стала одним из многих ярких моментов шоу.

IBM Lotus Notes Domino 8.5.1 продолжила разработку технологии XPages, включая запуск приложений XPages внутри Notes Client. Этот выпуск также включал несколько улучшений производительности и пользовательского интерфейса, что помогло приложениям XPages лучше работать и масштабироваться. IBM Lotus Notes Domino 8.5.2 содержала еще много улучшений и дополнений к набору функций XPages.

Название «XPages» было вдохновлено оригинальной идеей наименования XSP, где XSP на самом деле было аббревиатурой от «XML Server Pages». После первого ребрендинга XSP в «XFaces» IBM выбрала «XPages» в качестве кодового названия проекта для предварительной версии технологии, включенной в Domino Designer. Поскольку броскую альтернативу было трудно найти, название проекта прижилось. [ необходима цитата ]

Ссылки

  1. ^ «Сделайте свои приложения XPage «популярными!» с помощью CSS и тем»
  2. ^ Тема OneUI
  3. ^ Библиотека JavaScript XPages
  4. ^ Набор инструментов Dojo
  5. ^ Справочник API
  6. ^ API расширения XPages
  7. ^ Документоориентированная база данных является основной частью архитектуры Domino. Обратите внимание, что эти два упомянутых документа PDF устарели, но все еще дают хороший обзор основных концепций.
  8. ^ Классы Java от AZ

Дальнейшее чтение

  • Мартин Доннелли, Марк Уоллес и Тони Макгакин. (2011). Освоение XPages: пошаговое руководство по разработке приложений XPages и языка XSP. IBM Press. ISBN  0132486318
  • Мартин Доннелли, Марк Уоллес и Тони Макгакин. (2014). Освоение XPages: пошаговое руководство по разработке приложений XPages и языку XSP. ВТОРОЕ ИЗДАНИЕ IBM Press. ISBN 978-0133373370 
  • Библиотека расширений XPages: пошаговое руководство к следующему поколению компонентов XPages (2012) IBM Press. ISBN 978-0132901819 
  • «Руководство по командам XPages Portable: Компактный ресурс по разработке приложений XPages и языку XSP» (2012) IBM Press ISBN 978-0132943055 
  • Официальный сайт
Взято с "https://en.wikipedia.org/w/index.php?title=XPages&oldid=1243189849"