I’m excited to announce our early access release of Mule 3.5. We’ve continued to focus on making Mule simpler than ever and this release packs a huge punch in that department. We’ve done a ground-up rethink of our database and web services connectivity, resulting in new connectors which help you integrate in fewer clicks than ever that are fully integrated with DataSense. Also in this release are the new Shared Resources capabilities, allowing you to easily share connectors or other resources across loosely coupled applications in the same Mule container. Finally, this release contains many usability improvements, such as the ability to see the payload and message contents at design time, support for properties and variables with DataSense, batch improvements, and more.
Web Services Consumer
The new Web Services Consumer makes it easier than ever to connect to SOAP web services. Studio now introspects your WSDL and makes the metadata available at design time, allowing you to easily access and transform the data. Just select your WSDL, then your operation and use DataMapper to map to/from the XML payload or headers. (If you’ve used the CXF before, you know this is a much simpler experience – no more class generation!). We’ve captured a short example for you in the video below:
The new consumer also provides a simplified way to configure WS-Security. When going to the security tab, you can configure your UsernameToken or your Timestamp without having to worry about all the details of WS-Security.
We’ve completely revamped the database (JDBC) connector. The new database connector features more seamless integration with DataSense and a more prescriptive, intuitive way to run database operations. In this early access version, we’ve also created an out-of-the-box connector configuration element for MySQL, and for the 3.5.0 full release, we will have more out-of-the-box configurations for other popular databases such as Oracle, PostgreSQL, SQL Server, DB2, Sybase, Derby, etc.
The database connector supports all SQL operations, can stream records from a database, recursively insert/update/delete database rows given a collection through its bulkMode’ option, reuse queries by defining a SQL query template, work within a transaction, and handle connection pooling.
Also new in this the release, is the ability to create connectors and other Mule resources that can be shared across Mule applications in the same instance. This is done by defining a global Mule ‘domain’ and associating applications to that domain. Within the domain, a user can define one or more shared resources; these can then be referenced by associated applications. This opens the door for powerful new functionality such as reusing http ports across applications, or setting up VM queues to pass messages across Mule applications without the serialization overhead. For this early access release, only the HTTP, HTTPS, VM, JMS, DB and transaction manager resources can be shared.
DataSense Explorer & Improvements
To make it even easier to see what’s going on with your flow, Studio now provides a new DataSense explorer, allowing you to see the payload structure, flow variables and message properties available at any point in the flow. As part of this, DataSense now supports enrichers, flow variables, and properties.
We’ve added a number of enhancements to batch. You can now easily stream unlimited records into a file in a batch step through the new streaming commit functionality. You can also control the execution of your batch job through scheduling strategy. This allows you to easily ensure that a single batch job is running at a time and that jobs execute in the specified order.
We’ve implemented scatter-gather, a routing message processor based on the popular enterprise integration pattern. Scatter-Gather broadcasts a message to multiple targets and aggregates responses back into a single message. It is similar to Mule’s ’All’ message processor, except it does parallel route execution, which greatly increases the efficiency of your integration application.
Getting the Early Access Release
To get started:
- Download the standalone 3.5.0-M4 Community runtime
This early access runtime is also available on CloudHub. We hope you get a chance to try out this release and as always, we look forward to your feedback in this post’s comments and in our forum. Happy integrating!