terça-feira, 20 de outubro de 2009

Site em Portugues com Webcast de Lotus

Pessoal,

Esta disponível no site do developerworks um lugar para vc. consultar e baixar informações e webcasts de Lotus em Portugues.

Maiores informações em http://www.ibm.com/developerworks/br/lotus/

segunda-feira, 19 de outubro de 2009

Novidades do Portal Excelence Conference 2009

Encerrou mais um Portal Excelence Conference e como resultado há um caminhão de novidades e coisas para estudar e aprender. No geral o evento foi excelente.

Quero detalhar algumas das novidades nos proximos posts, mas já aproveito para fazer aquele resumão dos higlights de Portal e WCM.

A IBM vai lançar o Portal 6.1.5 e junto com ele a diretriz de tonar o produto mais fácil de utilizar reduzindo desta forma o TCO. Dado o direcionamento estratégico vamos a parte técnica.

O Portal está disponível para as versões 6.1 e 7 do WebSphere Application Server. Para a versão 7 está disponível o WSRP 2.0 e JSR 286 (full implementation) que permite entre outras coisas a troca de mensagens entre portets WSRP. No catálogo de portlets há disponível o portlet que permite troca de mensagens com aplicações PHP em WSRP. Esta alteração permite a troca de mensagens com os webparts do Microsoft Share Point.

Na parte de Mashups o Portal implementa o container de Mashups do Mashup Center 2.0. Este container permite que você execute formulários do Lotus Forms Turbo dentro do Lotus Mashup de forma nativa. Também é possível gerar um mashup a partir dos dados coletados do Forms Turbo e consumir e tratar os dados por meio de chamadas JSON. Na prática isso possibilita uma forma fácil de consumir os dados coletados do formulário conhecendo 0% da api's de Forms.

Na parte de tema agora é possível gerar um thema no portal com tableless. O thema do portal foi customizado para gerar customizações usando JSTL e Expression Language. Isso diminuiu sensivelmente a quantidade de código gerado no JSP do Portal.

Na parte de menu é possível integrar a navegação dos menus de WCM com a navegação de menus no portal. Toda a parte de manutenção de menus foi recriada usando ajax para melhorar a forma de criação de itens no menu. Isso faz com que na própria página você consiga alterar as navegações incluindo sub-itens com drag and drop. Essa parte ficou ótima.

Na parte de Page Builder você pode incluir novos portlets de maneira mais intuitiva. O novo Page Builder permite redefinir colunas e cores das páginas.

Na parte de análise de navegação de páginas no portal há integração com o Coremetrics e webtrends por meio de injeção de código javascript no tema. Eu vi o exemplo com o Webtrends onde era possível saber quem está logando e quais os portlets e páginas que estavam sendo acessados.

Na parte de segurança uma mudança importante foi a aderência do Portal com TAI e TAI++. Para colocar de forma prática, esta integração permite integrar certificados digitais sem a necessidade de desenvolver uma CUR (Custom User Registry). O Uso de TAI++ limpou bastante as customizações de autenticação necessárias para o Portal.

Ainda sobre segurança o portal incluiu um conceito chamado impersonificação que permite mudar o Token de autenticação do portal via programação. Com isso eu posso reescrever o Principal gerado pelo LTPA Token.

Vamos ao WCM.

A primeira mudança foi que agora o portlet de WCM está no padrão JSR286 permitindo a inclusão de comentários, blogs e wikis no template de conteúdo. Outro recurso importante foi o WCM consumir recursos de CMS (Content Management System) através de RSS e publicar o resultado via conteúdo.

Houve melhorias no Inlide editing do WCM permitindo edição em popup e como página web modal. Este recurso ficou muito bonito e ótimo para ser utilizado pelos usuários.

Outro recurso é o Document Picker do WM quer permite você criar conteúdos referenciando links de documentos obtidos diretamente do seu ECM. No syndication foi disponibilizado um portlet que apresenta quais conteúdos tiveram problemas no syndication. Relatório muito útil para a tomada de ações.

