четверг, 23 июня 2011 г.

Конфигурирование Node Manager

  1. Перейти в директорию:
     $ cd $MIDDLEWARE_HOME/common/nodemanager  
    
  2. Если файл nodemanager не создан, то создать его или запустить Node Manager и файл будет сгенерирован автоматически, а затем изменить/проверить выделенные красным параметры:
    DomainsFile=/u01/ofm/wlserver_10.3/common/nodemanager/nodemanager.domains
    LogLimit=0
    PropertiesVersion=10.3
    DomainsDirRemoteSharingEnabled=false
    javaHome=/u01/jdk1.6.0_30
    AuthenticationEnabled=true
    NodeManagerHome=/u01/ofm/wlserver_10.3/common/nodemanager
    JavaHome=/u01/jdk1.6.0_30/jre
    LogLevel=INFO
    DomainsFileEnabled=true
    StartScriptName=startWebLogic.sh
    ListenAddress=
    NativeVersionEnabled=true
    ListenPort=5777
    LogToStderr=true
    SecureListener=true
    LogCount=1
    DomainRegistrationEnabled=false
    StopScriptEnabled=false
    QuitEnabled=false
    LogAppend=true
    StateCheckInterval=500
    CrashRecoveryEnabled=false
    StartScriptEnabled=true
    LogFile=/u01/ofm/wlserver_10.3/common/nodemanager/nodemanager.log
    LogFormatter=weblogic.nodemanager.server.LogFormatter
    ListenBacklog=50 
    
  3. Проверить, что в файле доменов Node Manager (имя файла - nodemanager.domains) прописаны все домены, например:
    soa_domain=/u01/user_projects/domains/soa_domain
    ucm_domain=/u01/user_projects/domains/ucm_domain
    
  4. Запустить Node Manager, например так:
     $ cd $MIDDLEWARE_HOME/server/bin
     $ nohup ./startNodeManager.sh &
    
    Или с помощью утилиты screen:
     $ cd $MIDDLEWARE_HOME/server/bin
     $ screen -S nodeManager -t nodeManager ./startNodeManager.sh
    

Если возникла ошибка вида "javax.net.ssl.SSLKeyException: BAD_CERTIFICATE alert was received", то вариант её решения описан здесь.

пятница, 22 апреля 2011 г.

Изменение настроек JVM для домена Weblogic

Описание: Linux и Weblogic 10.3.4.
  • Старт серверов без использования NodeManager.:
    1. Залогиниться на сервер.
    2. Для смены JVM (JRockit млм HotSpot) выставить значание переменной JAVA_VENDOR:
      $ JAVA_VENDOR=Oracle #Для JRockit  
      $ JAVA_VENDOR=Sun    #Для HotSpot  
      $ export JAVA_VENDOR  
      
    3. Выставить желаемое значение через переменную USER_MEM_ARGS, например:
      $ USER_MEM_ARGS='-Xms1024m -Xmx1024m -XX:CompileThreshold=8000 -XX:PermSize=128m -XX:MaxPermSize=512m'  
      $ export USER_MEM_ARGS  
      
    4. Стартовать AdminServer или ManagedServer. Если JVM-параметры доменов отличаются, то рекомендую создать отдельные стартовые скрипты для каждого из ManagedServer-ов и AdminServer-а, например startAdminServer.sh:
       #!/bin/sh  
       USER_MEM_ARGS='-Xms1024m -Xmx1024m -XX:CompileThreshold=8000 -XX:PermSize=128m -XX:MaxPermSize=512m'  
       export USER_MEM_ARGS  
       JAVA_VENDOR=Sun  
       export JAVA_VENDOR
       #Start AdminServer    
       ./startWebLogic.sh  
      
  • Старт серверов с использованием NodeManager и через Weblogic Administration Console:
    1. Залогиниться в Weblogic Administration Console.
    2. Перейти в конфигурацию сервера (Имя_домена->Environment->Servers->Имя_сервера).
    3. Перейти во вкладку Configuration->Server Start.
    4. Заполнить поля Arguments и Java Vendor.

вторник, 19 апреля 2011 г.

Проблема в Oracle JDeveloper 11.1.1.4 при автогенерации HumanTask...

Описание: создадим простой BPM-проект с двумя HumanTask-ами и одной ролью (с несколькими ролями ситуация подобна этой).

1. Запустим JDeveloper.
2. Создадим новый BPM Application.

     Введите наименование проекта. Далее "Next":

     Далее "Finish":


     Далее предлагается создать BPM-процесс:


     Далее "Next":

3. Сгенерировался BPM-процесс.


4. Добавим ещё один UserTask.


5. Создадим определение UserTask-ов.

     UserTask1:

     UserTask2:

6. Сгенерируем формы пользовательского интерфейса с помощью автогенератора.

     UserTask1:


     UserTask2: аналогично UserTask1.

7. Получилось три проекта в нашем TestApplication: собственно BPM-проект и два Taskflow-проекта(HumanTask-проекта).

8. Задеплоим TestApplication на сервер BPM Suite.


     Далее "Next":

     Выбираем все TaskFlow-проекты. Далее "Next":

     Далее "Finish"

9. Заходим в BPM Workspace
9.1. Инициируем процесс.

