Oracle SOA e BPM Suite

O SOA e o BPM Suite são produtos que fazem parte do Oracle Fusion Middleware. Eles servem para facilitar o desenvolvimento de aplicações SOA e prover um local único de configuração e administração de aplicações distribuídas. A instalação é um pouco trabalhosa e irei abordar nesse post. Esse conteúdo é sujeito à alterações posteriores.

Essa configuração é apenas para desenvolvimento. Não realize esse procedimento em ambiente de produção!

Garanta que o seu sistema tenha os pré-requisitos mínimos:

  • 2GB de memória RAM (Eu recomendo 4GB ou mais)
  • Processador Dual Core 1.5GHz ou superior
  • 15GB de espaço em disco

Eu estou instalando em um Ubuntu 64 bits, mas o recomendando é Red Hat ou Solaris. Faça o download dos seguintes produtos Oracle:

  • Database
  • Weblogic Server
  • Repository Creation Utility
  • BPM Suite e Patch
  • JDeveloper
  • SOA e BPM extensions para JDeveloper
  • WebCenter Suite (Opcional e abordarei em outro post)
  • Universal Content Management (Opcional e abordarei em outro post)

Os links para os produtos patchs e atualizações pode ser encontrado em: http://www.oracle.com/technetwork/middleware/bpm/downloads/index.html

Atualização dia 19/01/2011: Execute os procedimentos descritos aqui, antes de prosseguir com a instalação. Verifique também se seu arquivo /etc/hosts está com o 127.0.0.1 e o IP da máquina apontando para localhost.

Instalação da Base

Garanta que sua base Oracle esteja instalada e em execução. No Blog do Luan tem um passo a passo da instação do Oracle XE no Ubuntu.

Instalação do Weblogic Server (WLS)

Faça o download o Weblogic Server para sua plataforma em: http://www.oracle.com/technetwork/middleware/ias/downloads/wls-main-097127.html

Eu escolhi a versão 10.3.3 com o Coherence e OEPE porque vou utilizar para outros projetos. Sinta-se livre para escolher sem esses recursos. Transforme o arquivo em executável se você estiver no linux: chmod +x wls1033_oepe111150_linux32.bin e execute-o ./wls1033_oepe111150_linux32.bin (ou .exe, caso Windows).

Oracle Installer - WebLogic 10.3.3.0
Oracle Installer - WebLogic 10.3.3.0

Clique em Next. Defina um local que você tenha permissão para sua Middleware Home e clique em Next. Se vocẽ tiver suporte da Oracle informe na próxima tela, senão é só desmarcar e clicar em Next. Escolha a opção Tipical (mais prático), Next. Aceite os caminhos para a instalação, Next e na próxima tela, verifique as informações e clique em Next novamente. Após a instalação, clique em Done.

Instalação do Repository Creation Utility (RCU)

O RCU tem alguns pré-requisitos na base, acesse o SQLPlus como SYSDBA (conn \ as sysdba) e digite os seguintes comandos:

  • alter system set processes=500 scope=spfile;
  • alter system set open_cursors=500 scope=spfile;

Reinicie a base (comando shutdown; e startup;). Faça o download do RCU para sua plataforma. Descompacte o arquivo em uma pasta, acesse rcuHome/bin e execute o arquivo rcu.

Repository Creation Utility - Welcome
Repository Creation Utility - Welcome

Clique em Next e selecione a opção Create e Next novamente. Informe os seguintes dados para uma base Oracle XE local e clique em Next:

Repository Creation Utility - Step 2 of 7 : Database Connection Details
Repository Creation Utility - Step 2 of 7 : Database Connection Details

Ao executar os scripts você receberá a seguinte mensagem de erro:

The database you are connecting is not a supported version. Enter Database with version equal to or higher than 10.2.0.4.0 in 10g or version equal or higher than 11.1.0.7.0 in 11g. Refer to certification matrix for supported DB versions.

Repository Creation Utility
Repository Creation Utility

Isso irá ocorrer se você estiver utilizando a versão XE do Oracle 10g. Pode selecionar Ignore. Clique em OK após a execução. Selecione os componentes que irá utilizar, exceto o Oracle Identity Manager e Oracle Adaptive Access Manager se você estiver utilizando a base XE. E para a instalação ficar mais rápida, não selecione a opção Portal se você não for precisar. Também tive problemas com o AS Common Schemas/Enterprise Scheduler Service no XE, caso for utilizar, será necessário ignorar alguns erros de SQL na criação das tabelas.

