terça-feira, 5 de novembro de 2013

Ajustes do openam para deploy no jboss


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:
  1. 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 ....
  2. 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
  3. Salve o arquivo e gere o novo arquivo war:
    # jar cvf ../openam.war *
  4. 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
  1. 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
  2. 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
  3. 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

quarta-feira, 16 de outubro de 2013

Enviando Email com comando mailx usando o smtp do Gmail


Tudo em um comando

Para utilizar tudo através de um comando só ....
mailx -v -s "$EMAIL_SUBJECT"
-S smtp-use-starttls
-S ssl-verify=ignore
-S smtp-auth=login
-S smtp=smtp://smtp.gmail.com:587
-S from="$FROM_EMAIL_ADDRESS($FRIENDLY_NAME)"
-S smtp-auth-user=$FROM_EMAIL_ADDRESS
-S smtp-auth-password=$EMAIL_ACCOUNT_PASSWORD
-S ssl-verify=ignore
-S nss-config-dir=~/.mozilla/firefox/yyyyyyyy.default/
$TO_EMAIL_ADDRESS
OBS: trocar yyyyyyyy para uma string de um profile que se encontra dento do diretório do firefox
Este comando irá perguntar pelo conteúdo do email, Digite-o e quando termina-lo, use o “Ctrl+d” para avisar ao mailx que você já terminou. E o seu email será enviado utilizando o smtp do google. pode-se simplificar o processo utilizando o pipe:
echo "The mail content" | mail -v -s ...

Usando um arquivo de configuração

Vocês acharam que tem muitos parametros no comando acima? Sim, são muitos mesmo. Entaum iremos escrever um arquivo de configuração em  ~/.mailrc
set smtp-use-starttls
set nss-config-dir=~/.mozilla/firefox/yyyyyyyy.default/
set ssl-verify=ignore
set smtp=smtp://smtp.gmail.com:587
set smtp-auth=login
set smtp-auth-user=$FROM_EMAIL_ADDRESS
set smtp-auth-password=$EMAIL_ACCOUNT_PASSWORD
set from="$FROM_EMAIL_ADDRESS($FRIENDLY_NAME)"
Mude o  yyyyyyyy para os seus respectivos valore. Agora podemos enviar o email com o seguinte comando:
$ mailx -v -s "$EMAIL_SUBJECT" $TO_EMAIL_ADDRESS
E zaz ....

O primeiro Bug

É comum usarmos no nosso dia-a-dia as seguintes expressões: "meu computador tá com bug"; "esse site é cheio de bugs"; "só pode ser bug no programa"... Usamos tanto a palavra bug que parece ser normal, mas não é, primeiro por ser uma palavra da língua inglesa, e outra por não ter sentido nenhum com o significado que queremos dar quando falamos de bugs. Usamos a palavra bug para denominar um erro, uma falha, no computador, em algum site ou software, certo?


Pois então, traduzindo a palavra bug do inglês para o português, vemos que o sentido é totalmente outro, significa inseto.

Mas então por que usamos a palavra bug para denominar algum erro?

É aí que começa a postagem, vou explicar para você qual foi a origem deste termo e você irá se surpreender em saber quando esse termo foi usado pela primeira vez.

Algumas pessoas dizem que o termo foi usado pela primeira vez por Thomas Edison em 1878, quando um inseto causou um erro em uma de suas invenções chamada fonógrafo.

Mas foi Grace Hopper que usou o termo bug pela primeira vez semelhante à forma que usamos hoje, em computadores. Tudo foi em 1945, quando um dos primeiros e gigantes computadores Mark II teve um mau funcionamento, e após muitas pesquisas foi detectado que um inseto havia pousado em alguns contatos do computador, causando o mau funcionamento. Abaixo você verá uma foto que mostra a utilização do termo quando deu o erro no Mark II, a utilização da palavra, e o inseto colado na folha:

o erro no Mark II
Depois desse acontecimento, começaram a usar com mais frequência o termo, inclusive no primeiro computador digital completamente eletrônico, o ENIAC, que por ser movido a válvulas, atraía muitos insetos, causando vários maus funcionamentos, denominados bugs também.

E esse termo é utilizado até hoje por nós, depois de tanto avanço na nossa tecnologia continuamos usando este termo 'primitivo' tecnologicamente falando para denominar os erros que acontecem nos nossos softwares e computadores.

Você já sabia a origem da palavra bug, ou não sabia e gostou de saber? Comente aqui e deixe sua opinião!

Fonte: Internessante / 
http://skybott.blogspot.com.br/2012/04/como-surgiu-expressao-bug.html (Texto original)