RetoucheJ2EE
THIS IS JUST THE DRAFT!
This document tries to summarize steps needed to migrate J2EE modules to Retouche. Migration can be done in waves depending on module dependencies. First visible result of migration in trunk should be enabled J2EE project types. There are some modules that can be enabled later (refactoring, verification...). Problem with incremental rewrite is that you won't be able to test the results until related project is enabled. This may lead us to think about rewrite in the way that we will try to enable all modules under projects and just comment difficult JMI-related parts. That will end with lots of commented code, but working projects and their non-java parts (maked sense mostly for Web project?). It is important to mentioned well-prepared document (not like before JMI migration) about migration to Retouche. It is written and updated by Retouche team members. Please take a look at this document before you even start to think about Retouche. Link is below.
More info about Retouche
Migration guide - important reading for beginning
Retouche Developer FAQ - if you have questions to Retouche team, put them here
Commenting-out some code?
In case you need to disable some code in class, put this line-comment before you actual comment in code:
//TODO: RETOUCHE
Enabling of J2EE modules
- Dependencies
Here is simplified relationship diagram of JMI-dependent J2EE modules.
Columns represent modules that can be refactored at the same time - there is no dependency between them.![]()
Progress
See also Webtier migration to Retouche
- Enabled basic modules (without or with small JMI dependency) enabled:__
cvs -d $NB_CVSROOT diff -ubBN j2ee/metadata/ db/derby/ db/model/ j2ee/ddapi/ j2ee/debug/ j2ee/ejbapi/ j2ee/genericserver/ j2ee/platform/ j2ee/toplinklib/ j2ee/utilities/ j2eeserver/ monitor/ serverplugins/sun/appsrv serverplugins/sun/sunddapi/ serverplugins/jboss4/ serverplugins/weblogic9/ tomcatint/tomcat5/ web/freeform/ web/jspdebug/ web/jspparser/ web/servletjspapi/ web/webapi/ websvc/registry/ websvc/websvcapi/ websvc/websvcddapi/ web/libs/glassfish_logging/ > j2ee-retouche-phase123_RetoucheJ2EE.diff
- Affected functionality
- removed annotation processing
- Search Class dialog used from wizards/customizer is disabled
- Method customizer used from 'Add method...' actions is disabled
- Enabled Web project
- Enabled j2ee/persistence
- Affected functionality
- Entity Class Wizard
- Session Facades for Entities Wizard
- Use Entity Manager Action
- Entities From Database
- persistence.xml editor
- Things that don't work
- Database metadata based code completion for persistence related annotations
- since there is no model yet, basically everything that requires the dd model to work is not functional at this point.
Status of JMI-depending modules
NoC: Number of Classes using JMI
Phase 1 - basic modules
| Module | NoC | Owner | Status |
|---|---|---|---|
| j2ee/metadata | 5 | madamek | done |
| j2ee/ejbapi | 1 | madamek | done |
| j2ee/ddapi | 4 | madamek | done |
| j2ee/utilities | 17 | madamek emononen(MethodCustomizer) | done |
| websvc/websvcddapi | 1 | madamek | done |
| websvc/jaxwsmodel | 1 | madamek | done (with TODOs) |
| web/core | 1 | mfukala rjanman | done (with TODOs) |
| websvc/core | 1 | milan | done (with TODOs) |
| websvc/customization | 1 | milan | done |
| websvc/jaxrpcsupport | 1 | milan | |
The rest of the status is tracked in Java EE team task list
Attachments


