Common Components Configurations

 

Component Instance Properties

Properties. PAGEREF _Toc225143050 \h 2

Deployment PAGEREF _Toc225143051 \h 4

Execution PAGEREF _Toc225143052 \h 5

Log Module Instances. PAGEREF _Toc225143053 \h 7

Runtime Arguments. PAGEREF _Toc225143054 \h 8

Port Properties. PAGEREF _Toc225143055 \h 8

Input Port Properties. PAGEREF _Toc225143056 \h 8

JMS Destination. PAGEREF _Toc225143057 \h 9

Messaging. PAGEREF _Toc225143058 \h 9

Output Port Properties. PAGEREF _Toc225143059 \h 12

JMS Destination. PAGEREF _Toc225143060 \h 12

Messaging. PAGEREF _Toc225143061 \h 12

Preventing message loss. PAGEREF _Toc225143062 \h 13

Components with implicitly defined JMS messaging properties. PAGEREF _Toc225143063 \h 13

Managed Connection Factory. PAGEREF _Toc225143064 \h 14

SSL Security. PAGEREF _Toc225143065 \h 16

Interaction Configurations. PAGEREF _Toc225143066 \h 17

Scheduler Configurations. PAGEREF _Toc225143067 \h 19

Transport Configurations. PAGEREF _Toc225143068 \h 20

Error Handling. PAGEREF _Toc225143069 \h 21

Request Processing Error PAGEREF _Toc225143070 \h 21

Connection Error PAGEREF _Toc225143071 \h 23

Invalid Request Error PAGEREF _Toc225143072 \h 25

Retry Configuration. PAGEREF _Toc225143073 \h 25

Schema Editor PAGEREF _Toc225143074 \h 26

Schema Repository. PAGEREF _Toc225143075 \h 31

XPath Editor

 

This chapter describes the configurations that are common across a most of adapters. However, if there are any additional component specific details for any of the configurations which are not described here, such details can be found in that component help file.

Component Instance Properties

Component instance properties appear in the Properties pane when a component instance of an application is selected. Component instance properties for a SMTP component are shown in Figure 1.

Figure 1: Component instance properties for a SMTP component

TOP

Properties

This group contains general properties that identify the component instance or affect the appearance of the component instance.

Version

When there are multiple versions of a component with same GUID, the Version property determines the component that this instance represents.

Example: Web Service Consumer has two versions of components, version 4.0 and version 5.0. Version 4.0 uses axis API and version 5.0 uses axis2 API.

Note: It is recommended that the configuration of the component is compatible across versions when developing custom components.

Name

Name of the component instance in the application. This name should be unique in an application.

Short Description

A one line description for the component instance. This description is shown as tool tip for the component. By default, the value defined for short-description element in the component's Service Descriptor is shown here. If there is no value defined for this property, the default value is shown in tool tip.

Example: For a SMTP component that is configured to send mails using a Fiorano email account, the short description can be changed as shown in Figure 2 to give a more appropriate description.

Figure 2: Tool tip showing the changed Short description for SMTP component

Long Description

A detailed description about the component instance. By default, the value defined for long-description element in the component's Service Descriptor is shown here.

Icon

Icon to be used for the component instance in the application. Click the ellipses button  to browse the icon that should be used. Icon with size 32 X 32 is recommended. By default, the value defined for attribute large of icon element in the component's Service Descriptor is used. Removing the value specified against this property will restore the default icon.

Figure 3: SMTP component instance using a custom icon

Show Port Names

Names of ports for the component instance are shown if the value for this property is set to yes, otherwise the port names are hidden. When the port names are turned on at an application level, this property has no effect.

Note:

A floating note containing a custom message can be added to component as shown in Figure 4.

Figure 4: SMTP component with a note containing custom message

TOP

Deployment

This group contains properties that effect the way components are deployed in Fiorano environment.

Nodes

A delimited list of Peer Servers from Fiorano network on which this component instance is launched. The component is launched on the first Peer Server in the list that is available in Fiorano network. If the Peer Server on which the component instance is running shuts down, the component instance fails over to the next available Peer Server.

Click the ellipses button  to launch an editor to configure the Peer Servers as shown in Figure 5.

Figure 5: Editor to configure Peer Servers on which the component instance can launch.

Note the following:

Cache Component

