Debug Remoto no OAS
Autor: Pedro Gonçalves | Publicado: 2011-03-28T14:04:00-07:00

Precisando debugar uma aplicação em um OAS (Oracle Application Server) remotamente utilizando o Eclipse? É possível e simples, segue os passos necessários para configurar o ambiente (não me responsabilizo por nada!).

Parte 1 - Configurar o OAS

Basta informamos para o OAS que queremos debugar a instância do  OC4J que ele possui, que na verdade se resume em adicionar alguns parâmetros na inicialização o OC4J (que o próprio OAS inicializa), os parâmetros são:
-Xdebug
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=4000
Esse valor 4000 corresponde à porta que será disponibilizada para se conectar remotamente ao OAS, pode ser alterado para o valor que melhor atender suas necessidades.

E para informamos esses parâmetros no OAS temos 2 opções:
Utilizar a interface gráfica do EM para configurar os parâmetros
Entrando no EM selecione qual a instância do OC4J desejas debugar, após isso vá na aba "Administração", depois selecione a opção "Propriedades do Servidor". Essa tela na verdade altera o arquivo opmn.xml se encontra no diretório $OAS_HOME/opmn/conf. Antes de tudo, recomendo um backup deste arquivo.&nbsp;Agora basta configurar a parte "Parâmetros Start: Opções Java", adicionando os parâmetros informados anteriormente. Fica mais ou menos assim:&nbsp;  

Configuração utilizando EM
Pronto! Basta reiniciar a instância alterada (as vezes é necessário reiniciar o OAS inteiro).&nbsp;Inserir os parâmetros diretamente no opmn.xml
O arquivo opmn.xml se encontra no diretório $OAS_HOME/opmn/conf. Antes de tudo, recomendo um backup deste arquivo.  Devemos encontrar a tag referente à instância do OC4J que queremos debugar. Se quisermos debugar a instância home, por exemplo, devemos encontrar uma tag mais ou menos assim: &lt;process-type id="home" module-id="OC4J" status="enabled"&gt;  Dentro dela teremos a tag onde estão os parâmetros utilizados para inicializar o OC4J: &lt;category id="start-parameters"&gt;  Agora basta adicionar os valores dos parâmetros informados acima na tag &lt;data id="java-options" values="... os parâmetros vão aqui... " /&gt; (cuidado para manter as informações anteriores), deve ficar mais ou menos assim: &nbsp;&lt;data id="java-options" value="-server -mx512M -ms64M -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=4000 -XX:AppendRatio=3 -Djava.security.policy=$ORACLE_HOME/j2ee/home/config/java2.policy -Djava.awt.headless=true -Dhttp.webdir.enable=false"/&gt; Pronto! Basta reiniciar a instância alterada (as vezes é necessário reiniciar o OAS inteiro).&nbsp;Parte 2 - Configurar o Eclipse

Uma vez configurado o OAS agora vamos fazer o Eclipse se conectar para debugar as aplicações. Para isso basta criarmos uma "Remote Java Application", para isso vá no menu "Run -&gt; Debug Configurations...". Abrirá uma janela igual a apresentada abaixo. Nela devemos selecionar o projeto que queremos debugar, o tipo de conexão (Socket Attach), o IP do Host (do servidor OAS no caso) e a porta (aquele 4000 la de cima).



Configuração do Eclipse 

Pronto! Agora é só rodar e já vai estar debugando! Basta colocar os breakpoints e navegar direto no host do OAS.