Message Interface 
You use a message interface to describe an interface independent of a platform or programming language. You can then use this interface to exchange messages between application components using SAP Exchange Infrastructure. Depending on the communication parameters defined for a message interface, it can either have the task of sending a request (outbound) or receiving a request (inbound). Assigning an outbound interface to an inbound interface enables multiple communication partners to exchange messages with each other. Therefore, the following connections are possible for message interfaces:
· A message interface with other message interface
· A message interface with an imported interface
· A message interface with an interface configured by an adapter
By using proxy generation, message interfaces enable ABAP and Java applications to be interconnected.
Message interfaces reference message types and fault message types that ideally you have already created. This is not compulsory in order to save a message interface but this would mean that its definition would be incomplete.
For more information see the Prerequisites section in Introduction to Interface Development.
When you create a message interface you define the communication parameters by using the attributes Mode and Direction. There are four different types of message interfaces you can create:
|
|
Synchronous |
Asynchronous |
|
Inbound |
Synchronous Inbound Message Interface |
Asynchronous Inbound Message Interface |
|
Outbound |
Synchronous Outbound Message Interface |
Synchronous Outbound Message Interface |
Depending on the attributes you define for the message interface, you either need to reference one or two message types in Message Types. If you want to handle application-specific errors or persist them in monitoring, also assign the corresponding fault message types to the message interface. The Integration Builder restricts the input options according to the attributes selected, as follows:
|
|
Referenced Message Types |
Fault Message(s) |
|
Synchronous Outbound Message Interface |
Output Message Type Input Message Type |
yes |
|
Synchronous Inbound Message Interface |
Input Message Type Output Message Type |
yes |
|
Synchronous Outbound Message Interface |
Output Message Type |
no |
|
Asynchronous Inbound Message Interface |
Input Message Type |
yes |
Therefore, the input message type defines the expected message, while the output message type defines the message sent.
Once you have completed a message interface you can do the following:
· Generate a proxy for use at runtime by using ABAP proxy generation or Java proxy generation.
· Export the interface description as an XML document.

The XML format complies with WSDL (Web Service Description Language).This format is subject to the standardization process of the W3C consortium.
...
1. Create a message interface on the design maintenance screen of the Integration Builder (see: Creating a New Object).
2. Enter a description for your message interface.
3. Define the communication parameters in the Attributes frame.
4. In Message Types, reference the required input or output message types either by using the search help or by entering the message types manually.
5. If the interface is not an asynchronous outbound message interface, you have the option of referencing fault message types in the lower table in the Message Types frame. To do so, use the following functions:
Edit References to Fault Messages
|
Function |
Use |
|
|
Add an additional line to the table. Enter the fault message type you want either manually or by using the search help (see below) |
|
|
Call the search help to select a fault message type |
|
|
Change the sequence of the fault message types |
|
|
Delete a reference to a fault message type |
6. Save your changes.