sexta-feira, 2 de setembro de 2011

sqlcode=-803 - IBM WebSphere Process Server

Outro dia verifiquei sqlcode=-803 nos logs do ambiente do Process Server.

A solução é utilizar o rippleStart no Cluster do Process ao invés do Start normal. Isso, porque há concorrência dos Application Servers com o Banco de Dados quando utilizamos o start. Com o rippleStart isso não ocorre porque cada Application Server é iniciado em sequencia.

Rastreamento do problema:

1. Verifiquei que o código -803 está relacionado com comandos DDL no Banco de Dados.
http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=%2Fcom.ibm.db2z9.doc.codes%2Fsrc%2Ftpc%2Fn803.htm

2. Em seguida, procurei por erros relacionados ao código -803 no ambiente do Process e obtive o seguinte report:
http://www-01.ibm.com/support/docview.wss?uid=swg21474394

3. Verifiquei documentação sobre o rippleStart
http://publib.boulder.ibm.com/infocenter/dmndhelp/v7r0mx/index.jsp?topic=/com.ibm.websphere.wps.doc/doc/tadm_start_cluster.html

4. O ambiente está automatizado para utilizar jython ao parar e iniciar o ambiente WebSphere BPM. Então tive a pequena curiosidade de ver as diferenças entre jacl e jython
http://en.wikipedia.org/wiki/wsadmin

5. Como iniciar um Cluster via jacl ou jython
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=%2Fcom.ibm.websphere.nd.doc%2Finfo%2Fae%2Fae%2Ftxml_startcluster.html

Uma segunda documentação sobre ripplestart em jacl e jython
http://www-01.ibm.com/support/docview.wss?uid=swg1PK11560

Uma terceira documentação muito boa sobre ripplestart em jacl (script pronto)
http://www.webspheretools.com/sites/webspheretools.nsf/docs/Ripple%20Start%20cluster%20in%20WebSphere%20using%20JACL

quarta-feira, 31 de agosto de 2011

Como visualizar conexões JDBC no WebSphere Application Server

Na versão 7 do WebSphere Application Server (WAS) existe a ferramenta Tivoli Performance Viewer nativa.

Para entrar na Ferramenta faça login no Console Administrativo e vá em Monitoring and Tuning > Performance Viewer > Current activity e selecione o Application Server desejado.

Após selecionar o Application Server, vá em Performance Modules > JDBC Connection Pools > DB2 Universal JDBC Driver Provider (XA) e selecione o jdbc desejado.
. No meu caso, estamos utilizando conexão com o DB2

Selecione as propriedades
. CreateCount: quantidade de conexões que foram abertas no Banco de Dados
. CloseCount: quantidade de conexões fechadas
. PoolSize: quantidade de conexões correntemente abertas

Em outras palavras, o PoolSize indica quantas conexões estão abertas no momento.
Para visualizar a quantidade total de conexões JDBC abertas no Banco de Dados, será necessário somar os valores do PoolSize de cada Application Server.

Com o Performance Viewer é possível iniciar log (através do botão "Start Logging") e salvar esses valores para visualização futura. Os arquivos são salvos em formato xml e compactado com formato zip após clicar em "Stop Logging" - no diretório ".../logs/tpv"

No Console Administrativo vá em Monitoring and Tuning > Performance Viewer > View logs e selecione o arquivo desejado (formato zip dito no parágrafo anterior) para visualizar os logs.

segunda-feira, 22 de agosto de 2011

Segurança (autenticação) no WebSphere Application Server

Dica para habilitar Segurança no WAS (WebSphere Application Server) quando há vários nós e Applications Servers.

1. Pare todos os Applications Servers
2. Pare todos os nós (nodeagents)
Portanto, deixe somente o dmgr (Deployment Manager) iniciado
3. Aplique a segurança desejada
4. Reinicie o dmgr e verifique se está tudo Ok
5. Faça o syncnode para cada nó. Nesse momento (após a segurança habilitada) o was irá solicitar usuário/senha para autenticar no dmgr

Faça isso para cada nó e depois inicie os Applications Servers.

Em outras palavras, habilite a segurança somente o dmgr iniciado.

sexta-feira, 1 de julho de 2011

Nome distinto na busca de usuários do Windows - AD

