Arquitectura JM 2.0
Hola enrique, pues ayer le dí un ojo a la aplicación y hasta donde alcancé a ver todo está ok en cuanto a librerías.
Quisiera comenzar este hilo hablando brevemente sobre las capas de la app...
Veo que no hay capa de negocio o más bien está revuelta con la de acceso a datos, por lo tanto también se mezclan las transacciones, chequeos nulos, lógica de negocio,entre otras con el acceso a datos. Entiendo que esto es bueno cuando le quieres bajar la complejidad al sistema pero te pierdes de otras cosas.
Cuál fue la decisión de mezclar ambas capas?
- Inicie sesión o regístrese para enviar comentarios
DAO's
Simplemente para no tener DAO's que sean puro ABC, decidí meter ahí mismo algunas operaciones. Realmente no creo que haya operaciones muy complejas como para tener un componente dedicado que haga alguna operación compleja y requiera tener uno o dos o tres DAO's... pero tal vez sí valga la pena tener algunos componentes separados de los DAO's que se encarguen de cosas que vayan más allá de operaciones atómicas.
Capa de negocio
pero tal vez sí valga la pena tener algunos componentes separados de los DAO's que se encarguen de cosas que vayan más allá de operaciones atómicas.
Ok, pues que así sea.
Sólo es cuestión de documentar esto y si se requieren métodos de negocio más especializados crear un paquete extra...
a dichas clases de negocio porque te revuelves mucho con los servicios de Tapestry, mejor llamale
y así es más sencillito
Por cierto, cuando hagas esto no le llames
Seguridad-Roles
No ví implementado algo ya hecho para la seguridad, por ejemplo Spring-security a través del módulo tapestry-spring-security
De qué manera está implementada la seguridad o cómo se tiene pensado implementarla?¨
seguridad
no le he metido todavía a eso. Pensaba simplemente un cookie en el navegador, para que tu login dure varios dias, como funciona hoy este sitio. Obvio un cookie que podamos validar en el server y que no se pueda falsificar fácilmente. Pero actualmente es login validando en la tabla usuario y eso crea una sesión y ya.
Sugerencia
De manera general no se de que están hablando, ya mas especifico se que @Zamudio tiene dos proyectos, y seguramente hablan de uno de los dos, pero sigo sin saber de cual hablan, así como yo habrá usuarios que no tengan ni idea de que se trata, aunque las observaciones que hace @Iberck son interezantes... y que se supone que si algo queda en un post, es para que sirva a mas de dos personas o de una idea de que trata a las personas que lo leen..
Ahora que lo reviso mas detalladamente me doy cuenta que hablan de javaMexico 2.0 por el lugar donde esta posteado, pero de primeras creo que si valdria la pena una mención al nombre dentro del post en sí.
tapestry-spring-security
El trapito...
Creo que sería interesante que incluyeras spring-security a través del módulo tapestry-spring-security, así se tendría bien flexible esa parte de seguridad y se ahorraría hacer cosas ya hechas, por ejemplo el manejo de roles para decir X usuario ejecuta Y página/método, entre tantas cosas que ofrece spring-security
Existe un módulo llamado tapestry-spring-security que hace muy simple la integración de spring-security con Tapestry, te proporciona algunos servicios para hacer logout, te permite inyectar tus páginas/componentes/sus métodos con @Secured y tiene algunos componentes para validar los roles, por ejemplo
, además tienes a la mano las configuraciones de spring-security como símbolos de tapestry.
La verdad no recuerdo qué versión de spring-security tenga por debajo pero si no tiene una que te sirva pues también se puede integrar spring-security a patin y tener la misma potencia con un pequeño esfuerzo extra.
Arriba el trapito, aquí el remedio...
¿Qué opinas?
Spring Security
Si les parece bien, yo tomo ese módulo (de Spring Security).
Saludos.
ps vas
Vas benek