Home > Persistence  Development

Use Oracle® Enterprise Pack Eclipse 11g with EclipseUML 2008

EclipseUML 2008 could be directly activated inside Oracle
® Enterprise Pack Eclipse 11g for Eclipse 3.4 Ganymede.
The EclipseUML 2008 integration is available using the live code and model synchronization.
The picture below shows how EclipseUML 2008 and the Oracle
® Enterprise Pack Eclipse 11g can cover the full POJOs modeling cycle:

Using the Spring, ORM Oracle® features allow you to navigate in the Data Source Explorer

and show a schema View

And finally generate Annotated POJOs from a schema

Once the Java code has been generated click on the src in which your source code has been created and upload your java code (e.g. code including annotations) inside your Class diagram. This will map your entire Database to a standard UML 2.2 model.

If no src then click on the package which contains the source code

The following diagram is an UML 2.2 compliant Class Diagram example created from an Oracle Database.

Please note that you can add, change or delete any information using Eclipse & the Enterprise Pack for Eclipse 11g because all your diagrams and model will be automatically updated. You can have 100 000 diagrams using a view of a POJO and update all your diagrams by just changing the table association information :-)

You can also deploy and test your application. After this first stage you can add new requirements and POJOs at object level and never loose Database UML 2.2 modeling compliance using the advanced merge feature. The merge option is an important concept if the java project is evolving with the creation of new UML diagrams. The concept is too reverse the full project at the beginning of the modeling stage, then to create diagrams and close EclipseUML. After few weeks of coding another iteration stage is needed and the model merge will change the refactored classes and add all detected new packages, classifiers and connectors to the existing model.

The merge option is available if you select the src > Open / Reverse UML > Deep Reverse > Merge Model.

The merge mechanism is working at XMI level and is respecting the following rules:

  • Existing classifiers and connectors  are never erased from the model.
  • Each new package or classifiers are added to the model.
  • Pojos annotations are updated
  • Existing Classifiers which doesn't exist anymore in the java code are automatically transform into model classifiers and not deleted from diagrams or from the model.
  • Existing classifiers which are refactored are also immediately renamed/moved in the model and in each UML diagram when you first time open the editor.
  • If attributes or methods are added or deleted or rename then it is immediately mapped with the model (e.g. it means that deleted attributes or methods from the java code are deleted from the model at this stage).
Please note that if you copy and paste diagrams into another project then diagrams will not anymore be synchronized with Java or the model.
If you move diagrams inside your project then diagrams will keep the same properties and will always be synchronized.