19 Business Services: Creating and Managing

This chapter describes how to create, configure, and manage business services using the Oracle Service Bus Administration Console.

Business services are Oracle Service Bus definitions of the enterprise services with which you want to exchange messages. You define business services using WSDLs (Web Services Definition Language) just as you would define a proxy service. However, the configuration of business services differs from that of proxy services in that a business service does not have a pipeline. Therefore, a business service is any service not implemented by the Oracle Service Bus pipelines.

Click Next. The pages that follow depend on the choices you made on the first page. Enter the appropriate information on each of the subsequent pages, until you reach the summary page, then click Save to save the service in the current session.

If a business service is created from a WSDL that includes WS-Policy attachments, the policies (read-only) are displayed on the Protocol-Specific Transport Configuration page. If any of the service's WS-Policies specifies authentication, then you must select a service account. A proxy service that routes to this business service will use this service account to authenticate to the business service.

19.1.1 Generating a Business Service from a JCA Binding Resource

You can generate a JCA business service from an outbound JCA Binding resource in Oracle Service Bus. For more information on JCA Binding resources, see Chapter 13, "JCA Bindings."

To generate a JCA business service from a JCA Binding:

In the Oracle Service Bus Administration Console, click Create or Edit in the Change Center if you area not already in Create or Edit mode.

In the Resource Browser, click JCA Bindings.

Locate the JCA Binding from which you want to generate a service, and click the Action icon.

In the window that appears, confirm the name of the WSDL and the service you want to generate, select the location for these new resources, and click Generate.

Oracle Service Bus generates the service and its corresponding WSDL.

Modify any other configuration details on the generated service as appropriate, such as the Endpoint URI.

19.1.2 Generating a Business Service from Oracle Enterprise Repository

19.2 Create/Edit a Business Service - Page Reference

Create a business service by selecting Business Service from the Create Resource list on the Project/Folder View page. When you select that option, it displays the first in a series of pages for configuring and adding business services. The pages displayed vary, depending on the options you choose along the way. The pages are:

Use this page to modify general configuration settings for a business service.

When you create a business service, this is the first page displayed in a series of pages for configuring the service. The pages displayed after this one differ depending on the choices you make on this page.

A service type defines the types and packaging of the messages exchanged by the service. Select the type of business service to create:

WSDL Web Service - Select this option to create a business service based on a WSDL. Then, enter the WSDL name, qualified by its path (for example, myProject/myFolder/myWSDL). Alternatively, click Browse to select a WSDL from the Select a WSDL page.

(port or binding) - Enter the name of a port (defined in the WSDL) to describe an actual transport address, or enter the name of a binding (defined in the WSDL) to map to a transport address. If you use Browse to select a WSDL, as described above, the Select a WSDL Definition page lists any ports and bindings defined in the WSDL. When you choose a port or a binding on that page, the (port or binding) field is filled with the selected name.

Transport Typed Service - Select this option to create a service that uses the EJB or Flow transport.

Messaging Service - Select this option to create a service that exchanges messages of very different content-type. These exchanges can be either request/response or one-way. It can also just have a response with no request when used with the HTTP 'GET' option for the HTTP transport. Unlike Web Services, the content-type of the request and response need not be the same.

Any SOAP Service - Select this option to create a SOAP service that does not have an explicitly defined, concrete interface.

Keep the default SOAP 1.1, or select SOAP 1.2 from the list.

Any XML Service - Select this option to create an XML service that does not have an explicitly defined, concrete interface.

HTTP GET is only supported for messaging services and this service type.

Business Service - Select this option to clone an existing business service.

Enter the path (project/folder) and the name of the business service; or click Browse to select the business service from the Summary of Business Services page.

Since Oracle Service Bus does not accept the same URI for multiple services, you must change the URI for the cloned service.

Proxy Service - Select this option to create a business service based on an existing proxy service.

Note: When a service is created from another service, alert rules are maintained in the following way:

When a proxy service is created from a business service or a business service is created from a proxy service, the alert rules, if any, are removed.

When a proxy service is created from another proxy service or a business service is created from another business service, the alert rules, if any, are retained.

After you finish

Click Next to continue configuring this service on the next page; or click Last to review and save this configuration on the Create/Edit a Business Service-Summary page.

Use this page to configure message types for a business service whose type is Messaging Service.

The binding definition for messaging services consists of configuring the content-type of the messages that are exchanged. The content-type for the response does not need to be the same as for the request; therefore, the response is configured separately (for example, the service could accept an MFL message and return an XML acknowledgment receipt).

Note:

E-mail, File, FTP, or SFTP transport business services whose type is Messaging Service support one-way messaging only; the Response Message Type should be none. If you select an option other than none, the file, ftp, or sftp protocol will not be available on the Transport Configuration page.

Table 19-2 describes how to use Create/Edit a Business Service - Message Type Configuration page.

None - Select this option if there is no request message (HTTP GET example)

Binary - Select this option if the content-type of the message is unknown or not important.

Text - Select this option if the message can be restricted to text.

MFL - Select this option if the message is a binary document conforming to an MFL definition. You can configure only one MFL file.

For MFLs, you can click Browse to select an MFL from the MFL Browser, then click Submit.

XML - Select this option if the message is an XML document. To provide some type information, you can choose to declare the XML schema type of the XML document exchanged.

Java - Select this option if a Java Object is being sent in the request. The JMS transport is used for Java Object messages. For more information, see "Sending and Receiving Java Objects in Messages" in the Oracle Fusion Middleware Developer's Guide for Oracle Service Bus.

Response Message Type

Select a message type for the response message:

None - Select this option if there is no response message.

Binary - Select this option if the content-type of the message is unknown or not important.

Text - Select this option if the message can be restricted to text.

MFL - Select this option if the message is a binary document conforming to an MFL definition. You can configure only one MFL file.

For MFLs, you can click Browse to select an MFL from the MFL Browser, then click Submit.

XML - Select this option if the message is an XML document. To provide some type information, you can choose to declare the XML schema type of the XML document exchanged.

Java - Select this option if a Java Object is being received in the response. The JMS transport is used for Java Object messages. For more information, see "Sending and Receiving Java Objects in Messages" in the Oracle Fusion Middleware Developer's Guide for Oracle Service Bus

After you finish

Click Next to continue configuring this service on the next page; or click Last to review and save this configuration on the Create/Edit a Business Service-Summary page.

Use this page to select a transport protocol for the business service and to set other general transport configuration settings.

Outbound transport-level security applies to the connections between Oracle Service Bus proxy services and business services. For more information about transport-level security, see "Configuring Transport-Level Security" in the Oracle Fusion Middleware Developer's Guide for Oracle Service Bus.

Round-robin - This algorithm dynamically orders the URLs that you enter in the Endpoint URI field for this business service. If the first one fails, it tries the next one, and so on until the retry count is exhausted.

For every new message, there is a new order of URLs.

