org.mule.modules

mule-module-siebel

config

Namespacehttp://www.mulesoft.org/schema/mule/siebel
Schema Locationhttp://www.mulesoft.org/schema/mule/siebel/current/mule-siebel.xsd  (View Schema)
Schema Version1.0
Minimum Mule Version3.4

Module Overview

Oracle Siebel Java Data Beans connector

Summary

Configuration
<siebel:config>
Configure an instance of this module
Message Processors
<siebel:create-business-component>
Creates a new business component
<siebel:delete-business-component>
Deletes a Siebel business component record from Id
<siebel:query-business-components>
Retrieves a list of business components depending on a given search spec or search expression
<siebel:query-join-business-components>
Allows retrieving two different business object, joining them according to an specified criteria
<siebel:update-business-component>
Updates Siebel business component from values map
<siebel:upsert-business-component>
Creates or updates a business component depending if it exists or no.

Configuration

To use the this module within a flow the namespace to the module must be included. The resulting flow will look similar to the following:

<mule xmlns="http://www.mulesoft.org/schema/mule/core"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xmlns:siebel="http://www.mulesoft.org/schema/mule/siebel"
      xsi:schemaLocation="
               http://www.mulesoft.org/schema/mule/core
               http://www.mulesoft.org/schema/mule/core/current/mule.xsd
               http://www.mulesoft.org/schema/mule/siebel
               http://www.mulesoft.org/schema/mule/siebel/current/mule-siebel.xsd">

      <!-- here goes your flows and configuration elements -->

</mule>

This module is configured using the config element. This element must be placed outside of your flows and at the root of your Mule application. You can create as many configurations as you deem necessary as long as each carries its own name.

Each message processor, message source or transformer carries a config-ref attribute that allows the invoker to specify which configuration to use.

Attributes
TypeNameDefault ValueDescriptionJava TypeMIME TypeEncoding
xs:string name Optional. Give a name to this configuration so it can be later referenced.
xs:string dataSenseFilterQueryBusComp Optional. Query for filtering DataSense Business Components results
xs:string dataSenseFilterQueryBusObjects Optional. Query for filtering DataSense Business Objects results
xs:boolean dataSenseHierarchicalDiscovery false Optional. Indicates if the fields discovery will recreate hierarchical objects within business components
xs:int defaultViewModeBusComp 3 Optional. default view mode for DataSense purposes
xs:int defaultViewModeBusObjects 3 Optional. default view mode for Business Objects discovery

Connection Pool

This connector offers automatic connection management via the use of a connection pool. The pool will act a storage mechanism for all the connections that are in-use by the user of this connector.

Prior to execution of a processor, the connector will attempt to lookup an already established connection and if one doesn't exists it will create one. That lookup mechanism is done in the connection pool via the use of connection variables declared as keys.

The user of the connector can configure the pool by adding a connection-pooling-profile to the connector configuration like this:

    <siebel:connection-pooling-profile maxActive="10" maxIdle="10"
                             exhaustedAction="WHEN_EXHAUSTED_GROW" maxWait="120" minEvictionMillis="60000" evictionCheckIntervalMillis="30000"/>

The following is a list of connection attributes, each connection attribute can be configured at the config element level or they can also be added to each processor. If they are used at the processor level they get the benefit of full expression resolution.

Connection Attributes
NameDefault ValueDescriptionJava TypeMIME TypeEncoding
config-ref Optional. Specify which configuration to use.
user Siebel username String */* UTF-8
password Siebel password String */* UTF-8
server Siebel server String */* UTF-8
port 2321 Optional. Siebel port String */* UTF-8
serverName Siebel Enterprise server name String */* UTF-8
objectManager Siebel Object Manager String */* UTF-8
language ENU Optional. Connection language String */* UTF-8
fileEncoding utf8 Optional. Connection file encoding String */* UTF-8

Reconnection Strategies

Reconnection Strategies specify how a connector behaves when its connection fails. You can control how Mule attempts to reconnect by specifying a number of criteria:

With a reconnection strategy, you can better control the behavior of a failed connection, by configuring it, for example, to re-attempt the connection only once every 15 minutes, and to give up after 30 attempts. You can also send an automatic notification to your IT administrator whenever this reconnection strategy goes into effect. You can even define a strategy that attempts to reconnect only during business hours. Such a setting can prove useful if your server is frequently shut down for nightly maintenance.

