Mule ESB 3.3.1 Release Notes
Skip to Migration Guide
September 4, 2012
MuleSoft is pleased to announce the release of Mule ESB 3.3.1 which offers improvements and stabilization to Mule Studio and the Mule Devkit. These release notes apply to both the Enterprise Edition and the Community Edition of Mule ESB 3.3.1.
Download Mule ESB 3.3.1 Enterprise Edition or Mule ESB 3.3.1 Community Edition to take advantage of an improved and hardened Mule ESB.
Document Revision History
September 4, 2012, v1.0 Initial Publication
January 11, 2013, v1.1 Revision to include information about the newly released CE version of 3.3.1.
Current Release Version
| Enterprise Edition | Community Edition |
|---|---|---|
ESB | Version 3.3.1 | Version 3.3.1 |
Studio | Version 1.3.1 | Version 1.3.1 Build 201209041237 |
Management Console | Build 1ee24c0089 | |
SAP Enterprise | 2.0 | |
CMIS Cloud Connector | 1.7.0 | 1.7.0 |
Magento Cloud Connector | 1.7.0 | 1.7.0 |
MongoDB Cloud Connector | 2.2.0 | 2.2.0 |
Salesforce Cloud Connector | 5.0 | 5.0 |
Twilio Cloud Connector | 1.3.0 | 1.3.0 |
Twitter Cloud Connector | 2.7.1 | 2.7.1 |
New Features and Functionality
Mule Studio
The following list details the new functionality Mule Studio offers in 3.3.1.
- Ability to reference flows in multiple configuration files in a project
- Ability to export the Studio canvas to an image file (
.png,.jpg,.bmp) - Ability to adjust Studio's default settings and behavior (i.e. change preferences)
- Ability to disable error reporting in the Configuration XML pane
Mule DevKit
The following list details the new functionality the Mule Devkit offers in 3.3.1.
- Automatic REST Call Generation: The new Mule DevKit annotation automatically generates REST API code for your cloud connector, yet preserves your control over parameters to send, payload format, and more. Further, when you use OAuth 1.0a or OAuth 2.0, the automatic REST call generator automatically signs the request.
- Java Complex Type Support: Mule DevKit has extended its support of Java types. You can now use complex types as message processor arguments, or even as configurable fields. Mule DevKit can generate a full schema for the complex type, enabling a cloud connector user to naturally construct the object from a Mule configuration.
- Multiple Authentication Mechanisms: Mule DevKit now enables you to write connectors which offer multiple authentication mechanisms. As an example, you can write a cloud connector that supports OAuth 2.0 and regular username/password authentication in the same connector under the same Mule configuration namespace.
- Expression Binding: Mule DevKit introduces support for
@Exprannotation that automatically binds a message processor's arguments to a Mule expression.
Noteworthy Improvements
Mule Studio
The following list details the improvements to Mule Studio.
- Enhanced ability to drag and drop building blocks within the canvas
- Improved building block filter which enables search by keyword
- Improved behavior of Choice Flow Control
- Improved usability for DataMapper Transformer
Mule DevKit
The following list details the improvements to the Mule DevKit.
- Revamped OAuth Support: We have extended the feature coverage for the auto generated OAuth 1.0a and OAuth 2.0 clients. When building OAuth-secured cloud connectors, you can:
- use the "state" attribute as specified in the OAuth 2.0 standard
- de-authorize connectors, reverting them to their initial pre-authorize state
- execute extra code, after the authorization process takes place, in a new lifecycle event
- use extra authorization parameters for APIs that require extra information when performing the authorization process
- automatically save and restore access tokens when using OAuth 2.0
- automatically refresh access tokens as specified in the OAuth 2.0 standard
- Minor Connection Management Improvements: Mule DevKit enables you to declare optional connection parameters, with optional default values. Also, cloud connector users can automatically specify whether Mule should use a Reconnection Strategy when a connection is faulty or dropped.
Hardware and Software System Requirements
For most use cases, Mule ESB 3.3.1 does not change the hardware and software system requirements established by Mule ESB 3.3.0
Please contact MuleSoft with any questions you may have about system requirements.
Important Notes and Known Issues in this Release
This list covers some of the known issues with Mule ESB 3.3.1. Please read this list before reporting any issues you may have spotted.
Mule ESB
MULE-6419 | Loanbroker example miss log4j.properties |
EE-2859 | CVS to map transformer fails to find mapping file from classpath |
Mule Studio
In addition to the known issues listed below, there exists a known issue within the software upgrade process in Studio. Complete the following steps to upgrade to the Enterprise Edition of Mule Studio 3.3.1.
Under the Help menu in Studio, select Check for Updates.

Under the Help menu, do not select Install New Software...
Studio updates the existing software rather than installing new software.- The update wizard automatically selects all software available to update. Click Next to continue.
- Click Next to confirm update details.
- Select the radio button labelled I accept the terms of the license agreements, then click Finish.
STUDIO-37 | When double clicking on a reported XML problem (under "Problems" tab), if in XML view, Mule should highlight the line on the XML where the problem is detected or at least show the line number of the error. |
STUDIO-173 | sometimes, when removing several items one by one, undo works only once. (usualy in Edit->Undo case) |
STUDIO-382 | Changes to Java code do not get hot deployed |
STUDIO-436 | Endpoints not changing their icons when setting RQ-RS for Composite source and Sub-Flow |
STUDIO-459 | Unable to add a response when creating a second flow in the same mflow |
STUDIO-489 | -Dmule.verbose.exceptions=true not supported for VM/Program arguments when running a configuration |
STUDIO-570 | No warning when creating 2 flows with same name in diff mflows in the same project - It fails when the app is running |
STUDIO-574 | Difficult to run configuration if you haven't already ran the app as a Mule app |
STUDIO-596 | Script Transformer and Script Component change the generic script framework to specific transformer and component script depending on the engine when clicking on ok and clicking on config xml and coming back to the canvas |
STUDIO-783 | Wiretap is not available as a widget |
STUDIO-986 | Within the jersey:resources XML element, the editor overwrites changes I make to the component element when I edit the canvas and save |
STUDIO-1083 | Inconsistencies regarding some validations for Splitter, Expression Transformer and Expression Filter |
STUDIO-1084 | The line location is not displayed anymore for the errors in the problems pane |
STUDIO-1169 | Add a validation that prevents the user from creating the same JDBC query in the connector and endpoint with the same name |
STUDIO-1212 | Response section is not displayed |
STUDIO-1608 | Doesn't support passing an object inside a list by reference in Cloud Connectors |
STUDIO-1611 | JDBC endpoint: the Key: combobox is not aligned with other combo boxes in the General tab |
STUDIO-1638 | Unable to get the menu options when right-clicking on the mflow of the first project in some specific cases |
STUDIO-1650 | Renaming flow XML doesn't update mule-deploy.properties |
STUDIO-1766 | mflow file is not generated after exporting and importing a project that contains errors in the XML (E.g.: Not having correct namespaces) |
STUDIO-1811 | Studio is not validating that certain scopes should start only with inbound or outbound endpoints |
STUDIO-1874 | All Message Router: 'All properties' tab should be removed in Studio CE |
STUDIO-1957 | Data Mapper Input Argument data type cannot be changed once created |
STUDIO-1990 | Project Structure: when opening a configuration file from src/main/resources you miss the outline view. |
STUDIO-2177 | XML autocomplete uses a wrong schema alias |
STUDIO-2234 | Block the editing of the DisplayName in the canvas for Exception Strategies |
STUDIO-2235 | Direct-edit display name has a strange behavior under Windows |
STUDIO-2247 | Validation: Flow name property should be unique across the whole project |
STUDIO-2248 | Global Elements duplicate name problems do not disappear when they are resolved in another file |
STUDIO-2249 | Remove MIME type attribute from the HTTP endpoint advanced tab |
STUDIO-2255 | Missing <tracking:transaction/> support |
STUDIO-2258 | Two way editing is changing the order of the transaction element |
Mule Management Console
Enterprise Edition
n/a | none |
Mule DevKit
n/a | You cannot use a 3.3.1-developed cloud connector which uses uses OAuth 1.0a or OAuth 2.0 in an application with a 3.3.0-developed cloud connector which uses OAuth 1.0a or 2.0. |
Fixed in this Release
Mule ESB
Mule Studio
Mule Management Console
Enterprise Edition
Mule DevKit
Third Party Connectors and other modules
At this time, not all of the third party modules you may have been using with previous versions of Mule ESB have been upgraded to work with Mule ESB 3.3.1. Contact MuleSoft if you have a question about a specific module.
Migrating from Mule ESB 3.3.0 to 3.3.1
The improvements and fixes that Mule ESB 3.3.1 introduces require no specific migration activities for Mule ESB, Studio, and Management Console. The Mule DevKit section below details the migration activities for cloud connectors.
For more details on how to migrate from previous versions of Mule ESB, access the library of Migration Guides.
Mule DevKit - OAuth Migration Guide
We implemented a few source code changes for OAuth in DevKit 3.3.1.
Deprecated @OAuth/@OAuth2 Within a @Module-annotated Class
The @OAuth and @OAuth2 annotations, which previously were only valid in @Module classes, are now only valid in @Connector classes. We are working toward a model in which the top-level annotation defines the category for the extension, so supporting OAuth security only makes sense in a cloud connector. To continue to use OAuth security, change the top-level annotation from @Module to @Connector. The following example uses the Facebook connector to illustrate the change.
Before migration:
After migration:
Access Token Annotations
Two annotations which identified two parameters in an @Processor have changed in 3.3.1. Previously, the following annotations performed these tasks:
@OAuthAccessToken: received the access token@OAuthAccessTokenSecret: received the access token secret
In 3.3.1, do not use these annotations in a parameter. Use them, instead, as fields inside a connector.
For example, the following 3.3.0 Facebook connector snippet retrieves a user's details when logged in. In the @Processor method, notice the single argument — accessToken — annotated with @OAuthAccessToken. To each protected resource in a service provider which requires an OAuth access token to access, you must explicitly add the annotation.
In 3.3.1, you use the annotations as fields inside the connector. This obviates the need to ascribe dedicated parameters in each @Processor. The following snippet illustrates the same Facebook connector example in 3.3.1.
New @OAuthProtected Annotation
Mule DevKit 3.3.1 introduces a new annotation, @OAuthProtected, to indicate @Processor methods that require an access token (see code snippet above).
In 3.3.0, you used the @OAuthAccessToken and @OAuthAccessTokenSecret annotations to indicate when a method required an access token. You could implement methods, as in the Facebook connector example above, for accessing protected and unprotected resources in the same connector. In other words, you could access an unprotected resource without an access token.
In 3.3.1, DevKit wraps the @OAuthAccessToken and @OAuthAccessTokenSecret annotations to enforce an OAuth dance before executing the annotations.
Support Resources
Please refer to the following resources for assistance using Mule ESB 3.3.1.
Documentation
Refer to Mulesoft.org for Mule ESB 3.3.0 documentation updated to include details for Mule ESB 3.3.1.
Getting Help
Access MuleSoft’s MuleForge forum to pose questions and get help from Mule’s broad community of users.
Enterprise Edition To access MuleSoft’s expert support team, subscribe to Mule ESB Enterprise Edition and log in to MuleSoft’s Customer Portal.