All docs This doc

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Table of Contents
maxLevel3
minLevel3
styleborder:1
locationtop
typeflat
separatorpipe

...

XML

...

configuration
Anchor
XML Configuration
XML Configuration

Info
titleNote

You can configure the Address Endpoint using XML. Click on the "Switch to source view" link in the "Address Endpoint" page.

Code Block
languagehtml/xml
<address uri="endpoint address" [format="soap11|soap12|pox|rest|get"] [optimize="mtom|swa"]
    [encoding="charset encoding"]
    [statistics="enable|disable"] [trace="enable|disable"]>

    <enableRM
[policy="key"]/>?
    <enableSec [policy="key"]/>?
    <enableAddressing [version="final|submission"] [separateListener="true|false"]/>?

    <timeout>
        <duration>timeout duration in milliseconds</duration>
        <responseAction>discard|fault</responseAction>
    </timeout>?

    <markForSuspension>
        [<errorCodes>xxx,yyy</errorCodes>]
        <retriesBeforeSuspension>m</retriesBeforeSuspension>
        <retryDelay>d</retryDelay>
    </markForSuspension>

    <suspendOnFailure>
        [<errorCodes>xxx,yyy</errorCodes>]
        <initialDuration>n</initialDuration>
        <progressionFactor>r</progressionFactor>
        <maximumDuration>l</maximumDuration>
    </suspendOnFailure>
</address>

Address

...

endpoint attributes

Attribute

Description

uri

EPR of the target endpoint.

format

Message format for the endpoint.

optimize

Method to optimize the attachments.

encoding

The charset encoding to use for the endpoint.

statistics

This enables statistics for the endpoint.

trace

This enables trace for the endpoint.

UI Configuration

1. In the "Add Endpoint" tab, click "Address Endpoint" (See Adding an Endpoint). The "Address Endpoint" page appears with its default view.

Address EndpointImage Removed

The following fields are specific to the Address Endpoint:

  • Name - The unique name of the endpoint.
  • Address - The URL of the endpoint.
Info
titleTip

You can test the availability of the given URL on the fly by just clicking the "Test" button.

2. In case you want to configure the advanced options, click on the "Show Advanced Options" drop down pane.

Image Removed

3. Then the page with all the available Address Endpoint options appears.

Image Removed

4. Specific Address Endpoint details are as follows:

  • Format- The message format for the endpoint. The available values are:Leave As-Is - No transformation is done to the outgoing message.
    • SOAP 1.1 - Transforming message to SOAP 1.1.
    • SOAP 1.2 - Transforming message to SOAP 1.2.
    • Plain Old XML (POX) - Transforming to plain old XML format.
    • Representational State Transfer (REST) - Transforming to HTTP Get Request.
    • GET
  • Optimize- Optimization for the message, which transfers binary data. The available values are:
    • Leave As-Is - No special Optimization. Keep the original message.
    • SwA - Optimized as a SwA (SOAP with Attachment) message.
    • MTOM - Optimized as a MTOM (message transmission optimization mechanism).
Info
titleNote

The rest of the fields are general for Address, WSDL, Default endpoints. See the description of common options in Adding an Endpoint.

QoS for the Endpoint

...

Other elements

QoS for the endpoint

QoS (Quality of Service) aspects such as WS-Security and WS-Addressing may be enabled on messages send sent to an endpoint using enableRM, using enableSec and  and enableAddressing elements elements. Optionally, the WS-RM and WS-Security policies could be specified using the policy attribute attribute.

QoS

...

enableRM [policy="key"]

...

configuration

enableSec [policy="key"]

This enables WS-Security for the message which goes for is sent to the endpoint. The optional policy attribute specify specifies the WS-Security policy.

enableAddressing [version="final | submission"] [seperateListener=" true | false"]

This enables WS-Addressing for the message which goes for is sent to the endpoint. User can specify to have separate listener with version final or submission.

Endpoint timeout

The parameters available to configure an endpoint time out are as follows.

duration

Timeout

...

duration that should elapse before the end point is timed out.

responseAction

This parameter is used to specify the action to perform once an endpoint has timed out. The available options are as follows.

  • discard: If this is selected, the responses which arrive after the endpoint has timed out will be discarded.
  • fault: If this is selected, a fault is triggered when the endpoint is timed out.
Tip

You can specify a value that is 1 millisecond less than the time duration you specify for the endpoint time out for the synapse.timeout_handler_interval

...

property

...

Info
titleNote

A lesser value may have a higher overhead on the system.

Timeout Configuration

duration

Timeout duration in milliseconds.

action

Once a timeout occurs the action to perform, available options are discard (discard the response which arrives late) or fault (trigger a fault) .