Configuration

A reconnection strategy that allows the user to configure how many times a reconnection should be attempted and how long to wait between attempts.

    <siebel:config>
         <reconnect count="5" frequency="1000"/>
    </siebel:config>
Reconnect Attributes
NameDefault ValueDescription
frequency 2000 Optional. How often (in ms) to reconnect
count 2 Optional. How many reconnection attempts to make

For more information about reconnection strategies in Mule, or even how to write your own custom reconnection strategy please check this section.

Message Processors

<siebel:create-business-component>

Creates a new business component

XML Sample
INCLUDE_ERROR

Attributes
NameDefault ValueDescriptionJava TypeMIME TypeEncoding
config-ref Optional. Specify which configuration to use.
businessObjectComponentType Siebel's business object component type String */* UTF-8
Connection Parameters
This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation.
user Optional. Siebel username String */* UTF-8
password Optional. Siebel password String */* UTF-8
server Optional. Siebel server String */* UTF-8
port 2321 Optional. Siebel port String */* UTF-8
serverName Optional. Siebel Enterprise server name String */* UTF-8
objectManager Optional. Siebel Object Manager String */* UTF-8
language ENU Optional. Connection language String */* UTF-8
fileEncoding utf8 Optional. Connection file encoding String */* UTF-8
Child Elements
NameDefault ValueDescriptionJava Type
<siebel:business-component-fields> #[payload] Optional. Map with the list of values to be added to the new component Map<String, Object>
Returns
Return Type Description
CreateResult created business component id
Exception Payloads
Payload ClassDescription
SiebelException when the service fails

<siebel:delete-business-component>

Deletes a Siebel business component record from Id

XML Sample
INCLUDE_ERROR

Attributes
NameDefault ValueDescriptionJava TypeMIME TypeEncoding
config-ref Optional. Specify which configuration to use.
businessObjectComponentType Siebel's business object component type String */* UTF-8
businessComponentId Id of the business component to be deleted String */* UTF-8
viewMode 3 Optional. Siebel business component view mode Integer */*
Connection Parameters
This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation.
user Optional. Siebel username String */* UTF-8
password Optional. Siebel password String */* UTF-8
server Optional. Siebel server String */* UTF-8
port 2321 Optional. Siebel port String */* UTF-8
serverName Optional. Siebel Enterprise server name String */* UTF-8
objectManager Optional. Siebel Object Manager String */* UTF-8
language ENU Optional. Connection language String */* UTF-8
fileEncoding utf8 Optional. Connection file encoding String */* UTF-8
Returns
Return Type Description
boolean true if the operation was successful
Exception Payloads
Payload ClassDescription
SiebelException when the service fails

<siebel:query-business-components>

Retrieves a list of business components depending on a given search spec or search expression

XML Sample
INCLUDE_ERROR

Attributes
NameDefault ValueDescriptionJava TypeMIME TypeEncoding
config-ref Optional. Specify which configuration to use.
businessObjectComponentType Siebel's business object component type String */* UTF-8
searchExpression Optional. Search expression for Siebel's business components String */* UTF-8
viewMode 3 Optional. Siebel business component view mode Integer */*
Connection Parameters
This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation.
user Optional. Siebel username String */* UTF-8
password Optional. Siebel password String */* UTF-8
server Optional. Siebel server String */* UTF-8
port 2321 Optional. Siebel port String */* UTF-8
serverName Optional. Siebel Enterprise server name String */* UTF-8
objectManager Optional. Siebel Object Manager String */* UTF-8
language ENU Optional. Connection language String */* UTF-8
fileEncoding utf8 Optional. Connection file encoding String */* UTF-8
Child Elements
NameDefault ValueDescriptionJava Type
<siebel:fields-to-retrieve> List of fields to retrieve in the query List<String>
<siebel:search-spec> Optional. Map with search values to be used as filters in the query Map<String, String>
Returns
Return Type Description
List<Map<String, Object>> list of maps with the components values
Exception Payloads
Payload ClassDescription
SiebelException when the service fails

<siebel:query-join-business-components>

Allows retrieving two different business object, joining them according to an specified criteria

XML Sample
INCLUDE_ERROR

Attributes
NameDefault ValueDescriptionJava TypeMIME TypeEncoding
config-ref Optional. Specify which configuration to use.
businessObjectComponentType Siebel's business object component type String */* UTF-8
searchExpression Optional. Search expression for Siebel's business components String */* UTF-8
businessObjectComponentTypeToJoin Business object component to join String */* UTF-8
viewMode 3 Optional. Siebel business component view mode Integer */*
Connection Parameters
This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation.
user Optional. Siebel username String */* UTF-8
password Optional. Siebel password String */* UTF-8
server Optional. Siebel server String */* UTF-8
port 2321 Optional. Siebel port String */* UTF-8
serverName Optional. Siebel Enterprise server name String */* UTF-8
objectManager Optional. Siebel Object Manager String */* UTF-8
language ENU Optional. Connection language String */* UTF-8
fileEncoding utf8 Optional. Connection file encoding String */* UTF-8
Child Elements
NameDefault ValueDescriptionJava Type
<siebel:fields-to-retrieve> List of fields to retrieve in the query List<String>
<siebel:search-spec> Optional. Map with search values to be used as filters in the query Map<String, String>
<siebel:fields-to-retrieve-to-join> Fields to retrieve for the business component to join List<String>
<siebel:join-condition> Map containing the join condition for the business object. The structure is (key[field in object1], value[field in object 2]) Map<String, String>
Returns
Return Type Description
List<Map<String, Object>> list of maps with the components values
Exception Payloads
Payload ClassDescription
SiebelException when the service fails

