XPages - это веб-платформа для платформы IBM Notes. Он был введен в Lotus Domino 8.5 (должен быть проверен) .
Он основан на JSF (JavaServer Faces) с множеством полезных расширений для представления и обработки данных IBM Notes.
IBM предлагает учебник для XPages: https://www-10.lotus.com/ldd/ddwiki.nsf/dx/Tutorial-intro-to-XPages.htm
За сценами В backend XPages представлены файлы XML, похожие на HTML. Сервер Domino, наконец, создает настоящий HTML-код и отправляет эти страницы клиенту. Бизнес-логика реализована в родном JavaScript («clientide JavaScript - CSJS») и псевдо JavaScript («serveride JavaScript - SSJS»).
Короче говоря, XPages является частью IBM Domino Designer. Дополнительная настройка или установка не требуется для XPages.
Чтобы создать первый XPage, вам нужно сначала создать новый NSF. Откройте IBM Domino Designer и откройте меню « Файл » -> « Создать » -> « Приложение ».
В всплывающем диалоговом окне выполните следующие настройки:
Hello World NSF
». hello-world.nsf
». Создается новый NSF.
Теперь щелкните правой кнопкой мыши раздел «[XPages]» в навигаторе приложений и выберите « новый XPage ... ».
HelloWorld
». Это создаст файл с именем «HelloWorld.xsp». Дважды щелкните на новом HelloWorld XPage, который вы можете найти в разделе «[XPages]».
Выберите вкладку «Источник» (которая находится в нижней части редактора) и добавьте простой компонент текстового поля на страницу. Это должно быть результатом:
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core" pageTitle="Hello My World">
<xp:text id="simpleTextField" value="Hello World!!!!" />
</xp:view>
Сохраните страницу и создайте проект (щелкните правой кнопкой мыши по вашему приложению «Hello World NSF» и выберите пункт меню «build»).
Теперь откройте браузер, например Internet Explorer, и перейдите к новому XPage NSF вашего приложения. Например, « http://mydominoserver.com/hello-world.nsf/HelloWorld.xsp », и вы увидите текст Hello World.
Сначала создайте файл message.properties
Ресурсы / Файлы /. Пример:
##############
# Test message.properties
##############
label.age=Enter your age:
validate.error.reqired.age=Sorry, but you have to give away the secret of your age ...
Затем подключите ресурс с помощью XPage или Custom Control:
<xp:this.resources>
<xp:bundle src="/messages.properties" var="appMsg" />
....
</xp:this.resources>
Примечание. «Var» определяет имя, которое вы хотите использовать в XPages или Custom Controls, для ссылки на карту сообщений.
Теперь вы можете использовать карту сообщений с серверным JavaScript ( #{javascript:appMsg.getString('...')}
) или с помощью EL ( #{appMsg['...']}
).
Пример использования:
...
<!-- to show the error message: -->
<xp:messages />
<!-- use with ssjs: -->
<xp:text value="#{javascript:appMsg.getString('label.age')}" escape="false" />
<!-- use with EL: -->
<xe:djNumberSpinner value="#{myDoc.age}" maxLength="2" javaType="int">
<xp:this.validators>
<xp:validateRequired message="#{appMsg['validate.error.reqired.age']}" />
</xp:this.validators>
</xe:djNumberSpinner>
...