This site contains the documentation that is relevant to older WSO2 product versions and offerings.
For the latest WSO2 documentation, visit https://wso2.com/documentation/.

FIX Transport

FIX (Financial Information eXchang) transport implementation is a module developed under the Apache Synapse project. This transport is mainly used with WSO2 ESB in conjunction with proxy services. Class org.apache.synapse.transport.fix.FIXTransportListener acts as the transport receiver whereas the org.apache.synapse.transport.fix.FIXTransportSender acts as the transport sender implementation. These classes can be found in the synapse-fix-transport.jar file. The transport implementation is based on Quickfix/J open source FIX engine and hence the following additional dependencies are required to enable the FIX transport.

  • mina-core.jar
  • quickfixj-core.jar
  • quickfixj-msg-fix40.jar
  • quickfixj-msg-fix41.jar
  • quickfixj-msg-fix42.jar
  • quickfixj-msg-fix43.jar
  • quickfixj-msg-fix44.jar
  • slf4j-api.jar
  • slf4j-log4j12.jar

Download Quickfix/J and in the distribution archive you will find all the dependencies listed above. Also please refer to Quickfix/J documentation on configuring FIX acceptors and initiators.

FIX transport does not support any global parameters. All the FIX configuration parameters should be specified at service level.

Service Level FIX Parameters

Parameter Name

Description

Requried

Possible Values

Default Value

transport.fix.AcceptorConfigURL

URL to the Quickfix/J acceptor configuration file (see notes below).

Required for receiving messages over FIX

A valid URL


transport.fix.InitiatorConfigURL

URL to the Quickfix/J initiator configuration file (see notes below).

Required for sending messages over FIX

A valid URL


transport.fix.AcceptorLogFactory

Log factory implementation to be used for the FIX acceptor (Determines how logging is done at the acceptor level).

No

console, file, jdbc

Logging disabled

transport.fix.InitiatorLogFactory

Log factory implementation to be used for the FIX acceptor (Determines how logging is done at the acceptor level).

No

console, file, jdbc

Logging disabled

transport.fix.AcceptorMessageStore

Message store mechanism to be used with the acceptor (Determines how the FIX message store is maintained).

No

memory, file, sleepycat, jdbc

memory

transport.fix.InitiatorMessageStore

Message store mechanism to be used with the initiator (Determines how the FIX message store is maintained).

No

memory, file, sleepycat, jdbc

memory

transport.fix.ResponseDeliverToCompID

If the response FIX messages should be delivered to a location different from the location the request was originated use this property to set the DeliverToCompID field of the FIX messages.

No



transport.fix.ResponseDeliverToSubID

If the response FIX messages should be delivered to a location different from the location the request was originated use this property to set the DeliverToSubID field of the FIX messages.

No



transport.fix.ResponseDeliverToLocationID

If the response FIX messages should be delivered to a location different from the location the request was originated use this property to set the DeliverToLocationID field of the FIX messages.

No



transport.fix.SendAllToInSequence

By default, all received FIX messages (including responses) will be directed to the in sequence of the proxy service. Use this property to override that behavior.

No

true, false

true

transport.fix.BeginStringValidation

Whether the transport should validate BeginString values when forwrding FIX messages across sessions.

No

true, false

true

transport.fix.DropExtraResponses

In situation where the FIX recipient sends multiple responses per request use this parameter to drop excessive responses and use only the first one.

No

true, false

false

Please refer WSO2 ESB samples 257 and 258 for more details on using the FIX transport in practice.