Random - This algorithm randomly orders the list of URLs that you enter in the Endpoint URI field for this business service. If the first one fails, it tries the next one, and so on until the retry count is exhausted.

Random-weighted - This algorithm randomly orders the list of URLs that you enter in the Endpoint URI field for this business service, but some are retried more than others based on the value you enter in the Weight field.

None - This algorithm orders the list of URLs that you enter in the Endpoint URI field for this business service from top to bottom.

Endpoint URI

Enter an endpoint URL in the format based on the transport protocol you selected in the Protocol field. Following are descriptions of the URI formats for each transport. Optional URI elements are shown in brackets []. For more information on transport URIs, see the respective transport chapters in the Oracle Fusion Middleware Developer's Guide for Oracle Service Bus.

To target a JMS destination to multiple servers, use the following URI format: jms://host1:port,host2:port/connection_factory/jndi_destination

You can also omit host and port from the URI to have the lookup performed on the local machine. For example:

jms:///connection_factory/jndi_destination

In a cluster: The host names in the JMS URI must exactly match the host names of the cluster servers as they are configured in Oracle WebLogic Server.

Note: While Oracle WebLogic Server allows forward slashes in JNDI names, such as "myqueues/myqueue", JNDI names with forward slashes interfere with the endpoint URI format required by Oracle Service Bus, and you cannot use those names. To work around this issue, define a JMS foreign server and reference that foreign server in the endpoint URI. For more information, see "Configure foreign servers" in the Oracle Fusion Middleware Oracle WebLogic Server Administration Console Online Help.

mq - mq://<local-queue-name>?conn=<mq-connection-resource-ref>

local-queue-name is the name of the MQ queue from which the business service reads messages.

mq-connection-resource-ref is the path (project/folder) and name of the MQ connection resource; for example, default/my_MQconnection.

Note: The Endpoint URI cannot contain spaces, so do not create MQ Connection resources or projects/folders with spaces in the names.

The protocol and authority are optional when the SOA services are co-located on the same server as Oracle Service Bus.

tuxedo - tuxedo:resourcename[/remotename]

In the URI, resourcename corresponds to a WTC Import name and remotename corresponds to the service name exported by the remote Tuxedo domain. The URI resourcename is required, and the remotename is optional.

If more than one URI is specified, you must have unique resource names for the endpoints. If no remote name is specified, its value is the value of the resource name. If no remote name is entered or if remote and resource name are the same, only one URI is allowed. In this case resource name and remote name have the same value. This allows already defined WTC Imports to make use of WTC load-balancing and failover.

ws - http://host:port/somename or https://host:port/somename

Click Add to add one or more additional URIs. At run time, the URLs are selected based on the load balancing algorithm you selected in the Load Balancing Algorithm field.

If you selected Random-weighted in the Load Balancing Algorithm field, you can also enter a weight in the Endpoint URI field. The default is 1.

If you have multiple endpoint defined, and you selected None in the Load Balancing Algorithm field, the order of endpoints is significant. You can reorder the endpoints using the Up and Down arrows in the Options column.

Oracle Service Bus does not support duplicate endpoint URIs within the same business service.

Retry Count

In case of delivery failure when sending outbound requests, specify the number of times to retry individual URL endpoints; in other words, the number of failover attempts.

For example, a business service has one configured URI (U1) and the number of retries is set to 3. If U1 fails on the first attempt, the system retries the U1 endpoint 3 more times.

If a business service has 2 configured URIs (U1 and U2) and a retry count of 3, if the first attempt (for example, to U1) fails, the system tries (fails over to) the next URI (U2). If that also fails, the system makes two more attempts, once to U1 and once to U2.

Retry Iteration Interval

Specify the number of seconds the system pauses before iterating over all the endpoint URIs in the list again.

For example, a business service has two configured URIs (U1 and U2) and a retry count of 2 with a retry iteration interval of 5 seconds. If the first attempt (to U1) fails, the system tries U2 right away. But if U2 also fails, the system waits for 5 seconds and retries U1 once more.

Retry Application Errors

Select Yes or No.

In case of delivery failure when sending outbound requests, specify whether or not to retry endpoint URIs based on application errors (for example, a SOAP fault).

This field is available only for these transports, HTTP, EJB, JMS, DSP, Tuxedo, SB, and WS.

After you finish

Click Next to continue configuring this service on the next page; or click Last to review and save this configuration on the Create/Edit a Business Service-Summary page.

19.2.5 BPEL-10g Transport Configuration Page

Use this page to configure transport settings for a business service using the BPEL-10g (Oracle BPEL Process Manager) transport protocol. For more information on using Oracle Service Bus with Oracle BPEL Process Manager, see "Oracle BPEL Process Manager Transport" in the Oracle Fusion Middleware Developer's Guide for Oracle Service Bus.

The BPEL transport is used to send request messages from Oracle Service Bus to Oracle BPEL Process Manager. The business service can serve one of the following roles:

Synchronous Client – For synchronous communication with an Oracle Service Bus client, the only location information that is required is the BPEL address. This address is captured statically as the endpoint URI and/or dynamically through URI rewriting.

Asynchronous Client – For asynchronous communication with an Oracle Service Bus client, a callback from Oracle BPEL Process Manager to Oracle Service Bus is sent on a different connection than the request, and you must configure Oracle Service Bus to provide the correct callback address. For more information, see "Advanced Use Cases (Asynchronous)" in the Oracle Fusion Middleware Developer's Guide for Oracle Service Bus.

Service Callback – If the business service is designed to be a service callback to Oracle BPEL Process Manager (where Oracle BPEL Process Manager is calling an external service through Oracle Service Bus), the callback address is known only at run time. Use an Endpoint URI of bpel://callback.

If you configure the business service with the marker URI, configure your pipeline logic to dynamically set the URI on $outbound; for example, using the TransportHeader action.

Note: A Service Callback business service does not support load balancing or failover.

Callback Proxy

This optional field is available only for the Asynchronous Client role. This field lets you select the proxy service (must be either an SB or HTTP proxy of type Any SOAP) that will be used to route callbacks to the Oracle Service Bus client that made the request. For more information, see "Advanced Use Cases (Asynchronous)" in the Oracle Fusion Middleware Developer's Guide for Oracle Service Bus.

Service Account

For JNDI context security, used to access the Oracle BPEL Process Manager delivery service. Click Browse and select a service account. If no service account is specified, an anonymous subject is used.

There is no restriction on the type of service account that can be configured, such as static or pass-through, but the run time must be able to access a user name and password.

Suspend Transaction

Selecting Suspend Transaction makes the business service non-transactional even if the business service is invoked by a transaction.

If you do not select Suspend Transaction:

If the protocol indicates a WebLogic Server-supported protocol (t3, iiop, http), the transaction is propagated.

If the protocol indicates an OC4J server (ormi, opmn), the BPEL transport throws an exception, since OC4J does not support transaction propagation.

The BPEL transport ignores the Suspend Transaction option in the following situations:

The business service is called with quality of service (QoS) "best-effort." The BPEL transport automatically suspends any transaction that does not support QoS.

The business service is called with QoS set to "exactly-once" and there is no transaction.

For a description of transaction propagation, see "Transaction Propagation" in the at Oracle Fusion Middleware Developer's Guide for Oracle Service Bus.

Dispatch Policy

Select the instance of WebLogic Server Work Manager that you want to use for the dispatch policy for this endpoint. The default Work Manager is used if no other Work Manager exists.

Select this check box to have Oracle Service Bus pass the authenticated subject from the proxy service when invoking the EJB and no service accounts are configured. Note that the Service Account field is disabled when this option is selected.

Service Account

Click Browse and select a service account from the list displayed. If no service account is specified, an anonymous subject is used. This option is not available if you use the Pass Caller's Subject option.

Click Browse and select an EJB client JAR resource from the list displayed. To learn about creating JAR resources, see Section 8, "JARs." This is a required field.

Converter Jar

Click Browse and select an EJB converter class JAR resource from the list displayed. To learn more about EJB client JAR resources and converter classes, see "EJB Transport" in the Oracle Fusion Middleware Developer's Guide for Oracle Service Bus.

Home Interface

EJB 2.1 only – Select the required EJBHome interface from the options populated by the JAR. The JNDI name in this URI sample must be associated with the EJBHome interface you select here. If the EJB is not of the required type or an EJBHome interface is not specified in the client-jar, Oracle Service Bus displays a warning.

Remote Interface

EJB 2.1 only – This field is automatically populated depending on the configuration of the Home Interface.

Business Interface

EJB 3.0 only – Select the business interface in the client JAR you want to use.

Target Namespace

This field is populated by information picked up from the JAR.

Style

Select Document Wrapped or RPC according to your requirements. If two or more methods of your stateless session EJB have the same number and data type of parameters, and you want the operations to be document-oriented, you must specify that they be document-wrapped.

The style is important because when routing or publishing to the EJB, $body must have content that matches the style. Also when calling out to an EJB, the style affects the parameter contents, especially for document wrapped. Secondly one usage pattern is to define an EJB business service and then create a proxy service with the same WSDL that routes to the EJB. In this case care must be taken on the style of the WSDL because the client tool used to invoke the proxy might have limitations on the style of the WSDL.

Encoding

Select Encoded or Literal.

Methods

The methods displayed are those of the EJB remote or business interface you selected. Select the required methods (you can select multiple methods). Click + to expand the method. Edit the default parameter values and select a converter if provided (or required).

You must exclude the methods with parameters or return types that are not supported by the JAX-RPC stack, or you must associate such arguments with converter classes.

You can change the default operation name for a given method. (By default, the operation name is the method name.) If an EJB contains methods with same name, you must change the operation names so that they are unique—WSDLs require unique operation names.

Note: If the credentials or transaction settings are different between the methods for a given EJB, you can customize the methods for a given business service and create a business service per method. This gives you fine-grained control over transactions and credentials.

Exceptions

This field appears if a method throws a business exception. If an EJB method throws an exception that has data types not supported by Java Web Services (JWS), such as an ArrayList, use the Exceptions field to select a converter class that converts the exception to a type supported by JWS.

Your converter class must implement com.bea.wli.sb.transports.ejb.ITypeConverter. Converter classes can only be configured for checked exceptions and not for run-time exceptions.

Package the converter class and the converted exception class in the client or converter JAR.

For more information, see "EJB Transport" in the Oracle Fusion Middleware Developer's Guide for Oracle Service Bus.

After you finish

Click Next to continue configuring this service on the next page; or click Last to review and save this configuration on the Create/Edit a Business Service-Summary page.

Select the default SMTP Server to use for endpoint URI entries of name@domain_name.com. If you provide SMTP server parameters in the endpoint URI, as described in Table 19-3, those server resources are used instead of this SMTP Server setting.

Enter the JNDI name of the configured mail session to use for endpoint URI entries of name@domain_name.com. If you provide JNDI mail session parameters in the endpoint URI, as described in Table 19-3, those mail sessions are used instead of this Mail Session setting.

Do not enter a Mail Session if you use the SMTP Server option.

From Name

Enter a display name for the originating e-mail account for this service.

From Address

Enter the originating e-mail account for this service.

Reply To Name

Enter a display name for the reply to e-mail account.

Reply To Address

Enter an e-mail address to reply to.

Connection Timeout

Enter the timeout interval, in seconds, before the connection is dropped. If you enter 0, there is no timeout.

Request Encoding

Accept the default ISO-8859-1 as the character set encoding for requests in e-mail transports, or enter a different character set encoding.

After you finish

Click Next to continue configuring this service on the next page; or click Last to review and save this configuration on the Create/Edit a Business Service-Summary page.

Enter the number of seconds to wait for a response. This value is ignored for a request-only (one-way) operation.

Note: This property is deprecated and will not be available in Oracle Service Bus 12g. To avoid additional upgrade steps when moving to 12g, use the Wait action on a Split-Join as an alternative to this property.

After you finish

Click Next to continue configuring this service on the next page; or click Last to review and save this configuration on the Create/Edit a Business Service-Summary page.

Enter the connection timeout interval in seconds. If the timeout expires before the connection can be established, Oracle Service Bus raises a connection error.

A zero (0) value indicates no timeout.

HTTP Request Method

This parameter lets you to use one of the following HTTP methods in a request:

POST – Passes all its data, of unlimited length, directly over the socket connection as part of its HTTP request body. The exchange is invisible to the client, and the URL does not change. For REST-based requests, POST tells the transport to perform a create/replace operation or perform an action with the request.

GET – You can include as part of the request some of its own information that better describes what to get. This information is passed as a sequence of characters appended to the request URL in a query string. You can use GET in a business service with a Service Type of "Any XML Service," or with a Service Type of "Messaging Service" when the Request Message Type is set to "None." For REST-based requests, GET retrieves a representation of a remote resource.

PUT – You can use PUT in a business service with a Service Type of "Any XML Service" or "Messaging Service." PUT tells the transport to perform a create/replace operation with a REST-based request, such as uploading a file to a known location.

HEAD – You can use HEAD in a business service with a Service Type of "Any XML Service," or with a Service Type of "Messaging Service" when the Response Message Type is set to "None." HEAD tells the transport to get header information for a remote resource rather than getting a full representation of the resource in a REST-based request.

DELETE – You can use PUT in a business service with a Service Type of "Any XML Service" or "Messaging Service." DELETE tells the transport to perform a delete operation with a REST-based request.

Note: If a method is already set in the $outbound/transport/request/http:http-method variable, that value takes precedence over any method you select for HTTP Request Method.

Authentication

Select one of the following:

None - Specifies that authentication is not required to access this service.

Basic - Specifies that basic authentication is required to access this service.

Basic authentication instructs WebLogic Server to authenticate the client using a user name and password against the authentication providers configured in the security realm, such as a Lightweight Directory Access Protocol (LDAP) directory service and Windows Active Directory. The client must send its user name and password on the HTTP request header.