The resources required for execution by the component instance are fetched from the Enterprise Server and cached on the Peer Server, if not already done, when the CRC (Check Resources & Connectivity) operation is performed.

A resource can be marked as required for execution in the Service Descriptor.

If the resources are not changed in the Enterprise Server, then they need not fetched every time the application is launched there by reducing the time taken to perform a CRC operation for the application.

The resources required for execution by the component instance are fetched from the Enterprise Server to the Peer Server every time the CRC operation is performed.

Note: If there are changes done to the component resources, this property should be set to no before performing the CRC operation and can be reset to yes later.

Version Locked

The component instance is launched with component version provided for property Version.

The component instance is launched with highest available component version at all times.

Configuration

The serialized configuration of the component instance. Any changes made to this are reflected when the component instance is launched or the CPS of the component instance is opened.

Note: It is recommended that the value for this property should not be changed manually.

TOP

Execution

This group contains properties that effect launch behavior of the component.

Launch Type

This property specifies how the component instance is launched. There are four possible values.

The component instance is launched in a separate JVM. It is automatically launched when the application is launched. When this option is selected properties Debug Mode and JVM_PARAMS are visible.

The component instance is launched in the JVM of the Peer Server. It is automatically launched when the application is launched. When this option is selected properties Debug Mode and JVM_PARAMS are not visible.

The component instance is not launched when the application is launched. It has to be launched manually from the command line.

To launch the component manually -

1.      Right click the component, select Execution from the pop-up menu and click Save Manual Launch Script... as shown in Figure 6.

Figure 6:  Saving launch script for manual launch

2.      Select the file to save the properties for manual launch and click Save.

3.      Follow the steps mentioned in the window that pops up to launch the component instance.

Figure 7:  Pop up window showing the steps for launching the component instance manually

4.      When this option is selected, properties Debug Mode is not visible and the value for property JVM_PARAMS is ignored.

If selected, the component instance is never launched. When this option is selected properties Debug Mode is not visible and the value for property JVM_PARAMS is ignored.

The boundary of the component is changed to provide a visual clue for the launch type. Figure 8 shows the change in the boundary of component instance for each launch type

Figure 8: Boundary of component instance with visual clue for launch type

Debug Mode

The component instance is launched in debug mode. A debugger from any IDE can be attached to the component instance to debug the component instance step by step at runtime. When this value is selected, the property Debug Port is visible.

The component instance is not launched in debug mode and a debugger cannot be attached. When this value is selected, the property Debug Port is visible.

This property is only used when the property Launch Type is set to Separate Process. To debug the component instance launched in the memory of Peer Server JVM, debug parameters have to be in the configuration file   %FIORANO_HOME%\esb\fps\bin\fps.conf of  the Peer Server.

Debug Port

The port on which the component waits for instructions from debugger.

When property Debug Mode is set to yes, then the property Debug Port is set to 5000. It is equivalent to launching the component with the following command line arguments.

-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5000

Note: The component instance can be alternatively launched in debug mode by specifying the required command line arguments in the property JVM_PARAMS.

TOP

Log Module Instances

This group contains different loggers that are used and their log level configuration.

All the loggers that are used by the component instance are shown as properties in this section. The level at which logging should be performed for each of the logger is defined. There are nine logging level available in the drop-down list Off, Severe, Warning, Config, Info, Fine, Finer, Finest, and All.

For information about log levels and the effect they have on logs generated, please refer to http://java.sun.com/j2se/1.4.2/docs/api/java/util/logging/Level.html.

The levels of all the loggers can be changed together by selecting required log level for the property All Modules.

TOP

Runtime Arguments

This group contains a single property JVM_PARAMS which contains all command line parameters that are passed to launch the component. This property is used only when the Launch Type of the component instance is set to Separate Process. Any system properties can be set using this property.

Example: To support regional language specific characters during HTTP transfer, character set encoding of the regional language has to be specified using the system property file.encoding. The system property can be provided as -Dfile.encoding=<required_encoding> for this property. If there are some other properties already defined, then the value to add should be appended to the existing value separated by a space.

TOP

Port Properties

Input Port Properties

Input port properties appear in the Properties pane when an input port of a component instance  is selected. Input port properties for a SMTP component are shown in Figure 9.

Figure 9: Input port properties for a SMTP component instance

The properties in the Authentication group are not used by pre-built components provided by Fiorano. However, they can be used in custom components.

TOP

JMS Destination

