Today we are happy to announce the beta release of Mule 3.4. This release of Mule ESB and Studio bring together a large set of innovative features that together greatly improve developer productivity, add powerful capabilities for the development of SaaS integrations, and continue to strengthen Mule as an optimal integration platform for the new enterprise.
Before walking through the exciting set of new features that are in this beta, you should know that the release is available for download publicly as follows:
- You can download the Mule Studio 3.4 Beta distribution here.
- You can download the Standalone ESB 3.4 EE Beta distribution here.
We encourage everyone to try out this beta release and provide feedback.
Those of you who tried one of our early preview releases of Mule 3.4 are already familiar with the following set of new features which we made available over the last two early preview releases.
- Visual Flow Debugger – Full debugging features for Mule flows within the Studio development environment, with support for breakpoints, watches, MEL evaluation, remote debugging, and more. The following is a video from our Early Preview 1 announcement that demonstrates some of these features. In the beta release we have added numerous usability enhancements including a dedicated Eclipse perspective.
- DataMapper Enhancements – Support for new formats (fixed-width and variable separator), refactoring tools (such as refresh of your data types without losing your mappings), flow-ref lookups (to bring in data from external sources within your mappings), streaming, and much more. The following is a video from our Early Preview 1 announcement that demonstrates some of the DataMapper enhancements introduced in 3.4.
- Connection Management – Single Studio pane for managing all of your project’s external connections, including support for connectivity testing.
- Document Generation – Allows you to generate an HTML document from your Mule projects in Studio. The document describes the overall flow and provides links to sections with details about each element within the flow.
- One Studio, Multiple Runtimes – You can now extend a single Studio installation with different runtimes using the Eclipse install updates function. For a detailed overview of the rationale and benefits of this single Studio distribution please see this blog post from Ross Mason.
- Maven Enhancements – We have been working on polishing the Maven support in Studio. Enhancements include automatic management of your pom.xml file as you make modifications to your projects, as well as automatic sync of your project’s dependencies through direct modifications to the project’s pom.xml. All in all, it should be much easier for Maven users to use Studio as an IDE while leveraging all of the goodness of Maven.
In the beta release, we have made improvements to these features based on feedback from our early access releases. You can learn more about these features by going through the announcement blog posts for Mule 3.4 Early Access 1 and Early Access 2. In the remainder of this blog post we will highlight the new features that we are introducing in this beta release, on top of the above features.
Those of you who have been using Anypoint Connectors (previously known as Cloud Connectors) for integrating with SaaS endpoints or other APIs are already aware of their enormous benefits: These connectors make it a breeze to create integrations that leverage the power of the Mule ESB and CloudHub across endpoints such as Salesforce.com, Twitter, Amazon AWS, Google Apps, and a wide array of other SaaS, Cloud, and on-premise applications. In this beta release, we are making our connectors exponentially more powerful with a feature that we call DataSense.
DataSense dynamically discovers meta-data such as operations, object model, and data types for external applications and APIs accessed through connectors. DataSense is used by Studio in order to greatly simplify SaaS integrations by making the full SaaS endpoint meta-data, including custom objects and fields, available at flow design time. This means that you no longer have to refer to the documentation of your connectors and SaaS endpoints in order to deduce their input/output objects and their types. Furthermore, DataSense makes the discovered meta-data available to DataMapper transformations within your flows thus allowing you to perform your SaaS integrations without having to explicitly define your mapping’s input and output structures.
The following screenshot shows how DataSense allows the object model for the Salesforce.com connector to be automatically discovered as part of the configuration steps.
As part of this beta release, we have turned on DataSense support for Salesforce.com, Twitter, Google Apps, and Facebook. We are planning to expand coverage to other Anypoint Connectors in upcoming releases and, in the future, DataSense will even discover and perform auto-completion of Mule Expressions when editing in Studio.
Mule High Availability Enhancements
Those of you already familiar with Mule High Availability (HA) are aware of the improved quality of service, linear scalability, and performance benefits that it enables for Mule applications. In 3.4 we have added features to Mule HA to make it even more powerful. One such feature is the support for parallel and distributed polling (as opposed to single-node polling) for File, FTP, and SFTP servers. This feature allows you to better distribute the load of your flows that use file based end-points. Another new feature is the support for the static configuration of the Mule HA cluster IP and port information in order to bypass the use of multicast. This feature will be useful to users who do not want to (or are not permitted to, based on IT policies) use a multicast protocol within their network.
Studio is of course an Eclipse based IDE and as such its users have been able to benefit from all of the great Eclipse productivity tools and extensions. However, until today, Studio had always been only available as a prepackaged Eclipse distribution. Due to popular demand from you, our users, we are now introducing a new distribution of Studio which consists of Eclipse plugins that you can install on your own Eclipse installation.
This distribution will allow users to install the Studio plugins on top of an existing Eclipse installation (whether the vanilla Eclipse install or pre-packaged ones from other vendors) so that they can take advantage of the Studio functionality as well as other Eclipse extensions they may have. The supported version of Eclipse for this plugin distribution is 3.8 and we have also tested it with the Spring Tool Suite 3.1.0. To find out how you can install Studio as plugins on top of your existing Eclipse installation, you should follow the instructions listed here.
To top it all off, we also have the beta version of the Mule 3.4 documentation ready for you to test drive. We will be adding to and improving the docs for GA, but the existing version should help you learn the ropes with all of the new features that are part of the beta.
Try it out for yourself!