About extending services

Using the Service Definition Framework, one or more services can be aggregated into larger composite services which can in turn be used to create other services. This provides a way to build small reusable components that can be linked together to provide complex business processing.

In Service Definition Framework terminology, a service is a core business logic component that is stateless and does not contain presentation logic. Each service (either provided out-of-the-box by the application or those that are custom created using the Service Definition Framework) represents a logical unit of processing that can be independently performed without any loss of data integrity and within one transaction boundary.

All services within the Service Definition Framework can be invoked bidirectionally either through internal application business processes or through external systems. Services deployed in the Service Definition Framework are stateless, each having their own transaction commitment boundaries.

A service can be invoked by the application by associating the service with an event through an action. You can use a standard interoperability event handler or implement your own custom event handler. You can then configure the application to invoke the event handlers when certain events are raised and conditions are met. For more information about configuring events, conditions, and actions, see the Organization and participant modeling concepts.

The application provides several user exits to extend business logic. User exits invoked from within transactions can be associated to a service when configuring transactions. Note that templates are not supported for user exits. For more information on configuring user exits, see the Organization and participant modeling concepts.

Once services have been configured, they can also be invoked programmatically by a client.

The service invocation configuration depends on the location of the client invoking the service in relation to the location of the product installation, as described in the following situations:
  • If the invoking client does not have IBM® Sterling Order Management System installed - Configure for remote invocation.
  • If the invoking client does have IBM Sterling Order Management System installed - Configure for local invocation.