Se você não for instalar o BAM, apenas o BPM, as seguintes opções já são suficientes:

  • AS Common Schemas
    • Metadata Services
  • SOA and BPM infra
    • SOA Infra
    • User Messaging Service

Após a verificação dos pré-requisitos, clique em Ok. Informe uma senha para os schemas e clique em Next. Informe um ID para o repositório master e work (valor entre 0 e 50), as senhas, um nome pro repositório work e o tipo D para especificar que é para desenvolvimento, clique em Next. Altere os Tablespaces, caso necessário, e clique em Next e OK para criar as tablespaces. Clique em OK após a criação. Verifique as informações e clique em Create. Aguarde um bom tempo para criação das tabelas, tablespaces e afins. Verifique o Completion Summary e clique em Close. Guarde esse instalador para posterior Drop em tabelas, caso se faça necessário.

Instalação do SOA/BPM Suite + Patch

Se você instalou a base Oracle localmente já deve ter  quase todos pacotes nativos que são pré-requisitos para o SOA Suite. Adicione o sysstat que é um conjunto de ferramentas de monitoramento de desempenho utilizado pelo SOA Suite e o RPM: sudo apt-get install sysstat rpm

Crie também um link simbólico para o RPM: sudo ln -s /usr/bin/rpm /bin/rpm

Para a versão 11.1.1.3.0 é necessário instalar a versão 11.1.1.2.0 e depois o patch para a 11.1.1.3.0. Baixe os dois arquivos e descompacte-os em pastas separadas. Cada arquivo desse gerará algumas pastas: Disk 1, Disk 2, .... Acesse a pasta Disk 1 e execute o arquivo runInstaller (ou setup.exe se for Windows). Caso ele pergunte, especifique o caminho do seu JDK.

Oracle Fusion Middleware 11g SOA Suite Installation - Step 1 of 6
Oracle Fusion Middleware 11g SOA Suite Installation - Step 1 of 6

Execute o seguinte comando no terminal: sudo bash ~/oraInventory/createCentralInventory.sh

Clique em Next. Se você não estiver executando o Oracle Enterprise Linux, Red Hat, Solaris, HP-UX ou Suse, o Status das verificações ficarão em Warning ou Error, pois ele não saberá qual a versão do Sistema Operacional. Clique em Continue. Nessa próxima tela, selecione o caminho de instalação do Middleware Home onde foi instalado o Weblogic Server e especifique um nome pro Home do SOA Suite, clique em Next. Verifique os valores fornecidos e clique em Install. Após a instalação, clique em Next e Finish.

Agora é necessário instalar o patch set descompactado anteriormente. Acesse o Disk1 do patch e execute o runInstaller no Linux e setup.exe no Windows. Especifique a localização da JVM e irá abrir a seguinte tela.

Oracle Fusion Middleware 11g SOA Patchset Installation - Step 1 of 5
Oracle Fusion Middleware 11g SOA Patchset Installation - Step 1 of 5

Clique em Next. Selecione o Middleware Home que foi definido anteriormente, clique em Next e install. Após a instalação, clique em Next e Finish.

Abra o SQLPlus e digite o seguinte comando: alter system set aq_tm_processes=1 scope=both;

Criação do domínio

Execute o seguinte arquivo: <DIR DO SOA SUITE>/Middleware/wlserver_10.3/common/bin/config.sh.

Fusion Middleware Configuration Wizard
Fusion Middleware Configuration Wizard

Clique em Next. Escolhas as opções desejadas.

Fusion Middleware Configuration Wizard-1
Fusion Middleware Configuration Wizard-1

Clique em Next. Dê um nome para o domínio e especifique o local do domínio e aplicações e clique em Next. Especifique o usuário e senha do usuário administrativo e clique em Next. Escolha o jdk e o modo do domínio e clique em Next. Selecione os checkboxes, configure a senha (informada no rcu), serviço e hostname. Importante: não modifique o Schema Owner!

Fusion Middleware Configuration Wizard-2
Fusion Middleware Configuration Wizard-2