This group contains properties related to destinations created for the ports of the component.

Destination Type

Specifies whether the destination for the port is a Queue or a Topic. Visual representation of port is changed based on the type of the destination as shown in Figure 10. A square indicates a queue and a circle indicates a topic.

Figure 10: Input port as queue and as topic

Use Specified Destination

Destinations for each port in the application are created automatically and associated with a port when the application is launched. The destination name for destination created and associated to a port is constructed using the following function <Event Process GUID>__<Component instance name>__<Port name>

Example: If an Event Process whose GUID is SAMPLE_APP contains a SMTP component instance with name MAIL_SENDER. The destination created for the input port is SAMPLE_APP__MAIL_SENDER__IN_PORT.

However, if the destination to be used has to explicitly defined, then this property should be set to yes.

Destination Name

The name of topic or queue that has to be associated with the port. The destination is automatically created if it is not present.

TOP

Messaging

This group contains properties related to JMS messaging concepts. In general, pre-built components provided by Fiorano use a single connection and share same session for reading messages on input port and sending messages on the output port.

Transacted

Specifies whether the JMS session is transacted or not.

JMS session is created as a transacted session. Multiple input messages can be grouped into a single transaction. Messages are not sent on the output port of the component until the transaction is complete. They are held in-memory of the component. When this value is selected, property Transaction Size is visible.

JMS session is created as a non-transacted session. Messages are sent on the output port of the component immediately. When this value is selected, property Transaction Size is visible.

Note:

When the output of component is very large, it is not advised to set this property value to yes.

A transaction is based on the number of input messages processed and not based on the number of output messages sent. In cases, where a component sends a large number of output messages for each input request, it is not advised to set this property value to yes even if value for property Transaction Size is set to 1.

Example: A File Reader component reading a large binary file or a DB component that returns result set containing a large number of rows.

Transaction Size

Number of input messages that should be processed before committing the transaction.

Number of Sessions

Number of sessions that are created by the component instance to process messages received on the input port. Messages are processed in a separate session by each thread. This property is used to increase the number of threads that can process the requests and thereby increase the through put. However, the number of threads that can at a time is restricted by Max Pool Size property in Connection Pooling Configuration panel.

Acknowledgement Mode

Specifies the acknowledgement mode that is used to acknowledge messages. Messages are not deleted from destinations until they are acknowledged. When the component fails over because of the HA fail over of Peer Server, all the messages that are not acknowledged are redelivered. The number of duplicate messages in case of fail over can be controlled using this property.

DUPS_OK_ACKNOWLEDGE

Messages are acknowledged after configured number of messages are successfully processed and output messages are sent by the component instance. The number of messages after which the messages are acknowledged can be configured at the following node in FMQ profile Fiorano > mq > pubsub > TopicSubSystem > DupsOkBatchSize. Number of duplicate messages is utmost the DupsOkBatchSize for each session on each input port of the component instance.

AUTO_ACKNOWLEDGE

Messages are acknowledged after a message is successfully processed and the output message is sent by the component instance. Hence, number of duplicate messages is utmost 1 for each session on each input port of the component instance.

CLIENT_ACKNOWLEDGE

Pre-built components provided by Fiorano do not support this mode of acknowledgement.

This property is ignored if the property Transacted is set to yes. When the property Transacted is set to yes, messages are acknowledged when the transaction is committed. Hence, number of duplicate messages is utmost the  number denoted by property Transaction Size for each session on each input port of the component instance.

Durable Subscription

Specifies whether a durable subscriber is created on the destination represented by the input port or not. This property is visible only when value for the property Destination Type is set to Topic.

A durable subscription is created to the topic represented by the input port.

Messages sent to the topic are not lost when the component fails over because of the HA fail over of Peer Server.

If selected, then the property Subscription Name is visible.

A durable subscription is created to the topic represented by the input port.

Messages sent to the topic may be lost when the component fails over because of the HA fail over of Peer Server.

Note:

If the Destination Type is Queue, then messages are not lost when the component fails over because of the HA fail over of Peer Server.

Following components do not create durable subscriptions and hence have to use only queues as input ports Aggregator, Chat, Display, HTTPReceive, HTTPStub, Join, SAPR3Monitor, Sleep, WSStub, and XMLVerification.

Subscription Name

Subscription name that should used be when creating a durable subscriber. This should be a unique name for the Peer Server on which the component instance is running.

