Customizing Oracle MFT with Java Overview by Dave Berry



Oracle MFT was designed so that the most common features are provided out of the box but when that is not enough, it should be easy enough to extend it using small snippets of customizable code. For the self industrious, you can find all that you need to get started in the Oracle MFT documentation section Processing Transfers with Custom Callouts as shown below.

If you want or need a more detailed drill down of this topic then just read on. As a quick review, remember that all custom callouts are totally reusable and parameterized so any development investment you make is generally a one time cost.


There are many use cases and types of custom callout we will discuss here involving what the callout can do plus when and how the callout can be invoked but first a little background and terminology. Callouts is a general term that is used to describe custom java code that can be used while configuring an MFT Transfer in the MFT Designer page. MFT provides out of the box "Actions" such as compress/decompress or encrypt/decrypt that are available and like your custom callouts can all be attached by clicking the <add processing actions> button.


For the rest of this article I will use the term Action as it applies to both out of the box actions and custom callouts.


Actions come in 2 general types: those that need to modify the payload and those that do not. The "Newline Conversion" example in the docs illustrates how to modify a file to change the newline character to or from DOS to Unix. Actions such as this need to modify the content and must implement the PluginOutput method which provides an output stream. Read the complete article here.

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn image[7][2][2][2] Facebook clip_image002[8][4][2][2][2] Wiki