среда, 6 августа 2014 г.

Интеграция Google Maps в Oracle ADF

Добрый день, друзья.
В наше время мало какой сайт  может обойтись без интеграции Google  технологий. Я постараюсь рассказать как интегрировать в ADF  Google maps. Приступим. Сделаем  страничку на которой можно найти место на карте, введя его в input text



четверг, 3 июля 2014 г.

Использование ADF Security в Oracle JDeveloper 12c

Неделю назад вышла новая версия  Oracle Jdeveloper 12.1.3 . Что бы быть в тренде, эта статья будет написана на последней версии JDeveloper : ))
В этой статье я хочу рассказать как работать с ADF Security.ADF Security это  технология, которая  обеспечивает аутентификацию и авторизацию  веб-приложений Fusion.
Создадим простейшее приложение с таблицей EMP на странице jspx


Теперь включим ADF Security. Для этого запустим мастер настройки



воскресенье, 22 июня 2014 г.

Тестирование ADF приложений. Часть 3(Тестирование нагрузки приложения при помощи JMeter)

После того, как  мы успешно завершили тестирование пользовательского интерфейса ,мы удостоверились   что приложение работает для одного  пользователя. Теперь мы должны доказать, что приложение выдержит  нагрузку в  реальной жизни . Чтобы сделать это, мы будем использовать открытый инструмент : JMeter.
JMeter является инструментом для нагрузочного тестирования веб-приложений. Как и Selenium, он записывает сеанс пользователя и воспроизводит его, но он не  запускает сеанс пользователя в браузере,а  просто отсылает запросы на сервер приложений.

После пройденными нами двух этапов тестирования, нам остается:
  • Проверить, что приложение работает с несколькими одновременно работающими пользователями 
  • Проверить, сколько пользователей система может обрабатывать 
Приступим


