Tuve la suerte de poder empezar de cero con Grails. Sin embargo, muchas personas me han preguntado cómo agregar Groovy y/o Grails a una aplicación web heredada de Java/JSP. ¿Las personas tienen experiencia o recomendaciones sobre cómo incluir mejor a Groovy y Grails en una gran aplicación heredada?Uso de Groovy/Grails en una aplicación web heredada de Java/JSP
Respuesta
Este artículo de IBM Developerworks entra en detalles sobre how to use Grails with your legacy database.
Una herramienta que puede ayudar a mapear bases de datos heredadas para grillar objetos de dominio es GRAG - the Grails Application Generator. Es una herramienta útil que ayuda a generar las clases de mapeo por usted.
Una tercera opción es no utilizar Grails para la capa de gorm/dominio. En cambio, debido a que funciona muy bien con Java, puede crear servicios que call your existing legacy Java code for business logic and persistence.
Espero que uno de estos enfoques funcione para usted.
Una cosa que he visto hacer es utilizar Grails como interfaz de administración para una aplicación Enterprise Java. No es exactamente lo que preguntaste porque no hay integración. Solo había un conjunto de requisitos que se dividieron y desarrollaron fácilmente en Grails. En realidad, son aplicaciones separadas pero usan los mismos datos.
Comenzaría compartiendo el modelo de datos entre la aplicación jsps y grails (grails puede ejecutarse con clases Java simples y configuración de hibernación, por lo que si está utilizando hibernate ya no debería ser difícil reutilizar las clases de hibernación) Luego migraría cada jsp/servlet como está a grails. Si ya está usando primavera, debería facilitar las cosas ya que puede compartir el mismo contexto de aplicación.
Dependiendo de cuán grande es la aplicación y de otros requisitos, podría ser mejor reescribir todo, especialmente si la aplicación heredada no usa Spring o hibernate.
Supongo que depende de lo que significa "agregar grails/groovy" a una aplicación, porque grails es una pila completa, y si con "agregar" te refieres a reemplazar antiguo por nuevo, entonces puede valer la pena reescribirlo .
Encontré este artículo que describe cómo obtener Groovlets y gsp's en , especificando las actualizaciones web.xml y los archivos jar necesarios para el proyecto .
http://www.ibm.com/developerworks/java/library/j-pg03155
He añadido los siguientes archivos jar a mi proyecto y groovlets funcionó.
groovy-1.5.7.jar
asm-2.2.jar
antlr-2.7.6.jar
no tengo SGP de trabajo todavía.
Como otros han dicho, Grails es una pila completa, por lo que agregar Grails a una aplicación Java existente podría no ser lo que estás buscando. Sin embargo, es trivial agregar Java a una aplicación Grails existente. Y agregar Groovy a una aplicación Java existente puede que tampoco sea demasiado difícil.
Depende mucho del tipo de aplicación Java de la que se trate. Grails se basa en Spring MVC, Hibernate y tecnologías Java estándar similares, por lo que si su aplicación Java está usando todo eso, podría ser fácil convertir la aplicación a Grails con algún código heredado de Java.
- 1. Cómo 'habilitar web' una aplicación heredada de C++
- 2. Trabajando en una aplicación de Rails heredada
- 3. GWT con varias páginas de host en una aplicación heredada
- 4. Autenticación PAM para una aplicación heredada
- 5. Encontrar "código muerto" en una gran aplicación heredada de C++
- 6. heredada controlador API API Web
- 7. Reescribiendo una aplicación web de propiedad heredada a MVC3/Entity-Code-First
- 8. RequireJS y la aplicación heredada
- 9. aplicación heredada de DOS con impresora USB
- 10. Ejecuta una aplicación universal como una aplicación de iPhone "heredada" en un iPad
- 11. Cómo usar Symfony 2 Container en una aplicación heredada
- 12. Uso de Maven para crear una aplicación Java Web Start
- 13. Recomendaciones para migrar una aplicación web heredada a un marco moderno
- 14. ¿Cómo uso MODI en una aplicación web ASP.Net?
- 15. C# - Uso OfType e ignorar heredada clases
- 16. Sugerencias para probar la aplicación heredada con uso intensivo de datos
- 17. Uso de qunit con aplicación web en iframe
- 18. Refactorización de una aplicación heredada de WebForms para separar mejor las preocupaciones
- 19. Uso de la barra de herramientas de IE en una aplicación web emergente
- 20. Uso de OTP/Erlang como parte de la arquitectura basada en componentes de una aplicación web
- 21. ¿Se supone que una declaración de uso oculta una función virtual heredada?
- 22. constructor predeterminado de una clase heredada
- 23. Prueba de integración para una aplicación web
- 24. Uso de C++ para cálculos de back-end en una aplicación web
- 25. Uso de desbordamiento: ¿está oculto en una aplicación web de iPhone?
- 26. Uso de RequireJS y Backbone en diferentes páginas en una aplicación web CodeIgniter
- 27. probando una aplicación web
- 28. Hacer una clase no heredada
- 29. Uso de WebBrowser en una aplicación de consola
- 30. ¿Qué herramientas de código abierto podrían ayudarme a entender una gran aplicación heredada escrita en C?
Ya describí en una respuesta cómo incluir Groovlets en un proyecto Java/JSP existente. –