Getting Started with Oracle SOA Suite

Oracle SOA Suite 11g addresses this with the introduction of a new feature in the
form of the Event Delivery Network.

Introducing events

The Event Delivery Network (EDN) in Oracle SOA Suite 11g provides a declarative
way to use a publish/subscribe model to generate and consume business events
without worrying about the underlying message infrastructure.

Developers only need to produce or consume events without having to deal
with any particular messaging API like JMS, AQ, and MQ, and so on. Consuming
an event means expressing an interest in the occurrence of a specific situation,
while producing an event means advertising this occurrence.

Using the same concepts that are used in Web Service Definition Language (WSDL),
EDN uses an XML-based Event Definition Language, which allows you to define the
event and its associated, strongly typed data. This definition is then registered with
the SOA Infrastructure and is available to all composites to publish or subscribe.


  • In the Event Definition Creation window, enter POEvents as the name of
    the event definition. Accept the namespace value generated.

    Event names are fully qualified names, which means the combination
    of a namespace and the event name together identify a unique event.
    For instance, the event called NewCustomerAdded with name space is different
    than the event with the same name but under a different namespace,
    for example, event NewCustomerAdded with namespace

  • Add a new event by clicking on the + icon.

  • Select the PuchaseOrder element from the po.xsd file using the chooser.

  • Enter NewPO as the name of the event and click on OK to close the Add an
  • SOA-suite/5.jpg”/>

  • Click on OK to accept and create the mediator.

  • Save all.

  • Connect the receiveNewPO mediator to the routePO mediator:
  • SOA-suite/7.jpg”/>

  • Click on item Business Events.

  • You should see the Business Events management page with the NewPO
    event listed in the Events tab.
  • SOA-suite/9.jpg”/>

    This was just one way of publishing an event and will typically be used
    as a way to test the composite. In most cases, the events will be published
    from a number of sources—from a Mediator, from PL/SQL by calling the
    EDN_PUBLISH_EVENT stored function or from a Java class using the EDN
    API. An ADF-BC application can also publish events based on database
    insert, update, and delete operations.


    You cannot really build comprehensive SOA applications without business events.
    Traditionally, this requirement has been fulfilled by message-oriented-middleware
    . However, MOM-based solutions don’t necessarily fit very well within
    a Service-Oriented Architecture. They are low-level technical solutions that provide
    no business semantics, whereas one of the main objectives of creating services is
    to provide business functions using semantics that are better understood by
    business analysts.

    With EDN, Oracle SOA Suite 11g fills this gap by providing an event-handling
    solution that allows creation and use of events using business semantics, without
    the publisher or subscriber of the event ever having to worry about the mechanics
    of messaging.

    As you have seen in this short lab, events are created in a way that directly maps to
    actual business events, in this case creation of a new purchase order. The process of
    subscribing to this event was done declaratively without having to configure any
    messaging queues or topics.

    Quick-build Instructions

    This section gives you all of the operations and names for objects created in this
    chapter. Experienced users can use this to bypass the step-by-step instructions
    and complete this chapter more quickly. The complete details for any particular
    operation listed here can be found in the preceding sections. The information is
    organized in the same manner that it is introduced in the chapter:

    • Define an event:

      • Event Definition Name: POEvents

      • Namespace:

    • Subscribe to the NewPO event:

      • Mediator name: receiveNewPO

      • Mediator template: Subscribe to Events

      • Choose event: NewPO

    • Connect receiveNewPO to routePO:

      • Create a new transformation map, to map data received from
        the event to data to be sent to the routePO mediator

    The application is completed. Deploy and test.

    Leave a Reply

    Your email address will not be published. Required fields are marked *