<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-5272307855991395086</atom:id><lastBuildDate>Sat, 05 Oct 2024 02:15:23 +0000</lastBuildDate><category>ExtJS</category><category>Java</category><category>Spring</category><category>Eclipse</category><category>Agil Scrum Metodologia MapaMental</category><category>Agile</category><category>Conferencias</category><category>Eventos</category><category>Ibatis</category><category>MantisBT</category><category>Metodologia</category><category>Scrum</category><category>Struts</category><category>Twitter</category><title>Jonathan Lara&#39;s blog</title><description>Java, ExtJs, tecnologia y más...</description><link>http://jonathanlarav.blogspot.com/</link><managingEditor>noreply@blogger.com (jonathanlarav)</managingEditor><generator>Blogger</generator><openSearch:totalResults>10</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5272307855991395086.post-5883370762816884127</guid><pubDate>Wed, 08 Sep 2010 16:30:00 +0000</pubDate><atom:updated>2010-09-08T09:41:11.685-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Agile</category><category domain="http://www.blogger.com/atom/ns#">Eventos</category><category domain="http://www.blogger.com/atom/ns#">Metodologia</category><category domain="http://www.blogger.com/atom/ns#">Scrum</category><title>Ágiles 2010: 3ras Jornadas Latinoamericanas sobre Metodologías Ágiles</title><description>&lt;span style=&quot;;font-family:verdana;font-size:85%;&quot;  &gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;border-collapse: separate; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;font-size:medium;&quot; &gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;border-collapse: collapse;font-size:13px;&quot; &gt;Ágiles 2010 es una excelente oportunidad para encontrase con&lt;br /&gt;profesionales de IT de la región, interesados en compartir sus&lt;br /&gt;experiencias, debatir y capacitarse en temas relacionados con el&lt;br /&gt;desarrollo de software a través del uso de metodologías ágiles.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;border-collapse: collapse;font-size:13px;&quot; &gt;Esta tercera edición, con sede en la ciudad de Lima, Perú, contará&lt;br /&gt;con la presencia de especialistas locales e internacionales, quienes&lt;br /&gt;compartirán su conocimiento durante los cuatro días que durará el&lt;br /&gt;evento.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;border-collapse: separate; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;font-size:medium;&quot; &gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;border-collapse: collapse;font-size:13px;&quot; &gt;El programa incluye distintos tipos de actividades: presentaciones,&lt;br /&gt;sesiones interactivas, talleres y espacios abiertos de debate.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;border-collapse: collapse;font-size:13px;&quot; &gt;Entre los invitados internacionales se encuentran los keynote&lt;br /&gt;speakers Lee Devin y Joshua Kerievsky, que también estarán brindando&lt;br /&gt;cursos durante el evento.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size:85%;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://agiles2010.agiles.org/wp-content/uploads/2010/04/banner-es.gif&quot;&gt;&lt;img style=&quot;display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 538px; height: 81px;&quot; src=&quot;http://agiles2010.agiles.org/wp-content/uploads/2010/04/banner-es.gif&quot; alt=&quot;&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;p  style=&quot;font-family:verdana;&quot;&gt;&lt;span style=&quot;font-size:85%;&quot;&gt;&lt;b&gt;¡&lt;a href=&quot;http://agiles2010.agiles.org/lang/es/%20inscripcion/&quot;&gt;Inscríbete&lt;/a&gt; y se parte de Ágiles 2010! &lt;/b&gt;&lt;/span&gt;&lt;/p&gt;</description><link>http://jonathanlarav.blogspot.com/2010/09/agiles-2010-3ras-jornadas.html</link><author>noreply@blogger.com (jonathanlarav)</author><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5272307855991395086.post-7347542381942766002</guid><pubDate>Sun, 18 Oct 2009 04:47:00 +0000</pubDate><atom:updated>2009-10-17T22:10:57.607-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Conferencias</category><category domain="http://www.blogger.com/atom/ns#">Java</category><category domain="http://www.blogger.com/atom/ns#">Spring</category><title>Spring Community Day Lima 2009</title><description>&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFtfpRxUyIuCptg4J4tnk7h8vZ90Z3-dCnuGKPgvGHt6SWrh50P-CrI7U9c8sV1ZkrkUWWlR-BwvPOwt53uQwJiK1s4OYSL6dhIW-nOoRchV4vvuP98fxDgkQw_5sUlhyk2W2Wj7fV1n6i/s1600-h/aficheSpringCommunityDay.png&quot;&gt;&lt;img style=&quot;margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 226px; height: 320px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFtfpRxUyIuCptg4J4tnk7h8vZ90Z3-dCnuGKPgvGHt6SWrh50P-CrI7U9c8sV1ZkrkUWWlR-BwvPOwt53uQwJiK1s4OYSL6dhIW-nOoRchV4vvuP98fxDgkQw_5sUlhyk2W2Wj7fV1n6i/s320/aficheSpringCommunityDay.png&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5393802985711024530&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;span style=&quot;;font-family:verdana;font-size:85%;&quot;  &gt;Uno de los últimos eventos de este año para la comunidad peruana de desarrolladores, el Spring Community Day Lima 2009 una conferencia en la cual los expositores (incluido el autor) compartiràn su experiencia sobre el framework Spring con la comunidad&lt;/span&gt;&lt;span style=&quot;font-size:85%;&quot;&gt;&lt;span style=&quot;font-family:verdana;&quot;&gt;, hasta el momento ya nos encontramos en la segunda reuniòn de coordinación y el evento promete bastante, vamos a desarrollar un caso de negocio completo, inciando desde el user story (perspectiva ágil desde luego)  hasta pasar por cada uno de los proyectos de Spring, mi parte junto con Mayer Horna es Spring DAO, usaremos hibernate y MySql hasta el momento.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-size:85%;&quot;&gt;&lt;span style=&quot;font-family:verdana;&quot;&gt;Entre los demás proyectos de Spring a verse están Spring MVC, Spring Core, Spring Security, Unit Test con Spring y al final pero no menos importante la subida del proyecto a la nube por medio de Cloud Foundry.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-size:85%;&quot;&gt;&lt;span style=&quot;font-family:verdana;&quot;&gt;Durante el evento se podrán twitterar preguntas que se responderán al momento, y los asistentes que lleven sus portátiles podrán seguirnos con el código que va a estar publicado previamente, bueno solo queda invitar a la comunidad a que participen de este gran evento.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=&quot;font-size:85%;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family:verdana;&quot;&gt;Dejo el &lt;/span&gt;&lt;a style=&quot;font-family: verdana;&quot; href=&quot;http://communityday2009.springperu.org/&quot;&gt;link&lt;/a&gt;&lt;span style=&quot;font-family:verdana;&quot;&gt; del evento, saludos.&lt;/span&gt;&lt;/span&gt;</description><link>http://jonathanlarav.blogspot.com/2009/10/spring-community-day-lima-2009.html</link><author>noreply@blogger.com (jonathanlarav)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFtfpRxUyIuCptg4J4tnk7h8vZ90Z3-dCnuGKPgvGHt6SWrh50P-CrI7U9c8sV1ZkrkUWWlR-BwvPOwt53uQwJiK1s4OYSL6dhIW-nOoRchV4vvuP98fxDgkQw_5sUlhyk2W2Wj7fV1n6i/s72-c/aficheSpringCommunityDay.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5272307855991395086.post-7463428534642510970</guid><pubDate>Thu, 10 Sep 2009 08:55:00 +0000</pubDate><atom:updated>2009-09-10T02:17:55.858-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Agil Scrum Metodologia MapaMental</category><title>Mi primer Scrum Mind map</title><description>&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhzszAN8qVMkSnePnnxS2V2W9JHApbIy9QMTmXuT21c4s6zvmwHVSwipRbdXNPmwRsSCpRquv6S8_UQFJ5QJn-dRucB4y3fNC5WK-e0Irp3UPIB9KskE0MHHQFSrQRjonKqPsUoCOEvxStb/s1600-h/Scrum.jpg&quot;&gt;&lt;img style=&quot;cursor: pointer; width: 518px; height: 163px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhzszAN8qVMkSnePnnxS2V2W9JHApbIy9QMTmXuT21c4s6zvmwHVSwipRbdXNPmwRsSCpRquv6S8_UQFJ5QJn-dRucB4y3fNC5WK-e0Irp3UPIB9KskE0MHHQFSrQRjonKqPsUoCOEvxStb/s320/Scrum.jpg&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5379765068299479730&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=&quot;font-size:85%;&quot;&gt;&lt;span style=&quot;font-family:verdana;&quot;&gt;&lt;br /&gt;Desde hace un tiempo que me vengo interesando bastante por el mundo de las metodologías ágiles, he estado investigando acerca de Scrum, XP, kanban, Lean entre otras. Es así que es estado participando en las reuniones de la comunidad e &lt;a href=&quot;http://www.agile-peru.net/&quot;&gt;AgilePeru&lt;/a&gt; oyendo las experiencias de las personas que tomaron la iniciaiva de lo agil y les va muy bien, en el Peru esto todavia no esta muy desarrollado, pues la mayoría de las consultoras sigue 2 o hasta podríamos decir que 3 caminos: El primero es el de RUP, quièn no ha empezado con RUP y sus famosas iteraciones, despues de esto algo que esta ganando cada vez más adeptos es el famoso y muy conocido CMMI con sus innumerables documentos conforme niveles vas escalando en el modelo, y a decir verdad es bastante bueno, yo mismo he trabajado en varios proyectos implementando esta metodología y he revisado sus bases y me parece bastante completa, sin embargo creo que no sería ideal para cualquier proyecto, debido precisamente a su complejidad, en proyectos en los que los requerimientos son muy cambiantes y el tiempo es bastante ajustado creo que no sería nuestra mejor opción.&lt;br /&gt;&lt;br /&gt;Es precisamente allí donde entran las metodologías agiles, cuyos preceptos no he oído decir pero a mi parecer tienen una filosofía totalmente contraria a RUP y CMMI, quienes dicen documenta primero, detalla lo más que puedas y de despues de eso dale los documentos al programador que el no necesita ni conversar con los analistas, en el doc esta todo... :S.&lt;br /&gt;&lt;br /&gt;Bueno últimamente he estado en proyectos del tipo lo necesito para mañana!!!, es por ello el motivo de mi investigación y en particular en este caso el propósito de este post, he creado un mapa mental (tecnica la cual recomendo enormemente, en otro artículo explicare sus bondades) para poder diagramar el modo de trabajo de scrum y cuáles son los pasos básicos para la implementación del mismo en una empresa, vale decir que esta muy amarrado con conceptos de &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size:85%;&quot;&gt;&lt;span style=&quot;font-family:verdana;&quot;&gt;productividad y &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size:85%;&quot;&gt;&lt;span style=&quot;font-family:verdana;&quot;&gt;trabajo en equipo y que como en todo lugar el primer problema a enfrentar el el cambio, algo a la que muchas personas se oponen radicalmente, por miedo generalmente pero al final es algo necesario, todo siempre cambia.&lt;br /&gt;&lt;br /&gt;Dejo la imagen del mi mapa mental, así como el archivo original, lo he creado con una herramienta llamada &lt;a href=&quot;http://www.xmind.net/&quot;&gt;XMind &lt;/a&gt;que permite subir los mapas a su web para &lt;a href=&quot;http://share.xmind.net/jonathanlarav/ash/&quot;&gt;verlos online&lt;/a&gt; (no abre con IE).&lt;br /&gt;&lt;br /&gt;Saludos&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;</description><link>http://jonathanlarav.blogspot.com/2009/09/mi-primer-scrum-mind-map.html</link><author>noreply@blogger.com (jonathanlarav)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhzszAN8qVMkSnePnnxS2V2W9JHApbIy9QMTmXuT21c4s6zvmwHVSwipRbdXNPmwRsSCpRquv6S8_UQFJ5QJn-dRucB4y3fNC5WK-e0Irp3UPIB9KskE0MHHQFSrQRjonKqPsUoCOEvxStb/s72-c/Scrum.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5272307855991395086.post-8669420381469577679</guid><pubDate>Thu, 06 Aug 2009 04:34:00 +0000</pubDate><atom:updated>2009-08-05T21:41:29.881-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Eclipse</category><category domain="http://www.blogger.com/atom/ns#">MantisBT</category><title>Introducción a Mantis Bug Tracker</title><description>&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgX2v31zAC9gGUkg2FHZCSG_jp78CIcHGDM-MsGe0ni3QGyjXfTlTP1W4B5ZdAGTib9AY9Mu4HZe_C99PBvraZ_aaBr-31YhU5B2eNmykI-cnL99o5ZDahuqFJgB7K3jhsFxVdxe_J_IPOb/s1600-h/mantis_logo.gif&quot;&gt;&lt;img style=&quot;float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 242px; height: 102px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgX2v31zAC9gGUkg2FHZCSG_jp78CIcHGDM-MsGe0ni3QGyjXfTlTP1W4B5ZdAGTib9AY9Mu4HZe_C99PBvraZ_aaBr-31YhU5B2eNmykI-cnL99o5ZDahuqFJgB7K3jhsFxVdxe_J_IPOb/s320/mantis_logo.gif&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5366705773901961522&quot; /&gt;&lt;/a&gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;text-align: left;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 18px; &quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;font-family:verdana;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-small;&quot;&gt;Después de tiempo regreso a los post, esta vez para explicar una herramienta muy útil el &lt;/span&gt;&lt;/span&gt;&lt;a href=&quot;http://www.mantisbt.org/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;font-family:verdana;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-small;&quot;&gt;Mantis Bug Tracker&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;font-family:verdana;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-small;&quot;&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;ES-TRAD&quot; style=&quot;line-height:115%; mso-ansi-language:ES-TRAD&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;font-family:verdana;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-small;&quot;&gt;En los desarrollos orientados a la calidad es muy importante hacer un seguimiento a las observaciones que se dan en tiempo de desarrollo, en muchas empresas esto se da a través de archivos Excel en donde se listan una serie de incidencias y pantallazos con la evidencia correspondiente, el MantisBT es un software Open Source que nos permite realizar esto, trae un entorno totalmente ágil para poder registrar incidencias, asignar una incidencia a uno o muchos usuarios, crear roles para los usuarios &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;line-height:115%&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;font-family:verdana;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-small;&quot;&gt;(informador, desarrollador, etc), agregar documentos por incidencia, entre otras cosas. Se instala sobre un servidor LAMP o WAMP, trae su propia BBDD en MySql y es bastante personalizable.&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;font-family:verdana;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-small;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;line-height:115%&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;font-family:verdana;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-small;&quot;&gt;Asimismo se puede integrar con muchas herramientas como un cliente de correo (si no se tiene un dominio propio se puede usar gmail) para que se nos envíe un mail al momento de que Calidad nos reporte una nueva incidencia o cuando la incidencia cambie de estado; &lt;/span&gt;&lt;/span&gt;&lt;a href=&quot;http://xnoccio.com/486-mantis-en-eclipse-plugin-mylyn-mantis/&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;font-family:verdana;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-small;&quot;&gt;Se puede integrar con eclipse&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;font-family:verdana;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-small;&quot;&gt;, CVS o SVN para que nuestras incidencias aparezcan como tareas en el eclipse y de este modo asociar un commit a una tarea y por tanto a una incidencia (se cambia de estado y se envía un correo automáticamente apenas commiteamos desde el eclipse).&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;font-family:verdana;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-small;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;line-height:115%&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;font-family:verdana;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-small;&quot;&gt;Bueno, espero que les pueda ayudar, sobre todo porque las incidencias no son tan solo cosas que hay que arreglar y ya, sino que a través del seguimiento de la misma podemos tener datos importantes que nos ayuden a determinar el costo final de un proyecto y el tiempo del mismo.&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;font-family:verdana;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-small;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;line-height:115%&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;  style=&quot;font-family:verdana;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: x-small;&quot;&gt;Saludos.&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;</description><link>http://jonathanlarav.blogspot.com/2009/08/introduccion-mantis-bug-tracker.html</link><author>noreply@blogger.com (jonathanlarav)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgX2v31zAC9gGUkg2FHZCSG_jp78CIcHGDM-MsGe0ni3QGyjXfTlTP1W4B5ZdAGTib9AY9Mu4HZe_C99PBvraZ_aaBr-31YhU5B2eNmykI-cnL99o5ZDahuqFJgB7K3jhsFxVdxe_J_IPOb/s72-c/mantis_logo.gif" height="72" width="72"/><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5272307855991395086.post-4292842437945880935</guid><pubDate>Tue, 16 Jun 2009 06:19:00 +0000</pubDate><atom:updated>2009-06-16T01:42:41.388-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">ExtJS</category><title>TreePanel con ExtJS</title><description>En este pequeño articulo vamos a iniciar creando un menú que abra las páginas que le indicamos, para esto vamos a necesitar la liberia del ExtJS y principalmente la clase Ext.tree.TreePanel, en mi caso lo he hecho con la versión 3.0 que a la fecha de este post se encuentra en RC 2.&lt;br /&gt;&lt;br /&gt;ExtJS: &lt;a href=&quot;http://extjs.com/products/extjs/download.php&quot;&gt;http://extjs.com/products/extjs/download.php&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Importamos las librerias de ext y luego los archivos:&lt;br /&gt;&lt;br /&gt;pricipal.css&lt;br /&gt;&lt;pre class=&quot;brush: css&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;/**   CSS para pantalla principal  **/&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;html, body {&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    font: normal 12px verdana;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    margin: 0;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    padding: 0;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    border: 0 none;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    overflow: hidden;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    height: 100%;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;.p {&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    margin:5px;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;.msg .x-box-mc {&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    font-size:13px;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;#msg-div {&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    position:absolute;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    left:35%;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    top:10px;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    width:310px;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    z-index:30000;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;}.x-grid3-row-body p {&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    margin:5px 5px 10px 5px !important;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;}.settings {&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    background-image:url(../images/png/folder_wrench.png);&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;}.nav {&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    background-image:url(../images/png/folder_go.png);&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;}#north {&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    background: #7F99BE url(../images/gif/layout-browser-hd-bg.gif) repeat-x center;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;#center1 {&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    background-image:url(../images/jpeg/desktop.jpg);&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;#north h1 {&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    font-size: 16px;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    color: #fff;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    font-weight: normal;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    padding: 5px 10px;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;.principal_tabhome{&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    background-image:url(../images/png/principal_home.png) !important;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;customTreePanel.js&lt;br /&gt;&lt;br /&gt;&lt;pre class=&quot;brush: js&quot;&gt;&lt;br /&gt;Ext.BLANK_IMAGE_URL = &#39;ext/resources/images/default/s.gif&#39;;&lt;br /&gt;Ext.namespace(&#39;Ext.org.demo&#39;);&lt;br /&gt;     &lt;br /&gt;     //Clase para creacion de los tabs en la parte derecha&lt;br /&gt;     Ext.ux.IFrameComponent = Ext.extend(Ext.BoxComponent, {&lt;br /&gt;       onRender : function(ct, position){&lt;br /&gt;        this.el = ct.createChild({tag: &#39;iframe&#39;, id: &#39;iframe-&#39;+ this.id, frameBorder: 0, src: this.url});&lt;br /&gt;       }&lt;br /&gt;  });&lt;br /&gt;     &lt;br /&gt;     //Panel Superior&lt;br /&gt;     Ext.org.demo.PrincipalHeader = function(config) {&lt;br /&gt;      var tree = config.tree;&lt;br /&gt;      var myRef = this;&lt;br /&gt;      this.txtFindObject = new Ext.form.TextField({&lt;br /&gt;    width: 200,&lt;br /&gt;    emptyText:&#39;Buscar&#39;,&lt;br /&gt;    listeners:{&lt;br /&gt;     render: function(f){&lt;br /&gt;      f.el.on(&#39;keydown&#39;, &lt;br /&gt;       function (e){&lt;br /&gt;        tree.filterTree(e);&lt;br /&gt;       }&lt;br /&gt;       , f, {buffer: 350});&lt;br /&gt;     }&lt;br /&gt;    }&lt;br /&gt;   });&lt;br /&gt;   &lt;br /&gt;   this.btnExpandAll = new Ext.Toolbar.Button({&lt;br /&gt;    iconCls: &#39;icon-expand-all&#39;,&lt;br /&gt;    tooltip: &#39;Expandir Todo&#39;,&lt;br /&gt;                handler: function(){ &lt;br /&gt;                 tree.root.expand(true);&lt;br /&gt;                }&lt;br /&gt;   });&lt;br /&gt;   &lt;br /&gt;      this.btnCollapseAll = new Ext.Toolbar.Button({&lt;br /&gt;                iconCls: &#39;icon-collapse-all&#39;,&lt;br /&gt;                tooltip: &#39;Colapsar Todo&#39;,&lt;br /&gt;                handler: function(){ &lt;br /&gt;                 tree.root.collapse(true); &lt;br /&gt;                }&lt;br /&gt;      })&lt;br /&gt;      &lt;br /&gt;      this.toolBar = new Ext.Toolbar({&lt;br /&gt;       cls:&#39;top-toolbar&#39;,  &lt;br /&gt;       items:[ &#39; &#39;&lt;br /&gt;         ,this.txtFindObject&lt;br /&gt;         ,&#39; &#39;&lt;br /&gt;         ,&#39; &#39;&lt;br /&gt;         ,this.btnExpandAll&lt;br /&gt;         ,&#39;-&#39;&lt;br /&gt;         ,this.btnCollapseAll&lt;br /&gt;       ]&lt;br /&gt;      });&lt;br /&gt;      &lt;br /&gt;   config.items = [{&lt;br /&gt;              xtype:&#39;box&#39;,&lt;br /&gt;              el:&#39;north&#39;,&lt;br /&gt;              border:false,&lt;br /&gt;              anchor: &#39;none -25&#39;&lt;br /&gt;          }&lt;br /&gt;          ,this.toolBar&lt;br /&gt;      ]; &lt;br /&gt;      &lt;br /&gt;   Ext.org.demo.PrincipalHeader.superclass.constructor.call(this, config); &lt;br /&gt;  }&lt;br /&gt;  &lt;br /&gt;  Ext.extend(Ext.org.demo.PrincipalHeader, Ext.Panel, {  &lt;br /&gt;    layout:&#39;anchor&#39;,&lt;br /&gt;          initComponent: function(){&lt;br /&gt;           Ext.org.demo.PrincipalHeader.superclass.initComponent.apply(this);&lt;br /&gt;    }&lt;br /&gt;  });&lt;br /&gt;     &lt;br /&gt;     &lt;br /&gt;     &lt;br /&gt;  //Tree&lt;br /&gt;     Ext.org.demo.PrincipalTree = function(config) {&lt;br /&gt;      &lt;br /&gt;      var filter = new Ext.tree.TreeFilter(this, {&lt;br /&gt;    clearBlank: true,&lt;br /&gt;    autoClear: true&lt;br /&gt;   });&lt;br /&gt;      var hiddenPkgs = [];&lt;br /&gt;      &lt;br /&gt;   this.filterTree = function filterTree(e){&lt;br /&gt;    &lt;br /&gt;       var text = e.target.value;&lt;br /&gt;    Ext.each(hiddenPkgs, function(n){&lt;br /&gt;     n.ui.show();&lt;br /&gt;    });&lt;br /&gt;    if(!text){&lt;br /&gt;     filter.clear();&lt;br /&gt;     return;&lt;br /&gt;    }&lt;br /&gt;    this.expandAll();&lt;br /&gt;    &lt;br /&gt;    var re = new RegExp( Ext.escapeRe(text), &#39;i&#39;);&lt;br /&gt;    filter.filterBy(function(n){&lt;br /&gt;     return !n.attributes.leaf || re.test(n.text);&lt;br /&gt;    });&lt;br /&gt;    &lt;br /&gt;    hiddenPkgs = [];&lt;br /&gt;    this.root.cascade(function(n){&lt;br /&gt;     if(!n.attributes.leaf &amp;&amp; n.ui.ctNode.offsetHeight &lt; 3){&lt;br /&gt;      n.ui.hide();&lt;br /&gt;      hiddenPkgs.push(n);&lt;br /&gt;     }&lt;br /&gt;    }); &lt;br /&gt;      }         &lt;br /&gt;   Ext.org.demo.PrincipalTree.superclass.constructor.call(this, config); &lt;br /&gt;  }&lt;br /&gt;  &lt;br /&gt;  Ext.extend(Ext.org.demo.PrincipalTree, Ext.tree.TreePanel, {&lt;br /&gt;   //enableDD: true,    &lt;br /&gt;   minSize: 175,&lt;br /&gt;      maxSize: 300,&lt;br /&gt;      width: 200,&lt;br /&gt;         initComponent: function(){&lt;br /&gt;          Ext.org.demo.PrincipalTree.superclass.initComponent.apply(this);&lt;br /&gt;   }&lt;br /&gt;  });&lt;br /&gt;     &lt;br /&gt;  //Vista Principal, agrupa al panel superior, izquierdo, centro &lt;br /&gt;     Ext.org.demo.PrincipalView = function(config) {&lt;br /&gt;   this.north = config.north;&lt;br /&gt;   this.west = config.west;&lt;br /&gt;   this.center = config.center;&lt;br /&gt;   &lt;br /&gt;   config.items = [&lt;br /&gt;       this.north&lt;br /&gt;          ,this.west&lt;br /&gt;          ,this.center &lt;br /&gt;      ];&lt;br /&gt;   &lt;br /&gt;   //Funcion para añadir un tab&lt;br /&gt;   this.addTab = function addTab(e) {&lt;br /&gt;    var tabs = this.center;&lt;br /&gt;    &lt;br /&gt;    var open = !tabs.getItem(e.id);&lt;br /&gt;       if (open){&lt;br /&gt;     var newPanel = new Ext.Panel({&lt;br /&gt;      id : e.id,&lt;br /&gt;      title: e.text,&lt;br /&gt;      loadScripts: true,&lt;br /&gt;      autoScroll: true,&lt;br /&gt;      closable: true, &lt;br /&gt;      iconCls:e.id,&lt;br /&gt;      //style: &quot;background:url(&quot;+e.attributes.icon+&quot;)!important&quot;,&lt;br /&gt;      //icon : e.attributes.icon,&lt;br /&gt;      layout:&#39;fit&#39;,&lt;br /&gt;      items: [ new Ext.ux.IFrameComponent({ &lt;br /&gt;       id: e.id&lt;br /&gt;       , url: e.attributes.url&lt;br /&gt;       , name: e.id&lt;br /&gt;      }) ]&lt;br /&gt;     });&lt;br /&gt;     tabs.add(newPanel);&lt;br /&gt;     tabs.setActiveTab(newPanel);&lt;br /&gt;      }&lt;br /&gt;    else {&lt;br /&gt;     tabs.setActiveTab(e.id);&lt;br /&gt;    }&lt;br /&gt;   }&lt;br /&gt;   &lt;br /&gt;   //Para controlar el load de los items&lt;br /&gt;   this.west.on(&#39;click&#39;, function(node, e){&lt;br /&gt;           if(node.isLeaf()){&lt;br /&gt;              e.stopEvent();&lt;br /&gt;              this.addTab(node);&lt;br /&gt;           }&lt;br /&gt;      },this);&lt;br /&gt;   &lt;br /&gt;   &lt;br /&gt;   Ext.org.demo.PrincipalView.superclass.constructor.call(this, config); &lt;br /&gt;  };&lt;br /&gt;    &lt;br /&gt;  Ext.extend(Ext.org.demo.PrincipalView, Ext.Viewport, {  &lt;br /&gt;          layout:&#39;border&#39;&lt;br /&gt;  });&lt;br /&gt;     &lt;br /&gt;  &lt;br /&gt;  Ext.onReady(function(){&lt;br /&gt;   Ext.state.Manager.setProvider(new Ext.state.CookieProvider());&lt;br /&gt;   &lt;br /&gt;   //LADO IZQUIERDO: Arbol &lt;br /&gt;   var tree = new Ext.org.demo.PrincipalTree({&lt;br /&gt;       rootVisible:false,&lt;br /&gt;       lines: true,&lt;br /&gt;       region:&#39;west&#39;,&lt;br /&gt;       split: true,&lt;br /&gt;       autoScroll: true,&lt;br /&gt;       title:&#39;Menu de Opciones&#39;,  &lt;br /&gt;       iconCls:&#39;principal_mainmenu&#39;,&lt;br /&gt;       singleExpand: false,&lt;br /&gt;       collapsible: true,&lt;br /&gt;       layoutConfig:{&lt;br /&gt;                      animate:true&lt;br /&gt;                  },&lt;br /&gt;       loader: new Ext.tree.TreeLoader({}),&lt;br /&gt;       root: new Ext.tree.AsyncTreeNode(&lt;br /&gt;        {&lt;br /&gt;     &#39;children&#39;:&lt;br /&gt;      [&lt;br /&gt;       {&lt;br /&gt;       &#39;text&#39;:&#39;Base&#39;,&lt;br /&gt;       &#39;children&#39;:&lt;br /&gt;        [&lt;br /&gt;         {&lt;br /&gt;          &#39;id&#39;:&#39;Ordenes_de_Pedido&#39;,&lt;br /&gt;          &#39;icon&#39;:&#39;urlDelIcono.png&#39;,&lt;br /&gt;          &#39;text&#39;:&#39;Ordenes de Pedido&#39;,&lt;br /&gt;          &#39;leaf&#39;:true,&lt;br /&gt;          &#39;url&#39;: &#39;urlDeLaPagina.html&#39;&lt;br /&gt;         },{&lt;br /&gt;          &#39;id&#39;:&#39;Mantenimiento de Empleados&#39;,&lt;br /&gt;          &#39;icon&#39;:&#39;urlDelIcono.png&#39;,&lt;br /&gt;          &#39;text&#39;:&#39;Mantenimiento de Empleados&#39;,&lt;br /&gt;          &#39;leaf&#39;:true&lt;br /&gt;         },{&lt;br /&gt;          &#39;id&#39;:&#39;Empresa_de_Servicio&#39;,&lt;br /&gt;          &#39;icon&#39;:&#39;urlDelIcono.png&#39;,&lt;br /&gt;          &#39;text&#39;:&#39;Empresas de Servicio&#39;,&lt;br /&gt;          &#39;leaf&#39;:true&lt;br /&gt;         }&lt;br /&gt;        ]&lt;br /&gt;       },&lt;br /&gt;       {&lt;br /&gt;       &#39;text&#39;:&#39;Segundo Modulo&#39;,&lt;br /&gt;       &#39;children&#39;:&lt;br /&gt;        [&lt;br /&gt;         {&lt;br /&gt;          &#39;id&#39;:&#39;Empresa2&#39;,&lt;br /&gt;          &#39;icon&#39;:&#39;urlDelIcono.png&#39;,&lt;br /&gt;          &#39;text&#39;:&#39;Empresa 2&#39;,&lt;br /&gt;          &#39;leaf&#39;:true&lt;br /&gt;         },{&lt;br /&gt;          &#39;id&#39;:&#39;ModuloDePruebas1&#39;,&lt;br /&gt;          &#39;icon&#39;:&#39;urlDelIcono.png&#39;,&lt;br /&gt;          &#39;text&#39;:&#39;Modulo de Pruebas 1&#39;,&lt;br /&gt;          &#39;leaf&#39;:true&lt;br /&gt;         },{&lt;br /&gt;          &#39;id&#39;:&#39;ModuloDePruebas2&#39;,&lt;br /&gt;          &#39;icon&#39;:&#39;urlDelIcono.png&#39;,&lt;br /&gt;          &#39;text&#39;:&#39;Modulo de Pruebas 2&#39;,&lt;br /&gt;          &#39;leaf&#39;:true&lt;br /&gt;         }&lt;br /&gt;        ]&lt;br /&gt;       }&lt;br /&gt;      ],&lt;br /&gt;     &#39;expanded&#39;:true&lt;br /&gt;    }&lt;br /&gt;    )&lt;br /&gt;   });   &lt;br /&gt;   &lt;br /&gt;   //PARTE SUPERIOR: Para las busquedas de objetos en el menu &lt;br /&gt;   var hd = new Ext.org.demo.PrincipalHeader({&lt;br /&gt;          border: false,          &lt;br /&gt;          region:&#39;north&#39;,&lt;br /&gt;          cls: &#39;docs-header&#39;,&lt;br /&gt;          height:60,&lt;br /&gt;          tree : tree&lt;br /&gt;      });&lt;br /&gt;     &lt;br /&gt;   //Tab Panel (Parte derecha) &lt;br /&gt;   var tabs = new Ext.TabPanel({&lt;br /&gt;       region:&#39;center&#39;,&lt;br /&gt;       deferredRender:false,&lt;br /&gt;       activeTab:0,&lt;br /&gt;       items:[{&lt;br /&gt;         contentEl:&#39;center1&#39;,&lt;br /&gt;         title: &#39;Home&#39;,&lt;br /&gt;         iconCls: &#39;principal_tabhome&#39;,&lt;br /&gt;         html : &#39;Aqui se puede linkear a una imagen o ingresar cualquier fragmento de html&#39;,&lt;br /&gt;         //autoLoad: &#39;http://www.google.com.pe/&#39;,&lt;br /&gt;         autoScroll:true&lt;br /&gt;       }]&lt;br /&gt;   });&lt;br /&gt;     &lt;br /&gt;   var principalView = new Ext.org.demo.PrincipalView({&lt;br /&gt;    north:hd&lt;br /&gt;    ,west:tree&lt;br /&gt;    ,center:tabs &lt;br /&gt;   });  &lt;br /&gt;  });&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Esta claro que hay partes de este código que deben generarse dinámicamente como el bloque que va dentro de: &quot;Ext.tree.AsyncTreeNode&quot;, esto podría de acuerdo a los roles y permisos que tenga el usuario logeado, tambien se puede dividir el codigo en varios *.js, pero esto hubiera hecho aún mas largo este post. :S&lt;br /&gt;&lt;br /&gt;un &lt;a href=&quot;http://picasaweb.google.com/lh/photo/OLXMM9klkir5-rBvOLfXdg?authkey=Gv1sRgCM2em4eQ8PLDjwE&amp;amp;feat=directlink&quot;&gt;ejemplo &lt;/a&gt;de como se vería.</description><link>http://jonathanlarav.blogspot.com/2009/06/treepanel-con-extjs.html</link><author>noreply@blogger.com (jonathanlarav)</author><thr:total>19</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5272307855991395086.post-1537521623083100071</guid><pubDate>Tue, 09 Jun 2009 02:43:00 +0000</pubDate><atom:updated>2009-06-15T22:01:41.534-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Eclipse</category><category domain="http://www.blogger.com/atom/ns#">Java</category><category domain="http://www.blogger.com/atom/ns#">Spring</category><category domain="http://www.blogger.com/atom/ns#">Twitter</category><title>Novedades del Twitter...</title><description>&lt;span style=&quot;font-family:verdana;&quot;&gt;Este es un resúmen de las noticias que he encontrado gracias al twitter.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:verdana;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:verdana;&quot;&gt;Java Servlet 3.0 Specification. Consigo trae nuevas características como el uso de anotaciones para filtros, listeners y servlets, así como la capacidad de insertar Fragmentos de códigoen archivos de donfiguracion adicionales al web.xml. (@lshimokawa). &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:verdana;&quot;&gt;&lt;br /&gt;Eclipse Galileo. Nueva versión del eclipse que hasta esta fecha esta en release candidate 2 sale liberada completamente en 3 semanas, propone nuevas características que serán mostradas en el eclipse DemoCamp, para los que no soporten la espera la RC3 esta disponible para descarga y testeo. (@springhispano).&lt;br /&gt;&lt;br /&gt;Spring Source Tool Suit 2.1.0 M2 Released, para los que usamos esta implementación de eclipse especialmente diseñada para el desarrollo con Spring esta nueva versión trae soporte para nuevas anotaciones, integración con VMWare Lab Manager, etc, más info y/o descarga del STS aquí.&lt;br /&gt;&lt;br /&gt;Saludos &lt;/span&gt;&lt;br /&gt;&lt;/span&gt;</description><link>http://jonathanlarav.blogspot.com/2009/06/novedades-del-twitter.html</link><author>noreply@blogger.com (jonathanlarav)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5272307855991395086.post-3802674057235802798</guid><pubDate>Wed, 20 May 2009 20:01:00 +0000</pubDate><atom:updated>2009-05-20T13:06:00.662-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">ExtJS</category><category domain="http://www.blogger.com/atom/ns#">Ibatis</category><category domain="http://www.blogger.com/atom/ns#">Java</category><category domain="http://www.blogger.com/atom/ns#">Struts</category><title>Demo Ext v1</title><description>&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;ES-TRAD&quot; style=&quot;mso-ansi-language:ES-TRAD&quot;&gt;Muchas personas me han pedido un pequeño demo sobre como poder comenzar a desarrollar con &lt;a href=&quot;http://www.extjs.net/&quot;&gt;Ext&lt;/a&gt;, así que aquí va, el primer demo que integra un mantenimiento completo, bastante simple y compacto, hecho con eclipse, MySQL, Struts e Ibatis, espero que les pueda servir de ayuda para poder comenzar con este Framework, próximamente estaré colgando una demo sobre como usar JavaScript Orientado a Objetos y como desarrollar aplicaciones grandes con Ext, conultas un post o por &lt;a href=&quot;http://www.blogger.com/njelov@gmail.com&quot;&gt;mail&lt;/a&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class=&quot;MsoNormal&quot;&gt;&lt;a href=&quot;http://www.megaupload.com/?d=5BMMUTKQ&quot;&gt;Link de descarga&lt;/a&gt;.&lt;/p&gt;</description><link>http://jonathanlarav.blogspot.com/2009/05/demo-ext-v1.html</link><author>noreply@blogger.com (jonathanlarav)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5272307855991395086.post-4635116107422357363</guid><pubDate>Mon, 18 May 2009 23:19:00 +0000</pubDate><atom:updated>2009-05-18T16:24:06.824-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">ExtJS</category><category domain="http://www.blogger.com/atom/ns#">Java</category><category domain="http://www.blogger.com/atom/ns#">Spring</category><title>Spring Live 2009</title><description>Y finalmente culminó el &quot;Spring Live 2009&quot;, día tan esperado entre muchos programadores, aunque no tuve la oportunidad de ir, tengo muchos compañeros que asistieron y me comentaron que a pesar de uno que otro percance, el contenido de los temas fueron altamente nutritivos, me hablaron mucho de las novedades de Spring 3.0, las diferentes integraciones de Spring con frameworks como Flex y ExtJs así como la introducción que dieron sobre Grails. Y bueno parece que el evento fue todo un éxito y hay grandes posibilidades de tener otro como este a fin del año, felicitaciones a JoeDayz organizador del evento y esperemos que hallan más de estas conferencias.</description><link>http://jonathanlarav.blogspot.com/2009/05/spring-live-2009_18.html</link><author>noreply@blogger.com (jonathanlarav)</author><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5272307855991395086.post-8958515169015515389</guid><pubDate>Mon, 18 May 2009 21:35:00 +0000</pubDate><atom:updated>2009-05-18T14:57:04.201-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">ExtJS</category><title>ExtJS 3.0 RC1.1 liberada!</title><description>&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhZvPn2d2D_b0gWJ1mF1IFYybhjQiBLS62mf5_EpqjCBfH8nEJPLGEilZjqfoXKqXZJBmTF2WTkMuWJMPeVNhtvxR_VmwoH2adJwBYcqi_6x9CO1sx3zqHVc0az1wRR1aDBIW0Ss9JkKmN3/s1600-h/roweditor2.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5337285761517883938&quot; style=&quot;DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 194px; TEXT-ALIGN: center&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhZvPn2d2D_b0gWJ1mF1IFYybhjQiBLS62mf5_EpqjCBfH8nEJPLGEilZjqfoXKqXZJBmTF2WTkMuWJMPeVNhtvxR_VmwoH2adJwBYcqi_6x9CO1sx3zqHVc0az1wRR1aDBIW0Ss9JkKmN3/s320/roweditor2.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;La &lt;a href=&quot;http://extjs.com/blog/2009/05/04/ext-js-30-rc11-released/&quot;&gt;versión 3.0 de ExtJS&lt;/a&gt; ya ha sido liberada, con ella trae muchas actualizaciones en cuanto a corrección de Bugs y sobretodo nuevos widgets, tales como ListView, Toolbar, RowEditors, Grouped Tabs, Buttons de diferentes diseños y formas, Charts (gráficos estadísticos) y algunas nuevas clases como Ext.Direct que simplifica considerablemente la comunicación entre el lado del cliente y el servidor; asimismo ya esta disponible el manual online creado por el equipo de Ext, les dejo el &lt;a href=&quot;http://extjs.com/products/extcore/manual/&quot;&gt;link&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</description><link>http://jonathanlarav.blogspot.com/2009/05/extjs-30-rc11-liberada.html</link><author>noreply@blogger.com (jonathanlarav)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhZvPn2d2D_b0gWJ1mF1IFYybhjQiBLS62mf5_EpqjCBfH8nEJPLGEilZjqfoXKqXZJBmTF2WTkMuWJMPeVNhtvxR_VmwoH2adJwBYcqi_6x9CO1sx3zqHVc0az1wRR1aDBIW0Ss9JkKmN3/s72-c/roweditor2.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5272307855991395086.post-7199293425552141197</guid><pubDate>Mon, 20 Oct 2008 23:24:00 +0000</pubDate><atom:updated>2009-05-18T16:27:50.270-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">ExtJS</category><title>VII COREIS</title><description>&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxit_OTXV19RMqp0yUosebhL6JeMbaw1BOuW3gKJRfgUCKOFaj1zG9FVRshpypyAp1fnwbpW-JB9J4WvuXdDk4oSrtxluTWB_QydWAsowN8IQB1qO-LWMc-BzSgmHip7UjpzxyFJfnIrrk/s1600-h/coreis.jpeg&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5337309057723626290&quot; style=&quot;FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 110px; CURSOR: hand; HEIGHT: 62px&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxit_OTXV19RMqp0yUosebhL6JeMbaw1BOuW3gKJRfgUCKOFaj1zG9FVRshpypyAp1fnwbpW-JB9J4WvuXdDk4oSrtxluTWB_QydWAsowN8IQB1qO-LWMc-BzSgmHip7UjpzxyFJfnIrrk/s320/coreis.jpeg&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;span style=&quot;font-family:verdana;&quot;&gt;Hace unos días en la ciudad de Huancayo se llevo a cabo el VIII Congreso Regional de Estudiantes de Ingeniería de Sistemas (COREIS) y conjuntamente con Mayer Horna fuimos invitados a participar dictando un taller sobre la tecnología AJAX, ventajas, comparaciones así como una introducción al Framework ExtJS.&lt;br /&gt;&lt;br /&gt;Las ponencias estuvieron muy interesantes y tuvimos la oportunidad de compartir el almuerzo con ello una gran charla con personas como Mg. Sergio Alejandro Moriello, PhD. Hernán López Garay y Leonardo Donaire Perales (popularmente Dr. Software), espero poder volver a participar en otro congreso de estos, mi agradecimiento y felicitaciones a los organizadores por el excelente desenvolvimiento del evento.&lt;br /&gt;&lt;br /&gt;Dejo la &lt;a href=&quot;http://docs.google.com/Presentation?id=dhgcfxtq_0gh4vmbd6&quot;&gt;ppt&lt;/a&gt; del taller así como las demos en eclipse.&lt;/span&gt;</description><link>http://jonathanlarav.blogspot.com/2009/05/vii-coreis.html</link><author>noreply@blogger.com (jonathanlarav)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxit_OTXV19RMqp0yUosebhL6JeMbaw1BOuW3gKJRfgUCKOFaj1zG9FVRshpypyAp1fnwbpW-JB9J4WvuXdDk4oSrtxluTWB_QydWAsowN8IQB1qO-LWMc-BzSgmHip7UjpzxyFJfnIrrk/s72-c/coreis.jpeg" height="72" width="72"/><thr:total>0</thr:total></item></channel></rss>