Basic authentication is strongly discouraged over HTTP because the password is sent in clear text. However, it is safe to send passwords over HTTPS because HTTPS provides an encrypted channel.

Client Certificate - Specifies encrypted communication and strong client authentication (two-way SSL). To use this option, all endpoint URIs in the service definition must be HTTPS. To learn more, see "Configuring Transport-Level Security" in the Oracle Fusion Middleware Developer's Guide for Oracle Service Bus.

Service Account

Enter a service account. A service account is an alias resource for a user name and password. This is a required field if you selected the Basic Authentication Required field.

Accept the default iso-8859-1 as the character set encoding for requests in HTTP transports, or enter a different character set encoding.

Response Encoding

Accept the default iso-8859-1 as the character set encoding for responses in HTTP transports, or enter a different character set encoding.

Proxy Server

Enter a proxy server resource or click Browse to choose an entry from the list of configured proxy server resources.

Follow HTTP redirects

Select this check box to specify that HTTP redirects (which are requests with a response code 3xx) should be automatically followed. A re-direct occurs when you send an outbound request to the URL of a business service, and that service returns a response code (for example, 302) that says the URL is no longer valid and this request needs to be sent to another URL.

If you select the Follow HTTP Redirects check box, Oracle Service Bus automatically re-sends the request to the new URL without any action on your part. Deselect this check box if you do not want the HTTP redirects to be automatically followed.

Use Chunked Streaming Mode

Select this option if you want to use HTTP chunked transfer encoding to send messages.

Note: Do not use chunked streaming with if you use the Follow HTTP Redirects option. Redirection and authentication cannot be handled automatically in chunked mode.

After you finish

Click Next to continue configuring this service on the next page; or click Last to review and save this configuration on the Create/Edit a Business Service-Summary page.

Click Browse to select a JCA Binding. The JCA Binding defines different aspects of the service, such as details about the adapter used, a binding to the WSDL and TopLink or EclipseLink mapping file, and the activation/interaction spec properties required by the service.

Once you select a valid JCA Binding, the remaining transport configuration fields become available.

JNDI Service Account is for JNDI context security, used to access the EIS adapter managed connection factory. Click Browse and select a service account. If no service account is specified, an anonymous subject is used.

For JCA business services, there is no restriction on the type of JNDI service account that can be configured, such as static or pass-through, but the run time must be able to access a user name and password. JCA proxy services can use only static JNDI service accounts.

For more information on JNDI service accounts, see "Security" in the "JCA Transport" chapter of the Oracle Fusion Middleware Developer's Guide for Oracle Service Bus.

EndPoint Properties

This field lets you assign values to endpoint properties such as retries for the type of adapter the service uses.

For a list of supported JCA endpoint properties, see "Endpoint Properties" in the Oracle Fusion Middleware Developer's Guide for Oracle Service Bus.

Dynamic EndPoint Properties

This option lets you pass request parameters to JCA-compliant services. For example, you can use a dynamic endpoint property to pass database query parameters to the Oracle JCA Adapter for Database.

Enter a name/value pair for each dynamic endpoint property you want to provide. The endpoint property key matches the query parameter name.

Always use configuration from JCA file

This option determines whether or not Activation Spec Properties (proxy services) and Interaction Spec Properties (business services) are always used from the JCA file.

If this option is selected (default), the JCA transport interacts with the JCA framework using the activation/interaction spec properties in the JCA file.

If this option is deselected, you can override the Activation/Interaction Spec Properties.

For the redeployment impact of using this option, see "Endpoint Redeployment" in the "JCA Transport" chapter of the Oracle Fusion Middleware Developer's Guide for Oracle Service Bus.

Operation Name

Displays a read-only name of the selected WSDL operation. An operation can have its own activation/interaction spec properties, shown in the Activation/Interaction Spec Properties field.

Activation/Interaction Spec Properties

Activation Spec Properties is the field name for proxy services; Interaction Spec Properties is the field name for business services.

If this service is an inbound service invoked by an EIS application, this field displays the activation spec properties for the JCA inbound operation shown in Operation Name field.

You can override the activation/interaction spec properties if you deselect Always use configuration from JCA file.

Note: For Oracle Adapter Suite adapters, activation/interaction spec properties are displayed as read-only. The Oracle Adapter Suite adapters store their own configurations, which you must change in the Oracle Adapter Suite management tools.

19.2.14 JEJB Transport Configuration Page

Use this page to configure transport settings using the JEJB transport protocol. For more information on using the JEJB transport, see "JEJB Transport" in the Oracle Fusion Middleware Developer's Guide for Oracle Service Bus.

Table 19-13 JEJB Transport Configuration Page

Option

Description

Dispatch Policy

Select the instance of WebLogic Server Work Manager that you want to use for the dispatch policy for this endpoint. The default Work Manager is used if no other Work Manager exists.

Select this option if you want the transport to generate an "inlined" XML representation of POJO arguments (an XMLObject) whose parameters you can access and manipulate with XQuery expressions.

Note: Type information is not available inline for XMLObjects passed by value. If you use this option, you cannot pass the typed XMLObject as the argument in a Java Callout in a proxy service pipeline.

Do not select this option if you want to pass the POJO by reference, which also results in better performance.

Pass Caller's Subject

As an alternative to selecting a Service Account, select this option to have Oracle Service Bus pass the authenticated subject from the proxy service when invoking the EJB.

Service Account

Click Browse and select a JNDI service account from the list displayed. If no service account is specified, an anonymous subject is used. For more information, see Chapter 17, "Service Accounts."

Client JAR

Click Browse and select an EJB client JAR resource from the list displayed. The client JAR contains the remote or business interface for the remote service. The Client JAR is registered as a generic Archive Resource.

Home Interface

EJB 2.1 only – Select the required EJBHome interface from the options populated by the JAR.

Remote Interface

EJB 2.1 only – This field is automatically populated based on the configuration of the Home Interface.

Business Interface

EJB 3.0 only – Select the business interface from the client JAR that you want to invoke.

Target Namespace

This field is populated by information picked up from the JAR.

Methods

Select the required methods. Click + to expand the method, which lets you edit the default parameter values.

You can change the default operation name for a given method. By default, the operation name is the method name. If an EJB contains methods with same name (overloaded), you must change the operation names so that they are unique. WSDLs require unique operation names.

After you finish

Click Next to continue configuring this service on the next page; or click Last to review and save this configuration on the Create/Edit a Business Service-Summary page.

This option is disabled if you select a Message Type of Java for the response.

Response Queues

This option is available only when Queue is selected for the Destination Type.

Select one of the following response options:

None – No response is expected. Set this option for one-way operations.

One for all Request URIs – Lets you enter a single URI to handle the response, as well as set other response configuration details such as encoding and timeout, and optionally select a JMS Service Account for passing JMS/JNDI credentials.

One per Request URI – This option provides response failover, letting you enter a response URI or destination for each request URI.

