К основному контенту

xPages. Extension Library, первый подход к снаряду

Второе очень важное понятие и инструмент, которым необходимо овладеть при работе с xPages, на мой взгляд, - xPages Extension Library. В это посте именно об этом и пойдет речь. Мое знакомство первично, но более-менее успешно, поэтому спешу поделиться первым опытом. Также, постараюсь покидать ссылки на полезные материалы.

Что же за зверь xPages Extension Library? Если говорить своими словами - это open source проект, поддерживаемый IBM, по предоставлению различных компонент для работы с xPages, облегчающих жизнь. Проект в основном живет и развивается на OpenNTF.org. Пройдя по ссылке вы найдете: ссылку для закачки последнего релиза, ссылку на Wiki-документацию, презентацию и видео.

Установка Extension Library
Не буду долго размусоливать, ибо установка очень подробно и хорошо описана в Wiki. Опишу только свой опыт в качестве граблей, на которые можно наткнуться:
1. Для установки на 8.5.2, нужно взять соотв релиз. Все релизы можно посмотреть по ссылке.
2. Пытался поставить Extension Library на 8.5.2...не пошло. Мне трудно сказать почему. В плагинах не обнаружил нужных. Пришлось апгрейдить клиент до 8.5.3
3. Если вы ставите 8.5.3 + Upgrade Pack 1, ставить Extension Library не нужно - она уже есть в составе UP1, НО в ней могут быть не все компоненты, которые есть в последнем релизе Extension Library. У меня установка UP1 не удалась из-за ошибки, потому Extension Library ставился вручную.

Использование
Открыв Designer и зайдя в xPages или Custom Cоntrol вы сразу увидите изменения на панели компонент - она сильно увеличиться в размерах. Использование компонентов очень сильно облегчает работу со многими вещами. Проверено и подтверждено. Особенно, это заметно, когда пыхтя ты пытаешься добиться результата стандартными методами, а используя компонент Extension Library вы его получаете сразу.

Пожалуй, лучшее ознакомительное видео, которое позволяет узреть силу компонентов и понять, как собирать форму на основе Extention Libarary лежит на xPages.tv. Сам ресурс xPages.tv,  созданный, кстати на xPages и доступный для скачивания на OpenNTF.org, весьма полезен.

Проще всего освоить использование - переработать существующее простое решение на xPages. Мне, как человеку, далекому от Web-дизайна еще тяжело отойти то классического Notes-приложения и начать мыслить несколько по-другому, поэтому я взял существующее Web-приложение, являющее по-сути, доску объявлений. Задача: скопировать функционал, применяя xPages. Используя OneUI v2.1, несколько компонент Extension Library (Application Layout, Navigator, Dialog) и не большие знания, набираемые по ходу разработки, получился довольно приемлемый результат :)
Было:
Основной вид
Добавление

Просмотр

Стало:
Основной вид
Добавление

Просмотр

Полезные ссылки:
1. xPages wiki, используя поиск можно найти очень много интересного касательно непосредственного применения компонент extLib
2. Подраздел xPagse wiki по Extension Library компонентам
3. xPages.tv - видео уроки по использованию xPages

Контакты:

Комментарии

Популярные сообщения из этого блога

Занимательные алгоритмы. Поиск цикла в односвязном списке

И снова про тараканов, которые иногда возникают в голове. Как-то раз, засыпая, я задумался на курьезными задачками из своей сферы деятельности (Lotus Notes), которые можно было бы задать на собеседовании, плавно перешел к воспоминаниям о своих первых собеседования, когда опыта работы еще не было. Опыт самих собеседований у меня не велик а места, где задавались действительно интересные задачи (а не задачки типа: написать сортировку массива любым известным способом) вообще равны одному - это ABBYY. Как минимум одна задачка в списке на знание и понимание классических алгоритмов, описанных в книге Дональда Кнута -  Искусство программирования .

Unit-testing object validation when validator has DI

Summary Unit test object validation when validator(s) has a dependency. For instance, we have some custom field and cross-field validators. Want to test their combination. Additionally some of validators have dependencies, injected through constructor or setters. You're not using property injection, right? Shortcut If you are just searching for an answer, here's the fast way: Declare CustomConstraintValidatorFactory that implements javax.validation.ConstraintValidatorFactory Override getInstance method and on facing your constraint validator class instantiate it Otherwise delegate validator construction to org.hibernate.validator.internal.engine.constraintvalidation.ConstraintValidatorFactoryImpl Build validator factory and provide it your CustomConstraintValidatorFactory Build validator, using that factory... Go to demo project on GitHub for details:  https://github.com/MrArtemAA/blog-demos/blob/master/test-validator-with-injection/src/test/java/ru/artemaa/d

Lotus Notes FAQ. 8/9 Eclipse. Как настроить уведомления о Sametime сообщениях

Н а написание данной "инструкцию" натолкнул мой коллега. Помню, первый раз сам долго искал, как отключить постоянно выпрыгивающие уведомления о новых сообщениях в Sametime. И так, речь идет о клиентах IBM Notes 8+ версии Standart (Eclipse based). Как настроить уведомления о Sametime сообщениях?