Caso queira instalar o OpenAm no Jboss AS 5.1, existem duas coisas que necessitam de atenção especial:
- Jboss As 5.x usa o Tomcat 6.0.16 e isso afeta a manipulação de cookies.
- Se você instalar o OpenAm no JBss 5.x usando metodo tradicional, "somente o arquivo" e apagar o arquivo openam.war do diretório de deploy, então o Jboss irá fazer o redeploy das aplicações em diferentes diretórios temporários toda vez que reiniciar o servidor e será necessário refazer todas as configurações
- Problemas com o CLassloader
Para resolver o primeiro problema, modifique o run.con (ou run.conf.bat no Windows) passando para oa JVM a opção -Dcom.iplanet.am.cookie.encode=true
Exemplo:
... # Specify options to pass to the Java VM. # if [ "x$JAVA_OPTS" = "x" ]; then JAVA_OPTS="-Xms128m -Xmx1024m -XX:MaxPermSize=256m -Dorg.jboss.resolver.warning= true -Dsun.rmi.dgc.client.gcInterval= 3600000 -Dsun.rmi.dgc.server.gcInterval= 3600000 -Dcom.iplanet.am.cookie.encode= true " fi ... |
Para o segundo problema, caso você use o metodo tradicional de deploy "arquivo compactado" será necessário fazer o seguinte:
- Expanda o opwnam.war em um diretório temporário (use o comando jar com as opções xvf), Exemplo, no Linux:
Assuma que você tem o openam.war dentro do diretorio /home/teste/deployable-war# cd /home/teste
# mkdir exploded-openam
# cd exploded-openam
# jar xvf /home/teste/deployable-war/openam.war
# .... exploding files here ....
- Então edite o seguinte arquivo: WEB-INF/classes/bootstrap.properties Decomentando a linha "configuration.dir=" e modificando este ponto com o diretório onde você planeja guardas as suasconfigurações, por exemplo, vamos assumir que nos queremos colocar as configurações no diretório /home/teste/openamJboss.
configuration.dir=/home/teste/openamJboss
- Salve o arquivo e gere o novo arquivo war:
# jar cvf ../openam.war *
- Use este arquivo openam.war para instalar no diretorio do seu JBoss 5.x
Uma segunda opção para resolver o segundo problema, você pode extrair o openam.war em um diretório de deploy depois configurar o OpenAM
- Va para o diretório de deploy da instancia do JBoss e crie um novo diretório chamado openam.war:
# mkdir /shared/jboss-
5.1
.
0
.GA/server/
default
/deploy/openam.war
- Extraia o opemam.war dentro do diretorio
# cd /shared/jboss-
5.1
.
0
.GA/server/
default
/deploy/openam.war
# jar xvf /home/victor/deployable-war/openam.war
- Configure o OpenAM normalmente, veja o Deploy OpenAM para mais informações de como configurar o OpenAM
UCL Classloader issue
Crie o arquivo WEB-INF/jboss-web.xml caso a aplição entre em conflitos com os demais jars durante o inicialização do servidor
<!DOCTYPE jboss-web PUBLIC "-//JBoss//DTD Web Application 5.0//EN" "http://www.jboss.org/j2ee/dtd/jboss-web_5_0.dtd" > <jboss-web> < class -loading java2ClassLoadingCompliance= 'true' > <loader-repository> jbia.loader:loader=opensso <loader-repository-config>java2ParentDelegaton= true </loader-repository-config> </loader-repository> </ class -loading> </jboss-web> |
Fonte: https://wikis.forgerock.org/confluence/display/openam/Considerations+when+deploying+on+JBoss+AS+5.1
Nenhum comentário:
Postar um comentário