You can optionally select a service account for JMS/JNDI credentials on each request/response pairing.

Response Pattern

This option is available only when you select a response option in the Response Queue field.

Select one of the following:

Select JMSCorrelationID for all services other than JAX-RPC services running on Oracle WebLogic Server.

This option is available only when one of the response options is selected in the Response Queues field.

Enter the character set for encoding responses. The default is UTF-8.

Response Timeout

This option is available only when one of the response options is selected in the Response Queues field.

Enter the amount of time, in seconds, to wait for the response before dropping the connection. The default, zero (0), means the response never times out.

Client Jar

This option is available when the service is a Messaging Service with a response type of Java. Select the client JAR to be used for dequeueing messages that contain Java Objects. Selecting the client JAR ensures it is on the classpath.

This option is available when you select the One for all Request URIs response option and the JMSCorrelationID response pattern.

Enter a response URI in the format:

jms://host:port/connection_factory/jndi_destination

To target multiple servers, use the following format:

jms://host1:port,host2:port/connection_factory/jndi_destination

You can also omit the host and port in the response URI. For example:

jms:///connection_factory/jndi_destination

When you omit host and port, the connection factory/destination lookup occurs on the local server. This is useful, for example, if the request URI goes to a foreign connection factory/destination, but you want the response sent to the local server.

Note: While Oracle WebLogic Server allows forward slashes in JNDI names, such as "myqueues/myqueue", JNDI names with forward slashes interfere with the URI format required by Oracle Service Bus, and you cannot use those names. To work around this issue, define a JMS foreign server and reference that foreign server in the URI. For more information, see "Configure foreign servers" in the Oracle Fusion Middleware Oracle WebLogic Server Administration Console Online Help.

Request Responses

This option is available when you select the One per Request URI response option for the JMSCorrelationID pattern to provide response failover.

For each request URI entered on the generic Transport page, enter a Response URI, as described in the previous Response URI field.

You can select an optional Service Account for JMS/JNDI credentials that the service uses for both the request and response queues.

Target - Responses

This option is available when you select the One for all Request URIs response option for the JMSMessageID pattern.

Enter the name of the Target server that is to receive responses, and enter a Response URI, as described in the Response URI field.

Request Connections

This option is available when you select the One per Request URI response option for the JMSMessageID pattern to provide response failover.

For each request URI, identified sequentially by number in the Seq.No field, optionally enter a JMS Connection Factory name. If you do not enter a name, the JMS transport uses the connection factory from the request URI.

You can select an optional Service Account for JMS/JNDI credentials that the service uses for both the request and response queues.

Target - Destinations

This option is available when you select the One per Request URI response option for the JMSMessageID pattern to provide response failover. Use this field in conjunction with Request Connections.

Each Target server listed (determined by the servers in the current domain), such as Managed Servers in a cluster, lists the request URIs by Seq.No, which correspond to those in the Request Connections field. For each request URI on each target, enter the Destination queue on that target server that receives responses.

Note: Because the Oracle Service Bus development environment supports only a one-server environment, only one Target is listed. To configure this field in a multi-server environment, deploy this service to the run-time environment and complete the service configuration in the Oracle Service Bus Administration Console.

JMS Service Account

This option is available when you use the None or One for all Request URIs options in the Response Queues field.

Select a service account to use for the JMS resource managed by the JMS server. A service account is an alias resource for a user ID and password, used for both the request and response. The same service account is used for both JMS and JNDI purposes.

This field is mutually exclusive with the Pass Caller's Subject option. Use one or the other for JMS/JNDI authentication.

Select this option only if the requests are made over a TLS/SSL connection.

TLS/SSL (Secure Sockets Layer) provides secure connections by allowing two applications connecting over a network to authenticate the other's identity and by encrypting the data exchanged between the applications. Authentication allows a server, and optionally a client, to verify the identity of the application on the other end of a network connection. Additionally, if the administrator has restricted access to individual JMS destinations (queues or topics) by setting access control on the JNDI entry for the destination, the service must authenticate when looking up the entry in the JNDI tree. Authenticate using a Service Account or the Pass Caller's Subject option.

Note: The JMS transport does not support two-way SSL.

Expiration

The time interval in milliseconds after which the message expires. Default value is 0, which means that the message never expires.

Enable Message Persistence

The JMS delivery mode the service uses, which lets you balance reliability with throughput. Select this option (default) for guaranteed message delivery. Deselect this option to improve throughput if an occasional lost message is tolerable.

Unit of Order

Enter a message unit-of-order. Message unit-of-order enables message producers to group messages into a single unit with respect to the processing order. This single unit-of-order requires that all messages in that unit be processed sequentially in the order they were created.

Pass Caller's Subject

Select this check box to have Oracle Service Bus pass the authenticated subject when sending a message.

When you enable this field and the business service targets JMS resources in a different domain, enable global trust on both domains. See Configuring Security for a WebLogic Domain in Securing Oracle WebLogic Server.

This field is mutually exclusive with the Service Account option. Use one or the other for JMS/JNDI authentication.

When you enable this field and the business service targets JMS resources in a different domain, enable global trust on both domains. See "Configuring Security for a WebLogic Domain" in Oracle Fusion Middleware Securing Oracle WebLogic Server.

JNDI Timeout

The JNDI connection timeout (in seconds) used while looking up the destination or connection factory in the JNDI tree.

The default, zero (0), means the connection never times out.

After you finish

Click Next to continue configuring this service on the next page; or click Last to review and save this configuration on the Create/Edit a Business Service-Summary page.

This option is available only when the Is Response Required check box is selected.

Select this check box to automatically generate a CorrelationID or MessageID.

Model Queue

For Dynamic Queue Response Correlation Pattern only. Enter the name of the model queue used to generate the dynamic queue.

MQ Response URI

This option is available only when the Is Response Required check box is selected.

The destination to which the response should be published. Enter a response URI in the same format as the endpoint URI:

mq://local_queue_name?conn=mq_connection_resource

or, if you are using dynamic queues:

mq://dynamic_queue_prefix?conn=mq_connection_resource

The dynamic_queue_prefix, which is limited to 32 characters, is used to create the dynamic queue on the MQ server. The queue name becomes the prefix plus a unique ID. For example, if the dynamic_queue_prefix is example, the dynamic queue would be named something like example123129083821.

You can also use an asterisk (*) as a wildcard in the dynamic queue response URI. For example:

mq://dynamic_queue_prefix*?conn=mq_connection_resource

mq://dynamic_queue_prefix*

mq://*

If you do not provide a dynamic_queue_prefix in the URI, the transport uses the dynamic queue name generated by the MQ server. If you do not provide an explicit mq_connection_resource in the URI (best practice), the transport uses the mq_connection_resource from the endpoint URI.

For more detailed information, see "MQ Transport" in the Oracle Fusion Middleware Developer's Guide for Oracle Service Bus.

Response Timeout

This option is available only when the Is Response Required check box is selected.

