The ebXML protocol (Electronic Business using eXtensible Markup Language) is a modular suite of specifications that enables enterprises of any size and in any geographical location to conduct business over the Internet. It is sponsored by UN/CEFACT and OASIS. To learn about ebXML, see the following URL:
This topic focuses on participant business processes for ebXML. For initiator business processes, you use the ebXML control, which provides methods for sending and receiving ebXML messages in a conversation.
This topic describes the template that you can use to build an ebXML participant business process in Oracle Workshop for WebLogic. It contains the following sections:
The generated ebXML participant business process file provides a head start for building public participant business processes for ebXML conversations. Although this file is not required to build ebXML participant business processes, it includes the nodes and business process annotations needed to integrate easily with ebXML initiator business processes.
The generated ebXML participant business process file consists of the following nodes, which are linked in the following sequence:
Table 26-1 ebXML Nodes
To learn about Start nodes, see
Starting Your Business Process.
|
|||
Starts the ebXML participant business process upon receiving an ebXML message from the initiator. To learn about Client Request nodes, see
Receiving Messages From Clients.
|
|||
Sends the response document back to the initiator. To learn about Client Response nodes, see
Sending Messages to Clients.
|
|||
Ends the ebXML participant business process. To learn about Finish nodes, see
Specifying Endpoints in Your Business Process.
|
Oracle Workshop for WebLogic creates a new ebXML participant process Java file and displays it in the Design view pane.
After you create the process.java file, the name of the Java file becomes available as a service on the Services tab in the Oracle WebLogic Integration Administration Console.
After you create an ebXML participant business process, you must customize it for the associated ebXML conversation. Common customization tasks include:
Depending on your implementation requirements, you might make additional customization to the participant business process as needed. For example, participant business processes typically invoke other controls (such as the File, JMS, or Application View controls), or a subprocess, to accomplish the necessary backend integration.
The generated ebXML participant business process file specifies the following default annotations:
ebxmlActionMode="non-default,ebxmlServiceName="eBXML" "protocol-name="ebxml"
These properties are set in the Properties view that is visible when you have the Start node of your business process selected. Review and edit (if needed) the following annotations:
Note: | If the Properties view is not visible in the Design view, choose Window > Show View > Properties from the Oracle Workshop for WebLogic menu. |
To learn more, see ebXML annotations. To learn about configuring business process properties, see Business Process Language.
By default, the ebXML participant business process includes a Client Request node, named Receive request, to handle an incoming ebXML request message from an initiator. For business processes that involve multiple round-trips, you need to create additional Client Request nodes for any other operations that involve that receive an ebXML message from the initiator. To add the node to a business process, drag Client Request from the Node Palette onto the business process.
After creating a Client Request node, for the request
method, specify the attachment and its Java data type for the incoming message. The data type must match the contents of the incoming message and can be one of the following values:
Note: | Attachments can also be typed XML or typed MFL data as long as you specify the corresponding XML Bean or MFL class name in the parameter. To learn more about data types, see Working with Data Types. |
The following restrictions apply to payload specifications:
MessageAttachment[]
type is one of your arguments, no other array (including a MessageAttachment[])
is allowed immediately before or after it.
You can retrieve the message envelope of an incoming ebXML message by using the message-envelope
annotation in the @jpd:ebxml-method
tag, as shown in the following example:
/**
*com.bea.wli.jpd.EbXMLMethod message-envelope="{env}"
*/
public void request(XmlObject payload, XmlObject env) {
}
Note: | You can rename the default value (env ) as long as it matches the name of the parameter specified in the method. |