Client ID

Unique ID for the JMS connection created by this port.  This property is not used by pre-built components provided by Fiorano as there is only one connection created for each component instance.

Message Selector

Specifies a condition (JMS Message Selector) to select only a particular set of messages. For information on message selectors, refer to Message Selectors section in the link http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/jms/Message.html.

TOP

Output Port Properties

Output port properties appear in the Properties pane when an output of a component instance  is selected. Output port properties for a SMTP component are shown in Figure 11.

Figure 11: Input port as queue and as topic

The properties in the Authentication group are not used by pre-built components provided by Fiorano. However, they can be used in custom components.

TOP

JMS Destination

This group contains properties related to destinations created for the ports of the component. For more information, refer to section JMS Destination under Input Port Properties.

TOP

Messaging

Time to Live

Specifies the time in milliseconds for which the message is available from the system after it is sent from the producer. The message is discarded on the expiration of this time. 0 (zero) milliseconds indicate infinite life time.

Example: Consider an application contains four component instances. Value for this property is set to 30000 milliseconds on the output port of the first component instance. This means, once the message is sent on the output port of first component instance, the message should be consumed by the fourth component instance in 30 seconds. If it is not consumed in 30 seconds, then the message will be lost and will never reach the fourth component.

Client ID

Unique ID for the JMS connection is created by this port. This property is not used by pre-built components provided by Fiorano as there is only one connection created for each component instance.

Message Priority

The priority of the message sent, can be any integer value from 0 (zero - lowest) to 9 (nine - highest). The default priority is 4.

Persistent

Specifies whether the producer on this port sends persistent messages or not. If this property is set to yes, all messages are persisted to message store. If this property is set to no, the messages are not persisted and there may be message loss noticed during the HA fail over of the Peer Server.

TOP

Preventing message loss

To avoid message loss in Fiorano Event Processes, change the following properties -

1.      On each output port, set value of property Persistent to yes.

2.      On each route, set value of property Durable to yes.

3.      On each input port that is a topic, set value of property Durable Subscription to yes.

4.      Whenever a JMS* component is used, make sure all messages sent are persistent and all subscriptions to topics are durable. These properties can be set in CPS of JMS components.

TOP

Components with implicitly defined JMS messaging properties

Some of the less used components in Fiorano have Acknowledgement Mode, Transaction Type and Transaction Size implicitly defined and will not pick the values from input port.

TOP

Managed Connection Factory

Connection Pool Params

Defines the connection pool settings for the component. Creating a connection to external systems like Database or FTP Server or HTTP Server is typically a resource extensive and time consuming process. Configuring a connection pool reduces the overhead of creating a connection on each request.

Click the ellipses button  to launch an editor to configure connection pool parameters as shown in Figure 12

Figure 12: Connection pool configurations

If this property is selected, the connections created are cached in a pool for subsequent use. When the connection pool is disabled it implies that the connection should not be cached and a new connection will be created for each request.

Enabling connection pool property will reduce the time spent in creating a new connection for every input request.

Properties Max Pool Size, Blocking Timeout and Idle Timeout are enabled only when this property is selected.

The maximum number of connections that can be cached in the pool.

The time in milliseconds after which the call to fetch a connection from the pool will timeout, if there is no unused connection available. Connection will not be created after timeout.

The time in minutes after which the idle connections are returned to the pool.

Proxy Settings

Click the ellipses button  to launch an editor to configure proxy configurations as shown in Figure 13.

Figure 13: Proxy configurations

Use Proxy Server

Select this option if the connection has to be established using a proxy server. Properties Proxy Address, Port Number, Username, Password and SOCKS Proxy.

The IP address or the host name of the machine where the proxy server is running.

Port number on which the proxy server is running.

The user name with which the user can login to the proxy server.

Password for the user name provided.

Enable this property to use SOCKS protocol to connect to the proxy server.

TOP

SSL Security

Click the ellipses button  to launch an editor to configure SSL configurations as shown in Figure 14.

 

Figure 14: SSL configurations

Select this option to enable SSL Settings. Rest of the properties in this editor are enabled and configurable only when this property is checked.

Location of the trust store file. TrustStore is a file where digital certificates of trusted sites are stored and retrieved for authentication during an SSL connection. TrustStore is used to authenticate a server in SSL authentication.

Password of the specified trust store.