Enter the number of seconds to wait for a response before dropping the connection.

Dispatch Policy

Dispatch policy refers to the instance of Oracle WebLogic Server Work Manager that you want to use for the service endpoint.

Username Password Authentication - Specifies that a static service account is associated with this authentication method and the client is authenticated using the provided credentials.

Host Based Authentication - Specifies that a user name and service key provider is required to use this authentication method. Any user connecting from a known host is authenticated using the private key of the host.

Public Key Authentication - Specifies that a user name and service key provider is required to use this authentication method. Every user has their own private key.

Note: The Oracle Service Bus service does not use the service key provider to authenticate any credentials from the SFTP server. It uses only the known_hosts file to authenticate the SFTP server, as described in "Configuring Transport-Level Security for SFTP Transport" in the Oracle Fusion Middleware Developer's Guide for Oracle Service Bus.

Service Account

Enter the service account for the user, or click Browse to select service accounts from a browser.

Service Key Provider

This option is available only when Host Based or Public Key Authentication is selected.

Enter a service key provider in the Service Key Provider field. You can click Browse to select service key providers from a browser. This is a required field.

Username

This option is available only when Host Based or Public Key Authentication is selected.

Enter the user name.

Timeout

Enter the socket timeout interval, in seconds, before the connection is dropped. If you enter 0, there is no timeout. The default value is 60.

Prefix for destination File Name

Enter an optional prefix that the transport prepends to the file name on the remote server.

Do not enter * in this field. This character causes a run-time exception.

Suffix for the destination File Name

Enter an optional suffix that the transport appends to the file name on the remote server.

Do not enter * in this field. This character causes a run-time exception.

Request Encoding

Accept the default UTF-8 as the character set encoding for requests in SFTP transports.

After you finish

Click Next to continue configuring this service on the next page; or click Last to review and save this configuration on the Create/Edit a Business Service-Summary page.

19.2.19 SOA-DIRECT Transport Configuration Page

For more information on the SOA-DIRECT transport, see "SOA-DIRECT Transport" in the Oracle Fusion Middleware Developer's Guide for Oracle Service Bus.

Table 19-18 Create/Edit a Business Service – SOA-DIRECT Transport Configuration

Property

Description

JNDI Service Account

Optional. Specifies the security credentials for the JNDI lookup of the target SOA service. The service account must be static. Click Browse and select a service account. If you do not specify a service account, an anonymous subject is used.

Role

Required. Identifies the communication pattern the service uses. Select one of the following options:

Synchronous Client (default) – In this role, because there is no asynchronous callback, the Callback Proxy option is disabled. The WS-Addressing Version option is also disabled.

Asynchronous Client – In this role, because asynchronous callback is usually required, you can identify a Callback Proxy, and you must select a WS-Addressing Version. The asynchronous option is enabled only when the WSDL service is of type SOAP.

Service Callback – This role is for returning the asynchronous callback to an SOA service after an external service invocation.

Load balancing or failover are not available for services in the Service Callback role.

Callback Proxy

Optional. Enabled only for the Asynchronous Client role.

This option lets you specify the proxy service that receives callbacks. When you select a callback proxy, if no WS-Addressing is provided by the request or the proxy service pipeline, Oracle Service Bus automatically populates the ReplyTo property in the SOAP header. You must select a WSDL proxy service that uses the SB transport (for RMI), and the callback proxy service must understand WS-Addressing.

WS-Addressing properties that are sent in the request or set in the proxy service pipeline are used instead of the callback proxy you set in this option.

If you do not specify a Callback Proxy, and the request does not contain ReplyTo properties, you must provide ReplyTo properties in the SOAP header through the proxy service pipeline.

Fault Proxy

This option is not currently supported. You must configure your callback services to handle faults in an asynchronous pattern.

WS-Addressing Version

Required. Enabled only for the Asynchronous Client role.

Specify the default WS-Addressing version to use when no WS-Addressing is provided in the request or the proxy service pipeline. WS-Addressing properties that are sent in the request or set in the proxy service pipeline are used instead of the WS-Addressing version you set in this option.

For WS-Addressing version mismatches between environments, perform any necessary transformations in the proxy service pipeline. For more information, see the "Transformation Examples" in the Oracle Fusion Middleware Developer's Guide for Oracle Service Bus.

Dispatch Policy

Select the instance of WebLogic Server Work Manager that you want to use for the dispatch policy for this endpoint. The default Work Manager is used if no other Work Manager exists.

Optional. Select this option to have Oracle Service Bus pass the authenticated subject from the proxy service when invoking the SOA service. The Invocation Service Account option, an alternative to Pass Caller's Subject, is disabled when you select this option.

Optional. Alternative to Pass Caller's Subject, which lets you specify custom security credentials by selecting a service account for RMI invocation. You can specify any type of service account (Pass Through, Static, Mapping).

Click Browse and select a service account. If you do not specify a service account, an anonymous subject is used.

After you finish

Click Next to continue configuring this service on the next page; or click Last to review and save this configuration on the Create/Edit a Business Service-Summary page.

Enter the name of the class or classes describing the FML/FML32 buffer received. These are used for the FML/FML32-to-XML conversion routines to map field names to element names. This is a space separated list of fully qualified class names.

View Classes

Enter the name of the class or classes describing the VIEW/VIEW32 buffer received or sent. These are used for the VIEW-to-XML or VIEW32-to-XML conversion routines to map field names to element names. This is a space separated list of fully qualified class names.

Classes Jar

Select a JAR Resource that contains a JAR file with the FML/FML32 or VIEW/VIEW32 classes necessary for this endpoint operation.

Remote Access Point(s)

Select a remote access point from the drop down list that is associated with the Import. The list contains remote access points configured in WTC. A business service cannot be created if there is no associated remote access point.

If no remote access points exist or to create a new one, select New. Enter the corresponding Access Point Name and Network Address in the adjacent fields. Upon validation of the endpoint, the access point is added to the WTC configuration for each WTC server. If no WTC server exists, one is created.

If more than one URI has been specified, there will be one remote access point field per URI and the URI displays for informative purposes. If more than one URI exists, each requires a different remote access point. If the URI specified already corresponds to an existing WTC resource, the corresponding remote access point displays, but cannot be modified.

Local Access Point(s)

This field appears only when you select New in the Remote Access Point field.

From the list, select a local access point to be associated with the newly created remote access point. If none exist or to create a new one, select New. Enter the corresponding Local Access Point Name and Local Network Address in the adjacent fields.

Request Buffer Type

Select the type of buffer that the remote Tuxedo service will receive.

Request Buffer Subtype

This option is enabled if the previous Request Buffer Type value is VIEW or VIEW32. Enter the buffer subtype with which to associate the request buffer.

Response Required?

Select this check box to indicate a bidirectional call. If not checked, the underlying tpcall is invoked with TPNOREPLY flag, and a null response is posted asynchronously.

Suspend Transaction?