Em algumas situações desejamos visualizar o nome distinto do usuário no AD. Exemplo:
CN=Juliano Claiton,OU=Administradores,OU=XPTO,DC=BR,DC=COM,DC=BR

O "Procurar" padrão do Windows não exibe essa coluna e não permitir selecionar-mos as colunas desejadas.
Para isso podemos utilizar o seguinte comando:

%windir%\system32\rundll32.exe dsquery,OpenQueryWindow

Então, encontre o usuário desejado --> clique Exibir, Escolher Colunas --> Selecione a coluna "Nome Distinto".

sexta-feira, 13 de maio de 2011

Lotus Notes Client Portable - USB

Para ter o Lotus Notes Portable, basta executar a instalação do Client Notes do seguinte modo:

  • lotus_notes852_basic_win_en.exe /a /a /v"NOMAD=1 TARGETDIR=E:\Lotus-8.5.2 /qb+"

Onde:
  • lotus_notes852_basic_win_en.exe: excutável do Lotus Notes. Nesse caso é o IBM Lotus Notes Client 8.5.2 em Inglês para Windows
  • E:\Lotus-8.5.2: é o diretório onde se deseja instalar o Lotus Notes. "E:\" é o drive onde o pen-drive está mapeado.
Depois da instalação, copie suas bases (arquivos .nsf) e os arquivos de autenticação (arquivos .id) para o pen-drive e visualize seus emails, por exemplo, de qualquer computador.

    quarta-feira, 11 de maio de 2011

    Componente de Menu não renderiza link - BWCM_URL%20path=

    Construímos uma Intranet no IBM Workplace Web Content Management (WCM) e criamos um componente de Menu para fazer a "rolagem" de notícias.

    O preview do Menu exibiu as notícias como desejado e o preview do Modelo de Apresentação (Presentation Template) também exibiu corretamente.

    Entretanto, ao colocar essa visualização em uma página do Portal, o componente de Menu não estava renderizando os links para as URLs das notícias. Sempre aparecia "BWCM_URL%20path=" no final do link. O caminho para o conteúdo estava vazio.

    Isso acontece porque estamos utilizando o "JSR 286 Content Web Viewer". Existem alguma limitações sobre essse Portlet do WebSphere Portal. É necessário trocar a tag    placeholder tag="href"    por    placeholder tag="href" end="&isPopup=false".

    Em outras palavras, deve ser acrescentada a tag    end="&isPopup=false"    no Placeholder - no componente de Menu.

    Link de Referência: http://www-10.lotus.com/ldd/portalwiki.nsf/dx/wcm-jsr-286-portlet-tips-issues-and-limitations

    terça-feira, 12 de abril de 2011

    Configurando sessão persistente de usuário no WebSphere Portal

    Para configurar sessão persistenten de usuário no IBM WebSphere Portal como, por exemplo, os estados "Normal, minimized, maximized" dos Portlets, devem ser realizados os passos abaixo.

    Entrar no Console Administrativo do Portal, em "Resources --> Resource Enviroment --> Resource Enviroment Providers --> WP ConfigService --> Custom Properties"
    Acrescenstar as variáveis
    • persistent.session.option, valor igual a 1 (String)
    • persistent.session.level, valor igual a 2 (String)
    Reiniciar o ambiente ou utilizar o seguinte comando:
    ./ConfigEngine.sh -DWasUserid=userid -DWasPassword=password update-properties

    Link de Referência
    http://publib.boulder.ibm.com/infocenter/wpdoc/v6r1/index.jsp?topic=/com.ibm.wp.ent.doc_v615/welcome_main.html

    sexta-feira, 8 de abril de 2011

    Webservice client - RAD / WID - CoreException

    Após criar um projeto Client para teste de webservice no WID (WebSphere Integration Developer) ocorreu o seguinte erro:

    • java.lang.NoClassDefFoundError: org.eclipse.core.runtime.CoreException

    Para corrigir esse erro é necessário acrescentar a biblioteca "com.ibm.ws.webservices.thinclient_6.1.0.jar" no "build path" do projeto.

    A biblioteca fica localizada no diretório "wid_home/runtimes/base_v61/runtimes", por exemplo. Ou "rad_home" para o Rational Application Developer.

    Link de referência:
    http://www-01.ibm.com/support/docview.wss?uid=swg21272643