We are very proud to announce the 1.0 release of the Smooks for Mule module. Smooks for Mule enables complex Message Transformation and Routing in Mule using the Smooks
engine. Smooks for Mule is compatible with Mule versions 1.x and 2.x.
is a Java Framework/Engine for processing XML and other structured (non XML) data (CSV, EDI etc).
The Smooks for Mule module can be downloaded here
Since the Beta release the following major changes have been implemented:
* Flexible Mule message payload creation with MVEL
* The Smooks profile can now optionally be defined via a router/transformer setting or a definable message property.
* The Huge Message Processing example for Mule 2.
This new example demonstrates how Smooks together with Smooks for Mule can be used to split, enrich, transform and route huge messages (GB size messages) in a real life use case. Take a look at the readme for more information.
For more information take a look at the release notes
What is Smooks?
Smooks is a Java Framework/Engine for processing XML and non XML data (CSV, EDI etc).
Smooks can be used to:
* Perform a wide range of Data Transforms - XML to XML, CSV to XML, EDI to XML, XML to EDI, XML to CSV, Java to XML, Java to EDI, Java to CSV, Java to Java, XML to Java, EDI to Java, JSON to Java, JSON to XML etc.
* Populate a Java Object Model from a data source (CSV, EDI, XML, JSON, Java etc). Populated object models can be used as a transformation result itself, or can be used by (e.g.) Templating resources for generating XML or other character based results. Also supports Virtual Object Models (Maps and Lists of typed data), which can be used by EL and Templating functionality.
* Process huge messages (GBs) - Split, Transform and Route message fragments to JMS, File, Database etc destinations.
* Enrich a message with data from a Database, or other Datasources.
* Perform Extract Transform Load (ETL) operations by leveraging Smooks' Transformation, Routing and Persistence functionality.
Smooks supports both DOM and SAX processing models, but adds a more "code friendly" layer on top of them. It allows you to plug in your own "ContentHandler" implementations (written in Java or Groovy), or reuse the many existing handlers.
Smooks is an ideal fit as part of an overall Integration Solution