Select this check box to suspend the transaction, if it exists. This is useful when the remote service does not support transactions.

Dispatch Policy

Select the instance of WebLogic Server Work Manager that you want to use for the dispatch policy for this endpoint. The default Work Manager is used if no other Work Manager exists.

This Work Manager is used to asynchronously post a null reply in the case of a one-way invocation.

Specify the maximum amount of time (in seconds) that the transport run time waits for replies; an integer value that is greater than or equal to 0. If not specified or set to zero (default), replies will time out at BLOCKTIME, the maximum number of seconds that the local WTC access point allows for a blocking call.

Transformation Style

Select one of the following:

None - (default) The order of fields may not be respected.

Ordered - The fields are presented with all their occurrences in the correct order.

Ordered and Grouped - If the fields are logically structured as records, the fields are ordered by occurrence and grouped by record.

After you finish

Click Next to continue configuring this service on the next page; or click Last to review and save this configuration on the Create/Edit a Business Service-Summary page.

This option is available only when the Queue Error Messages check box is selected.

Enter the URI of the JMS queue for storing error messages, in the following format:

jms://host:port/connFactoryJndiName/queueJndiName

Note: While Oracle WebLogic Server allows forward slashes in JNDI names, such as "myqueues/myqueue", JNDI names with forward slashes interfere with the URI format required by Oracle Service Bus, and you cannot use those names. To work around this issue, define a JMS foreign server and reference that foreign server in the URI. For more information, see "Configure foreign servers" in the Oracle Fusion Middleware Oracle WebLogic Server Administration Console Online Help.

JMS Error Queue Service Account

This option is available only when the Queue Error Messages check box is selected.

Enter a service account or click Browse to select one from the list displayed.

The service account specifies the credentials to use for JNDI lookups and sending error messages to the error queue.

Use SSL for Error Queue

This option is available only when the Queue Error Messages check box is selected.

Select the check box to use SSL for connecting to the error queue.

After you finish

Click Next to continue configuring this service on the next page; or click Last to review and save this configuration on the Create/Edit a Business Service-Summary page.

Use this page to configure the SOAP Binding for a business service based on a WSDL.

Select Enforce WS-I Compliance to specify whether or not the service is to conform to the Basic Profile defined by the Web Services Interoperability Organization. This option is available for or SOAP 1.1 services only

When a service is marked WS-I compliant, checks are performed against the messages sent to and from that service.

After you finish

Click Next to continue configuring this service on the next page; or click Last to review and save this configuration on the Create/Edit a Business Service-Summary page.

Use this page to specify how Oracle Service Bus handles message content. Table 19-21 describes the message handling options for business services. Different options are available for different transport types.

Select the Enabled check box to enable the business service to encode outbound messages in MTOM/XOP format. Note that this option is disabled for imported business services that are based on previous release configurations.

If XOP/MTOM Support is enabled, select how to handle binary data in the $header and $body message context variables from among the following options:

Include Binary Data by Reference: (Default) In an outbound response message, replace xop:Include elements with ctx:binary-content elements when setting up the $body message context variable.

Include Binary Data by Value: In an outbound response message, replace xop:Include elements with Base64-encoded text versions of corresponding binary data when setting up the $body message context variable.

Note that if XOP/MTOM Support is enabled for a business service, it is not required that every outbound message be in the MTOM format. Instead, this setting specifies that the business service is capable of handling an MTOM payload.

Since Oracle Service Bus does not support a combination of MTOM and SwA, the system issues a runtime error when Oracle Service Bus attempts to dispatch an outbound request to a business service and the business service is both MTOM/XOP-enabled and the $attachments message context variable is not null.

This feature lets you store attachments in outbound response messages to a disk file and then process the data in a streaming fashion without buffering the attachment contents in memory. This enables the business service to process large attachments robustly and efficiently.

Select the Page Attachments to Disk check box to enable the business service to stream attachments in outbound response messages.

Note that if you enable XOP/MTOM Support, the Attachments option is only available if you choose the Include Binary Data by Reference option under XOP/MTOM Support. Note also that payloads that contain attachments must conform to RFC 822. Specifically, lines containing Internet headers need to be terminated with CRLF (carriage return line feed).

Result Caching

If you invoke business services whose results seldom change, result caching improves business service performance by returning cached results to the client instead of invoking an external service directly.

Configure result caching in the Advanced Settings section using the following guidelines:

Select the Supported option. When you do, the remaining fields are enabled.

Expression Namespaces – When using expressions to configure result caching, whether with the Cache Token Expression, the Expiration Time, or both, you can enter the namespaces and corresponding prefixes to use in the expressions. This field also lets you view a list of existing namespaces.

Cache Token Expression – Oracle Service Bus uses cache keys to identify cached results for retrieval or population, and the cache token portion of the cache key provides the unique identifier. You can use an expression—the Cache Token Expression—to generate the cache token part of the cache key to uniquely identify a cached result for the business service.

To generate the cache token from a value in the request (in the proxy service message flow that invokes the business service), use an expression that gets the value from the pipeline $body, $header, $operation, or $transportMetaData ($outbound/ctx:transport/ctx:request or $outbound/ctx:transport/ctx:response). For example, you can populate the cache-token from a customer ID in the message $body.

The Cache Token Expression must resolve to a String or the value of simple content, such as an attribute or an element with no child elements. If the expression evaluates to null or causes an error, results are not cached.

Note: You can also generate the cache token from the request, without setting a Cache Token Expression in the business service configuration. To do this, include a value in $outbound/ctx:transport/ctx:request/ctx:cache-token in the proxy service pipeline. Any value in that cache-token overrides the Cache Token Expression in the business service configuration.

Expiration Time – Expiration Time, or time-to-live (TTL), determines when an entry in the business service's result cache is flushed. A duration of zero (0) means no expiration. A negative duration means do not cache. Select one of the following:

Result Caching (continued)

Use Default – The default is the expiry-delay value in DOMAIN_HOME/config/osb/coherence/osb-coherence-config.xml. The default is 5 minutes.

Duration – Set a specific length of time.

XQuery Expression – You can enter an XQuery expression that gets an Expiration Time value from the request or response. Select Request or Response.

To generate the expiration time from a value in the request or response, use an expression that gets the value from the pipeline $body, $header, $operation, or $transportMetaData ($outbound/ctx:transport/ctx:request or $outbound/ctx:transport/ctx:response). For example, use a value you have set in the Cache-Control HTTP header.

Expiration Time must resolve to an Integer (representing seconds), an XQuery dayTimeDuration (XSD type), or the integer value of simple content representing seconds, such as an attribute or an element with no child elements. If the expression evaluates to null or causes an error, results are not cached.

Note: You can also generate the expiration from the request, without setting an Expiration Time in the business service configuration. To do this, include a value in $outbound/ctx:transport/ctx:request/ctx:cache-ttl in the proxy service pipeline. Any value in the cache-ttl element overrides the Expiration Time in the business service configuration.

Use this page to view or modify the configuration settings for a business service before saving it.

