domingo, 26 de julio de 2009

Composite web application con extjs y Tibco pagebus

Se me ocurre que una buena manera de crear un dashboard es componiendo distintas partes, al estilo ratis / lego. Una de los desafios de crear aplicaciones compuestas es el de mantener bajo acople entre las partes. Es decir, que sean lo más idependientes posible. Agregar / quitar un nuevo mashup no debe afectar al resto. Las dependencias entre unos y otros deberían ser mínimas.

Un patron de diseño que resuelve este problema es el observe o publish / subscribe. Y una buena implementacion en javascript es el pagebus de Tibco:
http://developer.tibco.com/pagebus/



En el prototipo se puede ver los filtros del dashboard a la derecha y 2 informes en el centro. El 1ro es una grilla y el segundo muestra los filtros seleccionados. Cuando se cambia un filtro se publica en el bus un evento. Ambos informes se suscribieron al bus y por lo tanto reciben estas notificaciones. La grilla ejecuta una llamada ajax (se puede ver en firebug), el segundo informe muesta el mensaje publicado.

Este es el codigo fuente:
http://codepaste.net/2mcfzz

Todavía hay mucho por hacer, pero la idea parece funcionar!

No hay comentarios.: