The AS2 Connector allows you to send and receive data from AS2 certified servers.
After reading this page you should be able to accomplish the following:
The following instructions were written for Anypoint Studio on OS X. Instructions may vary for other operating systems.
1. Launch Anypoint Studio and click on Help -> Install New Software.
2. Press Add to create a new repository.
3. Type in “AS2 Connector” in the Name field and click on Archive…
4. Select the AS2 connector Eclipse “Updatesite.zip” distributed by Modus Integration and press Open.
5. Expand Standard and select AS2 Module. Press Next > to review the items to be installed.
6. Press Next > again to review and accept the license. Press Finish to install the connector.
7. Press OK to accept the prompted security dialog box and allow Anypoint Studio to restart.
The following example requires basic familiarity with AS2, Anypoint Studio, and Mule ESB.
Create a new Mule Project using as run-time Mule Server 3.5.1 EE:
Locate the AS2 Connector on the right hand-side palette:
Drag the connector over to the canvas:
The connector requires an AS2 Connector Configuration. To create a connector configuration, you must first create a global HTTP endpoint and then bind the connector configuration to the endpoint. The connector’s operations leverage the HTTP endpoint to receive and send AS2 messages.
Click on the Global Elements tab and create an HTTP endpoint:
Set the HTTP endpoint name to the more descriptive name of “receive-as2-http-endpoint”. Click on the Connector Configuration add symbol to bring up the HTTP connector configuration dialog:
Set the HTTP connector name to the more descriptive name of “as2-http-connector” and press OK to go back to the global HTTP endpoint dialog box:
Press OK to close the global HTTP endpoint dialog box:
In this step, you will make an AS2 connector configuration and bind it to the global HTTP endpoint. From the Global Elements tab, create an AS2 Connector Configuration:
Type “receive-as2-http-endpoint” in the attribute Global HTTP Endpoint Reference to bind the AS2 connector to the previously created global HTTP endpoint. Press OK.
After completing the previous steps, you should have the following in the Global Elements tab:
Back to the Message Flow tab, on the AS2 processor, select “AS2” from the Connector Configuration drop-down list and select “Receive” from the Operation drop-down list:
The connector’s Key Store Path attribute must be configured in either of the following scenarios:
The key store must be in JKS format. For scenario 1, the key store has to contain the certificate used by the AS2 connector to verify the request’s authenticity. Scenario 2 and 3 require the key store to have a dual-purpose public/private key pair that the connector uses to decrypt the request and sign the receipt. The key store entry alias name for the certificate is required to match the AS2-From field received in the request’s headers. Similarly, the key store entry alias name for the public/private key pair is required to match the AS2-To field received in the request’s headers. The attribute Key Store Password must be set if the key store is protected by a password.
A cross-platform tool that can help you with the setting up of JKS key stores is KeyStore Explorer.
IMPORTANT: For CloudHub deployments, key stores must be located within the Mule application Java classpath (e.g., “src/main/resources”). Furthermore, the key store path attribute has to be relative to the classpath. For instance, if the key store is located at “src/main/resources/key-stores/my-key-store.jks”, then Key Store Path is set to “key-stores/my-key-store.jks”.
Add a File outbound endpoint to save the sender’s AS2 request content. Drag a File outbound endpoint from the palette next to the AS2 Connector. Set the Path attribute to “outbox” and Output Pattern to “data.txt”:
Finally, run the example as a Mule application:
The connector will save the content of valid AS2 requests in the file “data.txt” inside the project root directory “outbox”.