Cimero is an open source graphical tool, developed by Bull, that allows developers to construct systems using the Enterprise Integration Patterns visualizations. The Cimero team are now working on Cimero 2, updating the technology to take advantage of newer Eclipse components, and they have decided to contribute this new work to the SOA Tools Platform (IPZilla entry).
- Jerome Camillieri (Bull)
- Natacha Bagnard (Bull)
- Julien Forot (Bull)
The CIMERO2 Editor Plug-in allows you to create a visual representation of a ServiceMix or Petals Enterprise Service Bus flows under Eclipse IDE. After making your graphical creation, you'll be able to generate a JBI package which could be deploy on the targeted ESB you chose to use.
The initial Servicemix components available with Cimero2 Editor are :
- Content based router
- Content Enricher
- Message filter
- Split aggregator
- Static routing slip
- Xpath splitter
- Wire tap
Choosing the ESB
When creating a new diagram, you could choose the targeted ESB : Petals or ServiceMix.
A diagram example
Here is a sample example of a flow designed with Cimero2. The targeted ESB is ServiceMix. Here you have a Http going to a wire-tap, sending a copy to a FTP server and the original message to a pipeline which throw it to a saxon that do a xslt transformation before returning it to the pipeline. Finally, pipeline send it to an other FTP server.
Each components of the diagram could be configured by using the Eclipse properties view to set the component property values. Here is an example of the Http component properties.
You could see that some informations are already set just by puting and connecting some component together. Those informations are relative to endpoints, interfaces and services names. Then the user is help by an icon representation of the type of the property and its states showed by the icons color.
Icons are their to help you to know the type of the properties value. This is the types corresponding to each icon :
- Required properties are in red
- Unrequired properties are in blue
- Already set properties are in green
Some properties of a component are required, sometimes it could be only a leaf property. That's why properties which have at least a required sub property with no value set are shown by using this icon : .
Some properties are repeatable.It means that you can add the same property as many time as you need. Each one has its own value. To add a property, click on the repeatable property and then click on the a repeatable property button. A new unset property will appear. To delete a property you added before, click on the property and then click on the button. The property will dispappear.
You could see that you diagram respect some basic jbi flow rules by using the validation action. It show you problems on your diagram and on the Eclipse Problems view.
Then final goal of the flow designing is to generate the configuration files and/or the jbi package that will be used to deployed it on the targeted ESB you choose at the beginning. You could choose to generate only the configuration files with a Ant task to generate the jbi package after you made your manual transformations on the files. Or you choose to generate the the configuration files and the final jbi package without making any modifications on the files.
Then you just need to deployed the generated packaged on the targeted ESB and use it.