Marking Endpoint for Suspension

As described before (see description on Timeout state above) this configuration element describes the configuration for a timeout endpoint.

markForSuspension Configuration

errorCodes

A comma separated error code list which can be returned by the endpoint

in the <ESB_Home>/repository/conf/synapse.properties file. This would minimise the number of late responses from the backend.

Marking an endpoint for suspension

The markForSuspension element contains the following parameters which affect the suspension of a  endpoint which would be timed out after a specified time duration.

errorCodes

This parameter is used to specify one or more error codes which can cause the endpoint to be marked for suspension when they are returned by the endpoint. Multiple error codes can be specified separated by comas. See SynpaseConstant class for a possible list of available error codes.

retriesBeforeSuspension

Number of retries before go into suspended state.

The number of times the endpoint should be allowed to retry sending the response before it is marked for suspension.

retryDelay

The delay between each try.

Suspending

...

the endpoint on

...

failure 
Anchor
Suspending Endpoint on Failure
Suspending Endpoint on Failure

Leaf endpoints(Address and WSDL) endpoint can be put into suspended state if it is they are detected as failed endpoints. An endpoint that fails may be suspended When an endpoint is in in suspended state for a specified time duration after such following a failure, during which it cannot process any new messages will not be processed through the endpoint. The amount of time waiting before next attempt follows the following formulafollowing formula determines the wait time before the next attempt.

next suspension time period = Max (Initial Suspension duration * (progression factor*  try count *), Maximum Duration)

All the variables in the above formula are configuration values used to calculate the try count. Try count means, how many tries occurred is the number of tries carried out after the endpoint is "Suspended". As suspended. The increase in the try count increases, causes an increase in the next suspension time period will also increase. This increase time period is bound to a maximum duration

The parameters available to configure a suspension of an endpoint due to failure are as follows.

Parameter Name

...

Description
errorCode

A comma separated error code list which can be returned by the endpoint.

initialDuration

Initial duration(in milliseconds) to suspend the endpointThis parameter is used to specify one or more error codes which can cause the endpoint to be suspended when they are returned from the endpoint. Multiple error codes can be specified, separated by commas.

initialDurationThe number of milliseconds after which the endpoint should be suspended when it is being suspended for the first time.
progressionFactorThe progression factor for the geometric series. See the above formula for a more detailed description.
maximumDuration

Maximum The maximum duration (in milliseconds) to suspend the endpoint.

Following are the sample address URI

...

definition.

Transport

Sample Address

HTTP

http://localhost:9000/services/SimpleStockQuoteService

JMS

jms:/SimpleStockQuoteService?
transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactory&
java.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactory&
java.naming.provider.url=tcp://localhost:61616&
transport.jms.DestinationType=topic

Mail

[email protected]

VFS

vfs:file:///home/user/directory\ vfs:file">file:///home/user/file\ vfs:

FIX

fix://host:port?BeginString=FIX4.4&SenderCompID=WSO2&TargetCompID=APACHE

UI configuration

The following page is opened by clicking Address Endpoint in the Add Endpoint tab of the Manage Endpoints page.

Image Added

The parameters available to configure the endpoint are as follows.

Parameter NameDescription
NameThe unique name of the endpoint.
AddressThe URL of the endpoint. You can test the availability of the given URL by clicking Test.
Show Advanced Options

This section is used to enter advanced settings for the endpoint. The advanced options specific for the Address endpoint are as follows.

  • Format- The message format for the endpoint. The available values are as follows.
    • Leave As-Is: If this is selected, no transformation is done to the outgoing message.
    • SOAP 1.1: If this is selected the message is transformed to SOAP 1.1.
    • SOAP 1.2: If this is selected the message is transformed to SOAP 1.2.
    • Plain Old XML (POX): If this is selected the message is transformed to plain old XML format.
    • Representational State Transfer (REST) - If this is selected, the message is transformed to REST.
    • GET: If this is selected, the message is transformed to a HTTP Get Request.
  • Optimize- Optimization for the message, which transfers binary data. The available values are as follows.
    • Leave As-Is - If this is selected, there will be no special optimization. The original message will be kept.
    • SwA - If this is selected, the message is optimized as a SwA (SOAP with Attachment) message.
    • MTOM - If this is selected, the message is optimized using a MTOM (message transmission optimization mechanism).
Info
titleNote

The rest of the advanced options are common for Address, WSDL, Default endpoints. See the description of common options in Managing Endpoints.

Add PropertyThis section is used to add properties to an endpoint.
Excerpt
hiddentrue

Description of the Address Endpoint in WSO2 ESB.