Location of the key store file. The KeyStore is used by the component for client authentication.

Password of the specified key store.

Type of the Key Store whose location is specified by  Key Store Location.

Type of Trust Store whose location is specified by property Trust Store Location.

Algorithm for the Trust Manager Factory.

Algorithm for the Key Manager Factory.

Determines Security provider class.

Determines Security protocol

Determines Key Store Client Key

Note: For more information on SSL Configurations, please refer to Section 3.12 Public Key, Cryptographic Keystore and Truststore in Fiorano SOA User Guide.

TOP

Interaction Configurations

Figure 15: Common configurations in Interaction Spec panel

Validate Input

The input is not validated and is directly processed by the component. Exception may occur while processing if the message is invalid.

The input is validated against the structure specified on the input port of the component. If it is not valid, exception occurs and further processing is not done.

Cleanup resources (excluding connection) after each document

A component creates various objects to process business logic. Some of these objects are connection objects or are related to connection where as other objects are not related to connection but are required to process business logic.  Holding these objects in-memory all the time will make lesser memory available that can be freed and deleting these objects to free up space results in higher processing time as the objects have to be recreated. Hence, the objects related to business logic can be removed from time to time.

When this option is selected, objects that are not connection related are destroyed and recreated for each request.

When this option is selected, objects that are not connection related are not destroyed and are reused for each request.

Note: When a connection object is destroyed all objects are recreated on subsequent request.

Target Namespace

Two or more XML schema having same namespace will cause problems if there are elements which are defined with same name. Schema set on the input and output ports of the component are in some created by the component. To avoid the clash of elements from different schema, the schema generated by the component use the value provided for this property to compute the namespace for input or output schema.

Monitoring Configuration

When monitoring is enabled for a component the following statistics are sent to FPS_USER_EVENTS_TOPIC at configured intervals of time

The minimum amount of time taken to process any message during the last publish interval.

The maximum amount of time taken to process any message during the last publish interval.

Number of messages processed during the last publish interval.

Rate at which messages are processed during the last publish interval.

Click the ellipses button  to launch an editor to configure monitoring configurations as shown in Figure 16.

Figure 16:  Monitoring configurations in Interaction Spec panel

Select the check box to enable monitoring for request execution time.

The time interval after which monitoring statistics are computed and sent.

To view the monitoring statistics in dashboard, open FES profile and navigate to FES > Fiorano > Esb > Events > FESEventsManager. Click on FESEventsManager and set the property ListenForUserEvents to yes in the properties window.

TOP

Scheduler Configurations

A component can be scheduled to execute fixed request at configured intervals of time. When the component is configured to run in scheduler mode the component will not have input port. However, messaging properties that are usually configured on the input port can be configured in Transport Configurations panel.

Figure 17: Scheduler configurations panel

Enable Scheduling

Select the check box to run the component in the scheduling mode.

Interval between polls

Specifies time interval between successive requests.

Number of polls

Number of times the input request is executed.

Infinite times

If this option is enabled, then the number of times the input request is executed will be infinite.

Start time

The polling start time. If the specified start time is earlier then the component start time, the first schedule will happen at the next scheduled time. For example, start time is 08:00:00, poll interval is 30 minutes, and component starts at 8:10:00, the first schedule will happen at 08:30:00.

Start date

The polling start date. If the specified start date is earlier then the component start date, then it will be ignored and input messages are sent at next scheduled date.

Use specified Input

Select the check box to configure input that is repeatedly executed.

Validate

Validates the specified input against the structure specified on the input port.

Generate Sample Input

Generates the sample input for the structure specified on the input port.

TOP

Transport Configurations

Transport Configurations panel is used to configure messaging properties when the component is configured in scheduling mode. These properties are configured on the input port when the component is not in scheduling mode.

Figure 18: Transport configurations panel

Output Transport

Click the ellipses button  to launch an editor for configuring transport properties. The properties in the editor are shown in Figure 19.

Figure 19: Transport properties

Valid values for this field are 1 to indicate AUTO_ACKNOWLEDGE, 2 to indicate CLIENT_ACKNOWLEDGE and 3 to indicate DUPS_OK_ACKNOWLEDGE. Any other value will throw an exception and component will not be started.

For information on acknowledgement modes, refer to section Acknowledgement Mode in Input Port Properties.

If this property is set to yes, then responses will be sent to JMSReplyTo port if it is present, else response is sent on the output port of the component.