Agora o WCM suporta WebDAV. Na prática isso faz com que você consiga fazer download ou atualizados componentes no WCM com uma ferramenta externa cmo Adobe Dreamweaver.
Qualquer ferramenta que suporte WebDAV pode navegar nos metadados e menus do WCM.

Para finalizar gostaria de destacar uma apresentação de Portal com Flex. A direção do Portal em RIA é trabalhar com Doko e javscript, entretando houve uma preocupação de não excluir o Flex como Front End. A equipe do laboratório apresentou o thema 100% em Flex. Programadores Flex podem usar e abusar dos recursos do Portal.

Vou tentar conseguir o vídeo desta demo e colocar neste blog.

terça-feira, 29 de setembro de 2009

Webcast de Portal tunning

Webcast gratuito de Portal

Não perca a oportunidade de participar de mais um WEBCAST Lotus em Português dia 29/09 ás 16:00

O objetivo deste call é compartilhar as experiências de melhores práticas com tunning de portal e explicar alguns dos parâmetros mais importantes na configuração do portal. Serão discutidos métodos para coletar dados e como estebelecer um painel comparativo de benchmarking antes e após o tunning.

Palestrante: Alex Coqueiro

Como participar:

Você terá que ligar para um dos números locais abaixo dependendo de sua região.



Senha de participante: 725566

Para ver a apresentação:

Acesse: http://www.webdialogs.com/join/?schedid=8422658
Conference ID: 8422658

domingo, 13 de setembro de 2009

Wizard Pattern no Portlet Factory

O desenvolvimento de portlets com WebSphere Portlet Factory possui grande produtividade e isto não é novidade. Entretanto um forma de encapsular ainda mais os componentes e aumentar a produtivade auxiliando o desenvolvimento no modelo fabril de software é usar o wizard pattern do WPF.

Este é um recurso de grande potencial para a criação de componentes pré-desenvolvidos de software que pode ser composto com artefatos mais específicos do seu sistema

No developerworks saiu um artigo muito bom sobre a construção de wizard pattern. Para maiores informações clique aqui.

sexta-feira, 11 de setembro de 2009

Casamento do Portal com tecnologia Web2

Sem dúvida alguma a tecnologia de Web2.0 vem influenciando no modelo de trabalho dos Portais. Abaixo segue uma apresentação que mostra qual a relação entre as tecnologias de Web 2.0 e o WebSphere Portal.

quarta-feira, 26 de agosto de 2009

Autenticação do Portal com o Desktop do Windows

Este tema já foi explorado neste blog para a versão 6.0 do Portal. No post de hoje eu gostaria de explorar esta funcionalidade no Portal 6.1.

Na versão 6.1 do Portal o SPNego (componente presente no TAM), funciona como um TAI (trust association interceptor). Desta forma você consegue configurar o portal sem a necessidade de utilizar um software externo de autenticação para estabelecer uma comunicação kerberos com o IIS (Internet Information Server). O módulo kerberos que está no IIS consegue obter um token de confiança entre o Microsoft AD e o Windows.

Para fazer isso a configuração é bem simples. Abaixo segue um passo-a-passo.

1) Enabling and configuring the SPNEGO TAI

Enabling :
Perform the following steps to enable the Simple and Protected GSS-API Negotiation Mechanism trustassociation interceptor:
1. Log on to the WebSphere Application Server administrative console.
2. Click Security > Secure administration, applications, and infrastructure.
3. Click Web security and then click Trust association.
4. Ensure that the Enable trust association checkbox is checked and then click Interceptors.
5. Click New and then type com.ibm.ws.security.spnego.TrustAssociationInterceptorImpl in theInterceptor class name text field.
6. Click OK and then click the Save link to save changes to the master configuration.

