Uma amigo desenvolvedor que estava trabalhando com a ferramenta do WebSpehre Portlet Factory (WPF) me pediu para eu ajudá-lo a resolver um problema na applicação dele.
O problema era o seguinte: Ele havia declarado eventos em dois portlets. O primeiro portlet, que estava enviando o evento ( Firing event) residia na página inicial, digamos pagina “A”.
O segundo portlet, o portlet que recebia o evento, foi colocado em outra página, digamos página “B”. O portelt na página B funcionava corretamente e sempre recebia o evento sem problema. Super Duper!
Entretanto, e aqui está o defeito, o usuário tinha que visitar a pagina “B” antes de enviar o evento da página A. Caso o usuário não tivesse visitado a página B antes de enviar o evento da página “A”, o portlet não funcionaria.
Hummmmmmm… um problema muito interessante.
Este problema é causado pelo fato de que quando o evento é enviado da pagina “A” para a pagina “B”, o método main ainda não havia sido executado.
Desta forma o Event Handler do portlet na página “B”, ainda não tinha como responder a um evento que havia sido disparado de outra página.
Uma vez que identificamos o problema, foi fácil achar uma solução para este problema, e a os eventos entre os portlets trabalharam sem problema.
Você saberia dizer qual é a solução para o problema acima?