Clique em Next. Teste as conexões e clique em Next. Clique em Next novamente e Create para a criação do domain. Após a criação clique em Done.

Fusion Middleware Configuration Wizard-3
Fusion Middleware Configuration Wizard-3

Domínio criado!

Inicie o Node Manager: <DIR DO SOA SUITE>/Middleware/wlserver_10.3/server/bin/startNodeManager.sh. Ele irá criar um arquivo de configuração. Aperte Ctrl+C para parar a execução. Execute o seguinte arquivo: <DIR DO SOA SUITE>/Middleware/oracle_common/common/bin/setNMProps.sh. Ele irá alterar o arquivo <DIR DO SOA SUITE>/Middleware/wlserver_10.3/common/nodemanager/nodemanager.properties.

Uma boa alteração de se fazer é alterar os parâmetros de memória no arquivo startWeblogic.sh ou no setDomainEnv.sh, mas isso fica para um próximo post. Outra recomendação é executar o smart update para correções de possíveis problemas: <DIR DO SOA SUITE>/Middleware/utils/bsu/bsu.sh

Oracle Smart Update
Oracle Smart Update

Executando o domínio

Para facilitar a execução eu criei um script responsável pela inicialização do Node Manager e do Admin Server.

#!/bin/bash

SOA_DOMAIN_HOME=/opt/Oracle11gSOABPM
SOA_DOMAIN_PATH=$SOA_DOMAIN_HOME/Middleware/user_projects/domains/base_domain

NODE_MANAGER=`ps -ef | grep -v grep | grep nodemanager | wc -l`

if [ &quot;0&quot; = &quot;$NODE_MANAGER&quot; ];
then
 echo Starting SOA Domain Node Manager...
 nohup $SOA_DOMAIN_HOME/Middleware/wlserver_10.3/server/bin/startNodeManager.sh &gt; nodeManager.log &amp;
else
 echo SOA Domain Node Manager already running, skipping...
fi
 echo Starting Weblogic Admin Server...
 nohup $SOA_DOMAIN_PATH/startWebLogic.sh &gt; adminServer.log &amp;

Altere o SOA_DOMAIN_HOME e o SOA_DOMAIN_PATH para os caminhos adequados do seu ambiente. Deixe o arquivo executável: chmod +x startSOADomain.sh

Agora é só executar o script e acompanhar o log de execução nodeManager.log e adminServer.log. Depois acesse o Enterprise Manager: http://localhost:7001/em e inicie o SOA Server.

Farm_base_domain (Oracle Fusion Middleware Farm)
Farm_base_domain (Oracle Fusion Middleware Farm)

Instalação JDeveloper + Extensions

Faça o download do JDeveloper em: http://www.oracle.com/technetwork/developer-tools/jdev/downloads/soft11-098086.html

Prossiga com a instalação padrão. Abra o JDeveloper, no linux fica no caminho: jdeveloper/jdev/bin/jdev.

Acesse Help, Check for Updates, clique em Next, marque o Update Center do Oracle Fusion Middleware e Clique em Next.

Check for Updates - Step 2 of 5
Check for Updates - Step 2 of 5

Siga as instruções descritas no post: http://www.thiagovespa.com.br/blog/2010/09/21/instalacao-do-oracle-bpm-studio/

Há ainda a possibilidade de instalar o WebCenter Suite e o Universal Content Management, mas esses ficam pra uma próxima oportunidade 😉

Sobre: Thiago Galbiatti Vespa

Thiago Galbiatti Vespa é mestre em Ciências da Computação e Matemática Computacional pela USP e bacharel em Ciências da Computação pela UNESP. Coordenador de projetos do JavaNoroeste, membro do JCP (Java Community Process), consultor Oracle, arquiteto de software de empresas de médio e grande porte, palestrante de vários eventos e colaborador de projetos open source. Possui as certificações: Oracle Certified Master, Java EE 5 Enterprise Architect – Step 1, 2 and 3; Oracle WebCenter Portal 11g Certified Implementation Specialist; Oracle Service Oriented Architecture Infrastructure Implementation Certified Expert; Oracle Certified Professional, Java EE 5 Web Services Developer; Oracle Certified Expert, NetBeans Integrated Development Environment 6.1 Programmer; Oracle Certified Professional, Java Programmer; Oracle Certified Associate, Java SE 5/SE 6