David me ha dado muuucha envidia, carajo.
Las pérdidas de memoria ya que struts2 no reutiliza los action me habían echado atrás en su uso. Ayer me pasé un ratillo leyending y releyending documentación sobre Struts1.x y Struts2.x y comparativas entre uno y el otro.
Me encontré aquel strutscx que ayudé a mejorar y que, por lo que tengo visto, aun no se han incorporado mis cambios en la forma de validación. Aun contesto a los mensajes de la lista aunque, visto struts2 o el más viejo STX que creo, como strutscx no siguió en desarrollo.
El uso de strutscx o stxx era puntual en cualquier aplicación ya que usaban demasiada memoria. Con mi sistema de validación ahorrabamos muchísima ^g^. De hecho, que lo sepa el mundo, uno de los que preguntaban en la lista trabajaba en thawte con lo que puedo decir que hasta Google ha utilizado mi código ya que los PDF que se generan dinámicamente en su portal cuyas firmas digitales utiliza Google pasan por mi validador y por mi serializador XML de peticiones web ^^.
Fue mi primera aplicación en explotación, carajo.
Bueno pues eso es una mierda ahora al lado de struts 2. Me vuelvo a struts2. Hay versión nueva, que no es del todo... del todo... Y que se ve cada vez más madura (¡qué raro poder decir esto en femenino!). Así que me vuelvo a struts2, carajo. Ayer tocó crear unos scripts para hacer backup del svn que tengo montado. Voy a partir de uno limpio y partir mi aplicación en cuatro proyectos. Ahora mismo son tres.
Tengo tres proyectos, uno web donde va struts y todas las capas salvo la lógica de filtrado de documentos que está en otro proyecto. El tercero sería la generadora middlegen. Al principio la usaba para regenerar todos los VO y mapeos extrayending lo que hay en la BDD... peeeero... Llegaron las vistas que tienen su punto de utilidad. No me gustan nada, pero hay que reconocerles su mérito.
La aplicación, no lo he probado pero es fácilmente medible, irá más rápido si uso consultas directas sobre las tablas que sobre vistas, pero tienen su utilidad para extraer "metadatos". No se si existe la palabra metadatos en castellano, pero así se puede llamar a estadísticos y a todas esas cosillas que hay que explotar en una base de datos como envíos pendientes, errores en tareas batch, etc... Ahora que lo digo, quizá serán cinco los proyectos ya que, este, también tiene su parte por lotes.
La decisión de entrar con Struts y no con Struts2 fue muy sopesada por mi parte, pero visto lo que me va a ofrecer la segunda de no tener que programar mis propios tags para el uso de ajax, incluso facilidades de sincronía y adaptación a nuevos estándares... Pues, ¡qué demonios!. El cambio es prácticamente trivial por lo que anuncian y, a partir de ahi, ir adaptanding los componentes y añadiending los nuevos.
Quizá me pese un poco al principio porque esto lo tenía mirado como afición y pasar a desarrollar con ello seguro que es un cambio más que radical, pero lo de aprender estas cosas es muy entretenido y aunque traiga quebrantos, seguro que el fin pasa por los medios.
A cup of my famous java: otra vez a por Struts 2... ¡Y me dejé los libros en la ofi! :(