[
http://mifosforge.jira.com/browse/MIFOS-2897?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=57672#action_57672
]
angshuman sarkar commented on MIFOS-2897:
-----------------------------------------
* NOTE: this is separate from FeeAction refactoring activities. This is for
putting refactored Fee Action and related classes.
* Setup Collaboration using Spring DI (dependency injection) - preferably
annotation/autowiring based. Alternatively XML based.
* move to DAO pattern than FeeBO based persistence.
* Use Spring transaction manager. manage transaction using AOP, following a
naming convention.
e.g. - start transaction, whenever a certain service method like
org.mifos....*ServiceFacade.*() is invoked. Follow convention, like
get,find,retrieve etc do not require transaction support.
* Caution: Some of the related Entities (like FeePayment, FeeFrequency, GLCode
etc) may not be moved to DTOs. This may require separate hibernate mapping.
Preferably use JPA annotation for master entity caching.
* Doesn't consider spring security integration. That said, it should be fairly
simple to add declarative security enforcement later on using spring security.
* doesn't really move out of struts MVC for web application part. See comments
below
Moving to Spring MVC => (web application)
Currently views and MVC action handling are done using Struts Servlet. Hence
introducing spring MVC has following possible issues.
* Spring MVC Controller -> Right now, the bindings (Population of ActionForm
attributes) are through struts. will have to move to spring dispatcher, spring
controller bindings, and use spring ModelAndView object.
* Rendering - Binding DTOs, Exceptions, Validations (for rendering of jsps) -
currently works around struts and tiles1. Will the struts tags and tiles still
work? May require additional effort.
* error handling - validation errors, exception handling
* audit trails
* internationalization and localizing messages - Will still use struts
localization.
Moving to Grails MVC =>
All the above aspects as mentioned in Spring MVC app
> FeeAction -> Spring Way
> -----------------------
>
> Key: MIFOS-2897
> URL: http://mifosforge.jira.com/browse/MIFOS-2897
> Project: mifos
> Issue Type: Improvement
> Affects Versions: Shamim D
> Reporter: Tejus Datta
> Priority: Major
>
> This is an epic story.
> * Convert FeeAction, JSPs, and domain code to use a spring-based approach.
> ** Spring-managed transactions
> ** Spring MVC controller
> * establish a pattern that can be replicated elsewhere
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://mifosforge.jira.com/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
------------------------------------------------------------------------------
_______________________________________________
Mifos-issues mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mifos-issues