For information on this property, refer to section Transacted in Input Port Properties.

For information on this property, refer to section Transaction Size in Input Port Properties.

TOP

Error Handling

Errors that occur in the component are classified into three categories Request Processing Error, Connection Error and Invalid Request Error. Actions that have to be taken when an error occurs are defined in the Error Handling panel.

Figure 20: Error handling

TOP

Request Processing Error

Request Processing Errors are categorized based on the following conditions -

Example: In case of FTPGet, a Request Processing Error occurs when the specified file (to be downloaded) in the input request is not present in FTP Server.

Figure 21: Available actions for Request Processing Error category

Remedial Actions

Actions that can be taken when a Request Processing Error occurs is shown in Figure 21.

The component will re-execute the input request if this option is enabled. Configuring for retries is explained in Retry Configuration section. This option should be enabled only for errors that can be rectified over time.

Example: Error in file reader because a file is not found. If the required file should be placed by another process, then the file not found error can be rectified over time and hence can be retried.

In some cases, a problem in the component which is not severe is treated as a warning. Such warnings are just logged by default. If this property is enabled, the component will treat such warnings as errors.

Example: When the FileReader is configured to read files with a particular pattern for file names, a warning is logged if there are no files whose names matches the configured pattern. If the FileReader is polling a directory, then it is an inherent assumption that files are not always present and hence treating it as warning is appropriate. But if the file reader is not in scheduler mode, then absence of files has to be treated as an error.

If this option is enabled, the component will send the error on the ON_EXCEPTION output port of the component. By default, ON_EXCEPTION port is present in all components that support error handling. If this option is unchecked, then the Retries before sending error property in Advanced Settings group is disabled.

The component is stopped when an error occurs if this action is enabled.

TOP

Connection Error

This property in Error Handling Panel will be visible only if the Managed Connection Factory panel is present. Presence of Managed Connection Factory implies that the component makes a connection to external system.

Example: Components like FileReader and FileWriter do not create any connections and hence they do not have this property in the CPS.

Errors that occur because of the connection to an external system cannot be made or because the connection to an external system is lost are categorized under the category Connection Error.

Example: Trying to connect to an external web site when the network connection is not active.

Figure 22: Available actions for Connection Error category

Remedial Actions

Actions that can be taken when a Connection Error occurs is shown in Figure 22.

The component removes the connection from the connection pool as soon as a connection error occurs. Subsequent request uses a new connection from the connection pool.

The component will re-execute the input request with a new connection, if this action is enabled. Configuring for retries is explained in Retry Configuration section.

The component will send the error on the ON_EXCEPTION output port of the component if this action is enabled. By default, ON_EXCEPTION port is present in all components that support error handling. If this option is unchecked, then the Retries before sending error property in Advanced Settings group is disabled.

The component is stopped when an error occurs if this action is enabled.

TOP

Invalid Request Error

Errors that occur when parsing the input request are categorized under Invalid Request Error.

Figure 23:  Available actions for Invalid Request Error category

Remedial Actions

The component will send the error on the ON_EXCEPTION output port of the component if this action is enabled. By default, ON_EXCEPTION port is present in all components that support error handling. If this option is unchecked, then the Retries before sending error property in Advanced Settings group is disabled.

If this property is not checked, when an invalid input is sent to the component, the component will be stopped immediately. By default this property is enabled.

Example: In case of SMTP, if the input message is not valid according to the schema set on its IN_PORT, an exception occurs and the component will be stopped only if this property is unchecked.

TOP

Retry Configuration

When Re-execute Request is enabled for Request Processing Error or when Try Reconnection is enabled for Connection Error, the Advanced Settings group containing configurations for retries is visible.

Time between retries(ms)

The time interval between two successive retries.

Number of retries

The number of times the component should retry the request. This property is enabled only if Infinite check box is unselected.

Infinite

If the check box is selected, the component will continuously retry the request until the request is process successfully. when this option is selected, the property Number of retries is disabled and its value is ignored.

Retries before sending error

This property is enabled only if Send To Error Port action is enabled. If Send To Error Port action is enabled and if the value for this component is a number n, then the component sends an error on the ON_EXCEPTION port after every n retries.

TOP

Schema Editor

Figure 24:  Schema Editor

Schema Editor is used to configure schemas that are required for the functionality of a component.

In general,

XSD Schema tab

