openArchitectureWare moved to Eclipse Modeling as part of Galileo release. This blog series reports my experiences to migrate a huge oaw4 project. This is part 4 – you’ll find an overview of this blog series here.
oaw4 means openArchitectureWare 4.3.1, oaw5 means MWE (EMFT) + Xpand (M2T) + Xtext (TMF) – more infos at oaw WorkingGroup.
This blog part is only useful for you if you’re working with UML – and also using MagicDraw as your UML tool. One Use-Case in my projects is the use of UML2 together with EMF: a Model to Model transformation (M2M) generates EMF Models (for Riena – SWT – Views) from UML2 Classdiagram (Entity) + JPA Persistence Profile. These EMF models are dynamically rendered from redView (Riena EMF Dynamic Views for Business Applications – an Open Source tool coming soon). openArchitectureWare is used for M2M and also to generate java code and more.
oaw – MagicDraw integration
MagicDraw can be easy integrated into oaw workflows as components:
oaw4:
<component class="com.nomagic.magicdraw.oaw.eclipse.plugins.oaw.ExportWorkflowComponent" magicdrawHome="${md.home.path}" projectFile ="${md.my.project}" exportDirectory="${md.my.export.dir}" skipUpToDate= "${skipUpToDate}" requiredVersion="2.x"/>
This integration makes it easy to work with UML – if you change something in UML, the next time your workflow runs the model was automatically exported:
This is also very useful for continuous builds – setting skipUpToDate=false and you know that all your models are exported.
You need two jar files from MagicDraw:
- launcher.jar (found at MagicDraw/lib)
- oawplugin_api.jar (found at MagicDraw/plugins/eclipse/plugins/com.nomagic.magicdraw.oaw)
In my workspace I’m using an oaw4 – magicdraw – project:
This project has no dependencies and exports one package:
My oaw4 cartridge projects import this package.
oaw5:
This solution doesn’t work out-of-the-box for oaw5, because the namespace of Interfaces and Classes has changed.
Nomagic – the supplier of MagicDraw is working on a solution and hopefully next week I can update this blog entry and explain how it will work under oaw5.
workaround in the meantime: you have to export manually from MagicDraw:
A mentioned above I’ll blog an update as soon as MagicDraw provides an oaw5 Update.
Now we have done all inside our oaw4 projects – lets install oaw5 and migrate. stay tuned… the next blogs will follow.
Thanks to Nomagic they built a jarfile to use oaw5 and MagicDraw openArchitectureWare Integration.
you can download this Jarfile from here: http://files.me.com/ekkehard.gentz/oyghwz
Then your oaw5 – magicdraw – project will look the same as the oaw4 – magicdraw project described above:
Exports the same Packages
includes jarfile mweplugin_api.jar (instead of oawplugin_jar)
This works with MagicDraw 16.5 – the Launcher.jar will be the same as with oaw4.