Для начала скачаем  JMeter( http://jmeter.apache.org/download_jmeter.cgi). Скачав и распаковав архив запустите jmeter.bat.

вторник, 10 июня 2014 г.

Тестирование ADF приложений. Часть 2(Тестирование форм при помощи Selenium)

После того как проверен код, нам нужно проверить работу форм.  Автоматизируем и эту проверку.Для этого мы будем использовать утилиту Selenium.

Selenium это бесплатная утилита с открытым кодом, для тестирования веб-приложений. Он состоит из двух частей:

  •  Selenium  IDE является Firefox плагином, в котором  вы записываете вашу тестовую сессию. Из IDE, вы можете воспроизводить сеанс для быстрой проверки, и экспортировать его в виде JUnit теста.
  •  Selenium Remote Control Server является сервером , который будет выполнять записанные тесты с помощью браузера

Между записью  и воспроизведением тестов , вы можете изменить их  в JDeveloper. Это 
позволяет добавлять параметры и выходить за рамки простого тестирования.


Selenium IDE существует только как Firefox плагин. Так что для начала установите браузер Firefox (http://www.firefox.com).Selenium IDE можно загрузить из Firefox в Открыть меню | Дополнения.



четверг, 29 мая 2014 г.

Тестирование ADF приложений. Часть 1(Тестирование модулей при помощи JUnit)

Очень важным этапом при разработке приложений является их тестирование. Ручное тестирование занимает много времени и усилий. И что бы облегчить эту работу  мы автоматизируем этот этап.

      Над ADF приложениями проводятся тестирования 3 видов:

  • Тестирование модулей (будем использовать  JUnit)
  • Тестирование форм (будем использовать Selenium)
  • Тестирование нагрузки (будем использовать JMeter)

В этой статье рассмотрим тестирование модулей приложения. Приступим
В статье я буду использовать проект, который был создан в одной из предыдущих статей
https://drive.google.com/file/d/0ByLMFtz8FbBvZGE1S2tXaGN1QUU/edit?usp=sharing

среда, 30 апреля 2014 г.

Удаленная отладка(remote debug) ADF проектов

После того как вы развернули свое приложение на сервере, очень часто может возникнуть необходимость в его отладке (debug).В этой статье я хочу рассказать как это делается.

1.Настроить WebLogic сервер для поддержки удаленной отладки.

Сначала необходимо настроить WebLogic сервер. Для  этого найдите и откройте для редактирования скрипт который запускает наш домен  startWebLogic.cmd, он находится по следующему пути : <адрес где установлен  Weblogic> \user_projects\domains\<имя домена>\bin  . В скрипте  вставьте следующую строку:

set JAVA_OPTIONS=-Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=4000,server=y,suspend=n


Дальше нужно настроить HTTP tunneling на сервере. Для этого запустите его и зайдите в консоль( если он у вас установлен локально, то обычно адрес localhost:7001/console)


воскресенье, 20 апреля 2014 г.

Создание отчетов в ADF при помощи JasperReport

Мало какие приложения  могут обойтись без отчетов. Если есть база и таблица,  то почти всегда нужно  вывести на печать какие то данные. В ADF часто для этого используютcя Jasper Report и iReport. JasperReports — это Java-библиотека для создания отчётов.  iReport  - это среда разработки отчетов.
Создадим отчет ,  который выводит всех сотрудников выбранного  департамента, а в итоговой колонке выводит их среднюю  и общую сумму зарплат.
Начнем.
Скачайте и установите среду разработки  отчетов (http://community.jaspersoft.com/project/ireport-designer)
Запустите установленную среду. Перед тем как мы начнем создавать отчет, нам надо  добавить соединение к бд Oracle. Так как оно не входит в пакет стандартных соединение, нам надо его добавить. Для этого скачайте файл  ojdbc6.jar (  http://www.oracle.com/technetwork/database/features/jdbc/index-091264.html ) и добавьте его в classpath среды (Tools->Options)

пятница, 11 апреля 2014 г.

Создание простого WebCenter портала в JDeveloper 11.1.1.7.0

ADF разработка часто проходит  с использованием фрэймфорка WebCenter Portal. WebCenter Portal приложение имеет очень много шаблонов, которые упрощают разработку. После нажатия буквально нескольких клавиш у вас появляется готовый расширяемый портал  с рабочими  политиками безопасности, навигацией и шаблонами необходимых страниц.  Давайте создадим  такое приложение!! : )
Для начала установите обновления  для WebCenter. Help-Check for updates, и там выберите расширения для Webcenter (WebCenter Portal Framework and Services Design Time))
Далее создайте новое приложение Webcenter Potal Framework Application как показано на картинках ниже:

понедельник, 24 марта 2014 г.

Создание простого BPM процесса в Jdeveloper 11.1.x.0

ADF разработчик должен уметь не только разрабатывать ADF  приложения, но и полноценные BPM решения.
В этой статье, мы разработаем BPM процесс, с помощью  Oracle SOA Suite.  Если он у вас не установлен, то сначала изучите эту статью :  Установка и настройка Oracle SOA Suite

Итак, BPM - это подход к моделированию, автоматизации, управлению и оптимизации бизнес-процессов в рамках организационных подразделений, систем и приложений.

Создадим простой процесс  по принятия студента в университет.

Что бы его создать, нам нужно пройти следующие этапы:
  1. Моделирование бизнес-процесса.
  2. Создание Ролей и пользователей
  3. Создание процесса.
  4. Создание бизнес объектов(Data object и Bussines object)
  5. Создание Human Task 
  6. Создание форм
  7. Разработка процесса
  8. Deploy процесса.
  9. Тестирование процесса


суббота, 15 марта 2014 г.

Создание BPEL процессов в JDeveloper (часть 2.создание и развертывание простого BPEL процесса)

 В прошлой статье Создание BPEL процессов в JDeveloper (часть 1.Установка, описание компонентов) было описано как  обновить Jdev для работы с BPEL, и  описаны основные компоненты.  Здесь я опишу как создать простой процесс и развернуть его на  сервере Weblogic

     Приступим : )
     Создадим процесс который  при вводе названия страны выводит  города этой страны

1. Создайте BPM или SOA  приложение

пятница, 14 марта 2014 г.

Установка и настройка Oracle SOA Suite

   Для работы c Oracle SOA Suite нужно скачать и установить следующие инструменты:
  1. Oracle Database Express Edition: SOA Suite требует  БД.
  2. WebLogic Server: необходим для запуска SOA Suite.
  3. Repository Creation Utility: эта утилита создает схемы  в БД которые SOA Suite использует для различных задач
  4. SOA Suite: это JEE приложение  которое содержит   SOA инструменты развернутые на   WebLogic. 
  5. JDeveloper: это IDE которое используется для разработки и развертывания ваших SOA композитов. 
   Все это можно бесплатно скачать(предварительно зарегистрировавшись) по следующей ссылке :http://www.oracle.com/technetwork/middleware/soasuite/downloads/index.html

Шаги по установке:

    1. Установите  Oracle Express Edition (XE). Установка  Express Edition достаточна проста для описания. Если вы  хотите установить  не XE версию, воспользуйтесь следующим описанием: http://odba.ru/showthread.php?t=294

вторник, 11 марта 2014 г.

Создание BPEL процессов в JDeveloper (часть 1.Установка, описание компонентов)

     Часто при разработке приложений возникает необходимость во взаимодействии различных сервисов, баз-данных и других протоколов.Для этого существует язык BPEL.

     BPEL (англ. Business Process Execution Language) — язык на основе XML для формального описания бизнес-процессов и протоколов их взаимодействия между собой. BPEL расширяет модель взаимодействия веб-служб и включает в эту модель поддержку транзакций.

     В этой статье я хочу  рассказать о установке расширений для работы с BPEL и о компонентах BPEL в JDeveloper.

     Примечание: Работать с BPEL\BPM процессами можно  только в  версиях  Oracle JDeveloper 11g Release 1 (11.1.1.x).

     Начнем.
1. Установите и запустите  JDeveloper   версии 11.1.1.x
2. Подключите расширения SOA  как указано на рисунках ниже :
     


воскресенье, 2 марта 2014 г.

Работа с файлами (af:inputFile,af:fileDownloadActionListener, af:image) в JDeveloper

     Редко какой ADF проект обходится без  работы с файлами.
     В этой статье мы создадим проект, в котором будет реализована возможность добавления в базу изображений(фотографию сотрудника), их просмотр  и скачивание на компьютер.
     Приступим.
     Будем использовать тестовую схему  Oracle (Scott\tiger). В ней есть таблица  EMP (сотрудники)
Для работы с файлами существующих таблиц  недостаточно. Нужно добавить поле IMAGE_ID  в таблицу EMP, создать таблицу PHOTO (с структурой указанной ниже) и связать эти таблицы связью 1 к 1 по полям  IMAGE_ID.



воскресенье, 26 января 2014 г.

Запуск критериев (ViewCriteria) с Java кода в JDeveloper

     В Oracle ADF существует возможность создания критериев для сформированных  нами ViewObject-ов, чтобы при необходимости выполнять запросы к базе   по определенным  полям.  В этой статье будет описано создание этих критериев и вызов их с Java кода.Для этого в приложение созданное в прошлой статье " Использование af:iteraror вместо af:table в JDeveloper "  добавим два критерия : Фильтр сотрудников по номеру отдел и фильтр по дате рождения. Приступим.
     Зайдите во VO  EmpView и перейдите во вкладку Query. Там находится три секции:
  • Query - в ней находится запрос по которому формируется VO
  • Bind Variables - в эту секцию добавляются параметры которые  будут использоваться в критериях
  • View Criteria -секция в которой создаются критерии.

суббота, 18 января 2014 г.

Использование af:iteraror вместо af:table в JDeveloper

       В Oracle ADF стандартным компонентом для отображения таблиц баз данных является af : table.
       Это стандартная таблица. Часто бывает так, что заказчик хочет увидеть данные не в виде таблицы, а в каком то другом виде. Для этого существует af:iterator. Этот  компонент выводит данные  с БД в том виде, какой вы создадите : )

       af:iterator   в отличии af : table  нельзя создать путем  переноса VO c DataControl. Но что бы не создавать в ручную итераторы и   компонент, мы переконвертируем  компонент af:table.