XSD/DTD can be provided in the text area in the schema tab shown in figure 24. Schemas that are present on the file system can be loaded by clicking on Load button . This opens a file browser which enables navigation to the required schema on the file system. The file type can be chosen as XSD or DTD in the filechooser.

Root element can be selected by clicking on Select Root Element button . A list containing all the elements present in the schema will be displayed as shown in Figure 25. A root element (multiple root elements, in some cases) should be selected from that list of elements. The selected root element(s) will be displayed in the schema editor next to Select Root Element text.

Figure 25:  Selection of root element

XSD Structure tab

The structure tab displays a tree structure of the schema provided as shown in figure 26. The structure depends on root element.

Figure 26:  Structure of the schema when no Root Element is chosen

Figure 27:  Structure of the schema when Bookstore is chosen as Root Element

The structure of the entire schema is displayed if none of the root element is selected. If root element is selected (as Bookstore in the Figure 27), the structure of that element is displayed.

External XSDs tab

If there are any imported schemas in the schema provided in XSD-Schema tab, they can be resolved by adding them as the external XSDs here. Any number of external schemas can be added here.

Note: Imported schemas can also be resolved by adding the schemas in Schema Repository.

Schemas provided as external XSDs must have target namespace defined.

Click on the Add button to add the external schema. Select an option from Manual or Load from File.


 Figure 28: Adding external schema

After loading the schema in the text editor, click on Save button  to save the schema. The schema will be added to the list of external XSDs only when it is saved.

To remove a schema, select the corresponding namespace and click Remove button .

To view a schema, select the corresponding namespace and the schema can be viewed in the text editor.

Figure 29:  Configuring external schema

Clear

On clicking Clear button, the schema, external schemas, root element and structure present in the schema editor will be cleared.

Fetch from Connected Source

Figure 30: List of connected ports from which schema should be fetched

On clicking Fetch from Connected Source button, a list of ports (which have schema set on them) of the components connected to this component are displayed. Application Context of the event process is also listed, if defined. On selecting one of the ports or application context, the schema present will be set as schema in the schema editor.

TOP

Schema Repository

Schema Repository is used to store schemas that are imported in schemas used by different components/event processes. The imported schemas referred from anywhere in an Event Process/component can be stored here so that they are resolved even when they are not added explicitly. Hence, schemas which are imported across multiple event processes/components can be stored in the schema repository.

To add schemas to the Schema Repository, perform the following steps.

Figure 31: Schema repository editor

            Figure 32: Adding XSD to the schema repository

The values URI, Location, schema name will be automatically updated.

A new row specifying the URI and Location of the XSD will be added in the table.

             Figure 33: Removing XSD from the schema repository

TOP

XPath Editor

 

Figure 34: XPath Editor

XPath Editor can be used for specifying path expressions to identify nodes in an XML document and for specifying conditions. The list of elements from schema provided are shown in the left panel of the editor. An XPath Editor with sample schema is shown in Figure 34.

 

Figure 35: Adding a constant in XPath Editor

An element can be selected by simple drag and drop onto the right panel. An XPath expression may consist of different constant values, functions or/and operators. These can be added easily by right clicking on the right panel and selecting the option based on the requirement as shown in Figure 35.

Adding a Function: A function can be added either by right clicking on the right hand side panel --> Add Function or by selecting from the list available in the palette tab which is present in the left panel as shown in figure 36.

 

Figure 36: XPath Editor Palette containing different XPath functions

A string function matches which takes two arguments and returns a boolean value is shown in the Figure 36.

Adding a Constant value: Supported types of constants are String,Boolean,Numeric,Date-Time,Duration.

Example: Addition of a boolean value can be done as described below

Figure 37: Adding a boolean constant

Addition of a Operator:

Figure 38: Adding an operator

 

Figure 39: Add(+) operator

Figure 39 illustrates a sample Xpath expression using a + operator. It contains two numeric constant values which are passed as arguments to the operator.

TOP

Copyright © 1999-2008, Fiorano Software Technologies Pvt. Ltd. All rights reserved.

Copyright © 2008-2009, Fiorano Software Pty. Ltd. All rights reserved.

This software is the confidential and proprietary information of Fiorano Software ("Confidential Information"). You shall not disclose such Confidential Information and shall use it only in accordance with the terms of the license agreement enclosed with this product or entered into with Fiorano.