Configuring:
1.Log on to the WebSphere Application Server administrative console.
2.Click Security > Secure administration, applications, and infrastructure.
3.Click Web security and then click Trust association.
4.Ensure that the Enable trust association checkbox is checked and then click Interceptors.
5.Click com.ibm.ws.security.spnego.TrustAssociationInterceptorImpl
6.Click Custom properties
7.Click New
8.Name : com.ibm.ws.security.spnego.SPN1.hostName
9.Value : portal61.ibdemo.com
10.Click Save
11.Click new to create a new property :
12.Name : com.ibm.ws.security.spnego.SPN1.filterClass
13.Value : com.ibm.ws.security.spnego.HTTPHeaderFilter
14.Click Save
15.You might have properties in the Custom Properties list as below :
Name = Value
com.ibm.ws.security.spnego.SPN1.hostName = portal61.ibdemo.com
com.ibm.ws.security.spnego.SPN1.filterClass = com.ibm.ws.security.spnego.HTTPHeaderFilter

quinta-feira, 20 de agosto de 2009

Dica: Performance em buscar conteúdos no WCM

Muitas vezes os usuários pedem alguns layouts de conteúdos WCM bem complexos, e uma coisa é fato: O WCM tem algumas limitações na forma de exibir seus conteúdos. Uma das alternativas é usar a API do WCM para trazer seus conteúdos e apresentar da forma que quiser, já que assim estará trabalhando num JSP. Eis que vem um probleminha chato: Performance.

Apesar desse problema ter sido bem reduzido a partir da versão 6.1, para quem ainda está na 6.0 vai uma dica: Usar o Menu Component, se possível, para buscar os conteúdos que você precisa.
Quando usamos o Menu Component do WCM ao invés do searchContent(), nota-se um ganho imenso de performance, já que o Menu Component é gerenciado internamente para cachear os resultados e fazer o melhor método de acesso.

Para quem usa Portal 6.0:
A dica é escrever um XML como saída do Menu Component e os valores que você vai precisar exibir, já que não é possível pegar o conteúdo da iteração corrente no menu.
Ex:
Cabeçalho: [resultado]
Cada resultado: [conteudo][nome][placeholder...][url][placeholder...][/url]
Rodapé: [/resultado]

No WPF você converte o resultado do componente usando uma classe LJO e XmlUtil.parseXml(workspace.render(rc, menuComponent));

Para quem usa Portal 6.1:
Se precisar mesmo usar o WPF, faça como no exemplo acima, porém se puder resolver seu problema com um JSP incluído no resultado do menu, use o método renderingContext.getCurrentResultId();

;)

quarta-feira, 19 de agosto de 2009

Limitações no uso de Ajax em portlets

Não tem nada mais eficiente hoje em dia do que atender as requisições dos usuários em uma chamada Ajax, principalmente em Portais, onde as vezes o conteúdo requisitado é apenas de um pequeno portlet dentre uma página cheia deles. Para isso, o WebSphere Portlet Factory provê alguns builders para trabalhar com Ajax, e a famosa seção "Post-action behavior" nos builders que o suportam.
Andei implementando essa funcionalidade esses dias, e notei algumas limitações importantes.

1. Toda requisição Ajax é delegada a um Servlet dentro da sua aplicação de portlet, e assim, você não possui o contexto de Portal. Ou seja, nem pense em recuperar o PortletRequest ou PortletResponse.

2. O contexto de segurança também não é passado, fiz alguns testes tentando recuperar o UserPrincipal da requisição, e o mesmo sempre retorna nulo. Conversei com o suporte da IBM e me informaram que isso não seria mesmo possível, NA VERSÃO 6.0, pois na versão 6.1 (Spec 286) o contexto do portlet é mantido através do Resource Serving.

Do resto, achei expetacular a facilidade de se implementar chamadas Ajax com o WebSphere Portlet Factory. Sem uma linha de código, consegui trazer algumas aplicações de portlet para o mundo Web 2.

Mais informações:
http://www.ibm.com/developerworks/websphere/library/techarticles/0711_cooke/0711_cooke.html
http://www-10.lotus.com/ldd/pfwiki.nsf/dx/learning-websphere-portlet-factory

terça-feira, 7 de julho de 2009

Lançamento do Webphere Mobile

A IBM lançou o IBM Websphere Mobile Portal Accelerator 6.1.

Este bundle contem o WebSphere Mobile Portal Enable na versão 6.1. Ele vem com suporte ao WebSphere Portal 6.1 permitindo disponibilizar conteúdo móvel para o Websphere Portal.

Para detalhes sobre o produto clique aqui.