Отправляем дальше:

Получаем первую ошибку:

9.2. Переходим на вторую задачу и получаем ошибку:

В чём причина этих ошибок???
Первая ошибка: автоматически не создалась страница Empty1.jspx
Вторая ошибка: при автогенерации форм для HumanTask-ов они создаются в одном и том же пакете и при деплое приложения возникает конфликт, который проявляется как "Error 500--Internal Server Error"

10. Исправление ошибок.
10.1. Первая ошибка:
10.1.1. Перейти в первый TaskFlow-проект в "Web Content"->"Page Flows"->"adfc-config".


10.1.2. Создайте Empty1.jspx дважды кликнув на эту страницу.


10.1.3. Аналогично с вторым TaskFlow-проектом.

10.2. Вторая ошибка:

10.2.1. Перейти в первый TaskFlow-проект в "Application Sources".


10.2.2. Провести рефакторинг пакета.


     Далее:

10.2.3. Открыть DataBindings.cpx и перейти на закладку "Source"


10.2.4. Изменить данный файл (см. выделение красным)


10.2.5. Удалить сгенерированные классы с прошлой сборки (удалить все внутри папки classes).

10.2.6. Аналогично с вторым TaskFlow-проектом.

11. Передеплоить TestApplication на сервер BPM Suite.

вторник, 22 марта 2011 г.

Включение Java-плагина для Firefox в Linux

Допущение: в данном примере версия JRE 6.0_24

1. Установить, если не установлена JRE.
2. Выполнить:
 [root@server1~]# cd /usr/lib/mozilla/plugins  
 [root@server1~]# ln -s /usr/java/jre1.6.0_24/plugin/i386/ns7/libjavaplugin_oji.so .  
3. Готово.

среда, 9 марта 2011 г.

Установка WebLogic 10.3 Cluster

Описание: устанавливаем WebLogic Cluster на три Linux-машины(wlsvm1,wlsvm2,wlsvm3) и на отдельную Linux-машину плагин к Apache HTTP Server.

1. Установить Oracle WebLogic 10.3.4
2. Создаём простой домен (только AdminServer)
2.1. Запускаем config.sh (из $MIDDLEWARE_HOME/wlserver_10.3/common/bin):
2.2. Оставляем по-умолчанию:
2.3. Вводим название домена:
2.4. Вводим пароль пользователя weblogic:
2.5. Оставляем по-умолчанию:
2.6. Выбираем RDBMS Security Store:
2.7. Заполняем поля связанные с соответствующей схемой в СУБД (скрипты создания объектов схем можно найти в $MIDDLEWARE_HOME/wlserver_10.3/server/lib, имя файлов начинается на rdbms_security_store_*.sql):
2.8. Создать домен:
3. Конфигурирование домена под кластер:
3.1. Сконфигурировать и запустить NodeManager (подробне здесь).
3.2. Запустить AdminServer c использованием WLST (подробнее здесь).
3.3. Зайти в административную консоль Oracle WebLogic Server - http://хост:порт/console, например http://wlsvm1:7001/console
3.4. Выбрать Environment->Machines и создать новую машину:
3.5. Выбрать имя и тип машины:
3.6. Заполнить значения Listen Adress и Lister Port (адрес и порт на котором запущен NodeManager):
3.7. Аналогично с двумя другими машинами. Получается так:
3.8. Создаём новый ManagedServer, для этого выбрать Environment->Servers:
3.9. Заполняем имя сервера, хост, порт и нажимаем "Finish":
3.10. Аналогично делаем ещё два ManagedServer и получаем следующее:
3.11. Выбираем первый ManagedServer и изменяем поле Machine на соответствующую машину:
3.12. Аналогично для второго и третьего ManagedServer-ов:
3.13. Создаём новый кластер, для этого выбрать Environment->Clusters и нажать "Add". Ввести имя кластера и нажать "Ok":
3.14. Выбираем созданный кластер и переходим в закладку Configuration->Servers и нажимаем "Add":
3.15. Выбираем первый ManagedServer, который добавляем в кластер:
3.16. Аналогично добавляем в кластер для второго и третьего ManagedServer-о.
4. Настройка Apache HTTP Server Plug-In.
4.1. Скопировать модуль плагина mod_wl_22.so из $MIDDLEWARE_HOME/wlserver_10.3/server/plugin/linux/i686/ в директорию с модулями Apache HTTP Server (отдельная машина).
4.2. Изменить конфигурационный файл Apache HTTP Server (у меня он лежит здесь: /etc/httpd/conf/httpd.conf):
4.2.1. Добавить секцию:
 LoadModule weblogic_module   modules/mod_wl_22.so  
4.2.2. Добавить в конец файла:
 <IfModule mod_wl_22.c>  
 WebLogicCluster wlsvm1:7002,wlsvm2:7002,wlsvm3:7003  
 </IfModule>  
 <Location />  
 SetHandler weblogic-handler  
 WebLogicCluster wlsvm1:7002,wlsvm2:7002,wlsvm3:7003  
 </Location>  
4.3. Перезапустить Apache HTTP Server.
5. Запускаем все ManagedServer-а (Environment->Servers->Control):
6. Готово.