<siebel:update-business-component>

Updates Siebel business component from values map

XML Sample
INCLUDE_ERROR

Attributes
NameDefault ValueDescriptionJava TypeMIME TypeEncoding
config-ref Optional. Specify which configuration to use.
businessObjectComponentType Siebel's business object component type String */* UTF-8
viewMode 3 Optional. Siebel business component view mode Integer */*
Connection Parameters
This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation.
user Optional. Siebel username String */* UTF-8
password Optional. Siebel password String */* UTF-8
server Optional. Siebel server String */* UTF-8
port 2321 Optional. Siebel port String */* UTF-8
serverName Optional. Siebel Enterprise server name String */* UTF-8
objectManager Optional. Siebel Object Manager String */* UTF-8
language ENU Optional. Connection language String */* UTF-8
fileEncoding utf8 Optional. Connection file encoding String */* UTF-8
Child Elements
NameDefault ValueDescriptionJava Type
<siebel:search-spec> Map containing the spec for searching business components to update Map<String, String>
<siebel:business-component-fields> #[payload] Optional. Map with the list of values to be updated in the component Map<String, Object>
Returns
Return Type Description
UpdateResult true if operation was successful
Exception Payloads
Payload ClassDescription
SiebelException when the service fails

<siebel:upsert-business-component>

Creates or updates a business component depending if it exists or no. For checking if the record exists, it queries Siebel taking into account the list of idfields. If the list is null, it will take the Id field from the business component fields map.

XML Sample
INCLUDE_ERROR

Attributes
NameDefault ValueDescriptionJava TypeMIME TypeEncoding
config-ref Optional. Specify which configuration to use.
businessObjectComponentType Siebel's business object component type String */* UTF-8
viewMode 3 Optional. Siebel business component view mode Integer */*
Connection Parameters
This are only required if you didn't specified them at the configuration element. They are also useful for overriding the values of the configurations or even if you need to extract them from the Mule message since they support expression evaluation.
user Optional. Siebel username String */* UTF-8
password Optional. Siebel password String */* UTF-8
server Optional. Siebel server String */* UTF-8
port 2321 Optional. Siebel port String */* UTF-8
serverName Optional. Siebel Enterprise server name String */* UTF-8
objectManager Optional. Siebel Object Manager String */* UTF-8
language ENU Optional. Connection language String */* UTF-8
fileEncoding utf8 Optional. Connection file encoding String */* UTF-8
Child Elements
NameDefault ValueDescriptionJava Type
<siebel:business-component-fields> #[payload] Optional. Map with the list of values to be updated in the component Map<String, Object>
<siebel:id-fields> Optional. List of fields to be taken as identifiers of the record to analyze if it should be created or not List<String>
Returns
Return Type Description
UpsertResult id of the created or updated business component
Exception Payloads
Payload ClassDescription
SiebelException when the service fails

Message Sources

Transformers