To view or modify settings, click Edit in the row of the appropriate category (for example, General Configuration, Transport Configuration, etc.). The pages you can edit depend on what pages you configured when creating the business service. The following list shows all pages:

19.3 Exporting a WSDL Associated with a Business Service

You can export the WSDL of a WSDL-based business service, so you can view or modify the WSDL in an external tool such as an IDE. The WSDL is exported as a JAR file.

Note that this is different than the Export Resources functionality in the System Administration module, which you use to move and stage resources between two domains. See Section 29.2, "Exporting Resources."

To restrict the number of items in the list, you can filter by name, path, or both. In the Name and Path fields, under Search, enter the name and/or path of the target(s), then click the Search button.

The path is the project name and the name of the folder in which the business service resides.

Wildcard characters * and ? are allowed. Search is case-sensitive.

Click View All to display all business services in the domain. This clears the search parameters from the previous search.

Table 19-22 Summary of Business Services Page

Property

Description

Name

A unique name for the business service. Click the name to display the View a Business Service - Configuration Details age.

The path is the project name and the name of the folder in which the business service resides, for example, UDDI/BusServices/OSB_services.

Click the path of a business service to display the Project/Folder View page that contains it.

Actions

Do any of the following:

Click the Launch Test Console icon to invoke the Test Console, which you use to validate and test the design of your services and transformations. For business services, you can only use the Test Console at run time; that is, when the session is activated. For transformations, you can use the Test Console whether you are inside or outside a session. See Section 33.1, "Testing Services" and Section 33.2, "Testing Transformations."

The Export WSDL icon is displayed for WSDL-based business services. Click this icon to export a WSDL, which you can then view or modify in an external tools such as an IDE.

Note that this is different than the Export Resources functionality in the System Administration module, which you use to move and stage resources between two domains. See Section 4.28, "Exporting a WSDL."

The Generate WSDL icon is displayed for transport-typed business services, such as EJB and JEJB (but not for Split-Join flow services). Click this icon to generate a WSDL, which you can then view or modify. See Section 4.29, "Generating a WSDL."

Options

Click the Delete icon to delete the service. A Deletion Warning icon is displayed when other resources reference this resource. You can delete the resource with a warning confirmation. This might result in conflicts due to unresolved references to the deleted resource. For more information, see Section 19.6, "Deleting Business Services."

Click the business service name. The View a Business Service - Configuration Details page displays configuration information for the selected business service.

To view or modify settings, do either of the following:

Click the Edit icon next to the name of the category whose properties you want to view or edit (for example, General Configuration, Transport Configuration, etc.). The pages you can edit depend on what pages you configured when creating the business service.

On the Create/Edit a Business Service-Summary page, click Save to commit the updates in the current session.

To end the session and deploy the configuration to the run time, click Activate under Change Center.

19.5.1 View a Business Service - Configuration Details Page

The View Business Service - Configuration Details page displays the configuration details of a business service. Table 19-23 describes all the properties that can appear on this page. (Properties vary depending on the details of the business service.)

Click the Edit link next to any category name to display the associated configuration page.

Table 19-23 View a Business Service: Configuration Details Page

Properties

Description

Last Modified By

The user who created this business service or imported it into the configuration.

Last Modified On

The date and time that the user created this business service or imported it into the configuration. Click the date and time link to view the change history of this resource. See Section 4.23, "View Change History Page."

Use this page to configure policy settings for WSDL-based and Any SOAP business services. Table 19-24 describes how to use the page.

Note that for WSDL-based services, WLS 9.2 policies bound to the service are exposed (inlined) in the effective WSDL. Abstract policies are pre-processed before they are inlined. OWSM policies are bound by reference, not inlined in the effective WSDL.

Use filtering if necessary to locate the policies you want. For business services, only client-side policies are displayed.

If a WSDL used to create a business service contains embedded standard WS-Security policies, Oracle Service Bus throws an error and displays a conflict. To resolve this conflict, replace the embedded WSDL policies with compatible Oracle Web Services Manager policies by selecting From OWSM Policy Store and clicking Add Compatible. Oracle Service Bus makes a best-effort attempt at finding the closest matching policy from the Oracle Web Services Manager policy store based on the standard policy embedded in the WSDL. The algorithm may return zero, one, or multiple matching policies.

If after clicking Add Compatible Oracle Service Bus finds no compatible policies, click Add and select the appropriate Oracle Web Services Manager policies. If Oracle Service Bus returns more than one compatible policy, delete the policies you do not want to use.

From WSDL – Select this option if the service policy is associated with the WSDL upon which the service is based. These policies support WS-Security 1.0, SAML 1.1, and other industry standards.

With this option you can view (read-only) request and response policies from the WSDL.

Note: If you receive an error in the business service configuration about WS-Security Policies not supported by Oracle Service Bus, use the From OWSM Policy Store option to replace the embedded WSDL policies with compatible OWSM policies.

From Pre-defined Policy or WS-Policy Resource, in which you add service-level policies, operation-level policies (in which case the policy applies to both the request and response messages), request policies, and response policies from the Administration Console.

Policies are either pre-defined in Oracle WebLogic Server or user-defined in Oracle Service Bus with a WS-Policy resource. These policies support WS-Security 1.0, SAML 1.1, and other industry standards.

With this option you can add policies at the service, operation, request, and response levels.

Note: The policy binding models are mutually exclusive. You must use only one type of policy in a service. If you bind policies directly to the service, all WSDL-based policies are ignored.

After adding policies, you can provide overrides on the Security page.

After you finish

Click Update to save this configuration; or click Reset to undo your changes.

The fields available on this page depend on the use of policies in the business service. For example, if the service uses OWSM policies (recommended), Policy Overrides appear on the Security page. For more information, see "Securing Oracle Service Bus with Oracle Web Services Manager" in the Oracle Fusion Middleware Developer's Guide for Oracle Service Bus.

WLS 9.2 policies bound to the service are exposed (inlined) in the effective WSDL. Abstract policies are pre-processed before they are inlined. OWSM policies are bound by reference, not inlined in the effective WSDL.

Use this page to configure security settings for a business service that has a WSDL-based policy or that uses pre-defined policy bindings. Table 19-25 describes how to use the page.

Table 19-25 View a Business Service - Security Page

Option

To edit...

Service Account

Click Browse and select a service account from the list displayed. If no service account is specified, an anonymous subject is used.

Note: This option is not available for services that use Oracle Web Services Manager Policies, because user credentials are provided by override keys.

19.6 Deleting Business Services

Select Resource Browser > Business Services to display the Summary of Business Services page.

Click the Delete icon in the row of the business service you want to delete. The business service is deleted in the current session. A Deletion Warning icon is displayed when other resources reference this resource. You can delete the resource with a warning confirmation. This might result in conflicts due to unresolved references to the deleted resource.

To end the session and deploy the configuration to the run time, click Activate under Change Center.

Scripting on this page enhances content navigation, but does not change the content in any way.