Приступим.

1. Создайте приложение ADF приложение
2. Добавьте connection с базой к стандартной схеме  Scott.
3. Их соединения scott добавьте ADF Busines Component  Emp
4. Создайте jspx страницу
5. Добавьте на страницу c DataControl EmpView1  как таблицу.
Страница должна выглядеть так

четверг, 16 января 2014 г.

Добавление компонентов на форму в режиме реального времени в ADF

     Иногда  появляется необходимость добавлять компоненты на страницу ADF приложений в режиме реального времени. В этой статье я хочу описать, что нужно сделать для этого.

     Сначала нужно написать метод описанный снизу


public void addComponent(UIComponent parentUIComponent, 
                            UIComponent childUIComponent)
   {
 parentUIComponent.getChildren().add(childUIComponent);
 AdfFacesContext.getCurrentInstance().addPartialTarget(parentUIComponent);
    }


     Этот метод добавляют созданную компоненту childUIComponent  в родительский компонент parentUIComponent (например panelGroupLayout) и обновляет родительский компонент, что бы отобразился созданный элемент.

    Далее в нужном вам методе добавьте строки

RichInputText uic = new RichInputText();  
uic.setId("rit1");
uic.setLabel("Название поля");
uic.setValue("Значение поля");
addComponent(pGL1,  uic);


     В первой строке создается  компонент RichInputText ( компонент для ввода строк)
     Во второй, третьей и четвертой устанавливаются свойства компонента.
     В пятой при помощи созданного ранее метода  addComponent новый компонент добавляется на форму.

     Как вы сами понимаете добавлять можно не только inputtext.
     По следующей ссылку можно увидеть список компонентов и их свойства: