Installation & Uninstallation

Requirements & Compatibility

Supported operating systems: Any OS with JRE 5.0 or above installed.

Application license installation.

FIX Antenna requires a license file (fixaj2-license.bin) for its work. If you have no license, please contact us at sales@btobits.com. If you have the FIX Antenna license, put it please into one of the following places:

  1. in application CLASSPATH;
  2. in application working directory;
  3. in user home directory.

Environment configuration.

Administrative module of FIX Antenna java requires JAXB 2.2 API. Corresponding library incuded into package. But earlier updates of JavaSE 6 (till update 3) comes with JAXB 2.0 API in rt.jar. This causes conflicts on these versions. To avoid this it requires to override a portion of rt.jar with the new API. There are several ways to do this: 1. Place the jaxb-api-2.2.jar into $JRE_HOME/lib/endorsed. This essentially makes your JRE to "JRE 6 + JAXB 2.2". 2. Use the system property java.endorsed.dirs when you launch your application, and have it point to the directory that contains the jaxb-api-2.2.jar. This allows you use use correct JAXB 2.2 API without modifying the JRE. 3. Implement a custom ClassLoader and block delegation to javax.xml.bind package, so that code running inside this class loader will load the JAXB API from elsewhere. This is a very advanced approach.

See the endorsed directory mechanism for more details.

Functional Matrix


FIXAJ Demo
FIXAJ Full
FIXAJ Addons
ICE Adaptor
CME iLink Adaptor
MEFF Adaptor
FIXML Convertor
FIXAJ + FIXML Convertor CME Fast Adaptor JMS Adaptor
FIX Engine

FIX 4.0 - FIX 4.4
+
+
+ + +
+
+

FIX 5.0
+ +
+ + +
+
+

FIX 5.0 SP1
+ +
+ + +
+
+

FIX 5.0 SP2
+ +
+ + +
+
+

Custom messages and fields support
+ +
+ + +
+
+

Multiple FIX sessions
+ +
+ + +
+
+

Iniciator/Acceptor Sessions
+ +
+ + +
+
+

Autoreconect Session
+ +
+ + +
+
+

Support SSL (compatible with openssl)
+ +
+ + +
+
+

Transient Sessions
+ +
+ + +
+
+

Restore state after failure (Persistent Session)
+ +
+ + +
+
+

Switch to backup connection
+ +
+ + +
+
+

Pluggable session level
+ +
+ + +
+
+

Administrative Plugin for FIXAJ
+ +
+


+
+

Adaptor for FIXAJ 1.X
+ +




+
+

Message Object Model

+ +







ICE customization



+






CME iLink customization




+





MEFF FIX 5.0.SP2 customization





+



Message Vallidation

Wellformeness Validation

+ + + + +


+

Allowed Fields Validation

+ + + + +


+

Required Fields Validation

+ + + + +


+

Fields Order Validation

+ + + + +


+

Duplicate Fields Detection

+ + + + +


+

Field Type Validation

+ + + + +


+

Groups Validation

+ + + + +


+

Conditional Fields Validation

+ + + + +


+
FIXML Converter

FIXML for FIX 4.1- FIX 4.4






+ +


FIXML for FIX 5.0






+ +


FIXML for FIX 5.0 SP1






+ +


FIXML for FIX 5.0 SP2






+ +


FIX-to-FIXML convertation






+ +


FIXML-to-FIX convertation






+ +

FAST

FAST 1.1








+

FIX-over-FAST








+

CME FAST








+
JMS

Support for JMS queues









+

Bidirect FIX-to-JMS routing server









+

Customizable JMS message









+

Packages structure description

FIXAJ Full

Fully functional FIX engine.
The package includes a top-level directory fixaj-engine-full-N.N.N with the following content:

FIXAJ Addons

Validation and Message Object Model for FIX Antenna.
The package includes a top-level directory fixaj-engine-full-N.N.N with the following content:

ICE Adaptor

FIX Antenna Solution for ICE Trade Capture. This package contains console and GUI tools for communicating with ICE Trade Capture interface.
The package includes a top-level directory fixaj-iceadaptor-N.N.N with the following content:

CME iLink Adaptor

FIX Antenna Solution for iLink Capture. This package contains libraries for communicating with iLink Trade Capture interface.
The package includes a top-level directory fixaj-cmeilinkadaptor-N.N.N with the following content:

MEFF Adaptor

FIX Antenna Solution for MEFF. This package contains libraries for communicating with MEFF interface.
The package includes a top-level directory fixaj-meffadaptor-N.N.N with the following content:

FIXML Convertor

A set of FIX Antenna related libraries for converting FIX to FIXML and back.
The package includes a top-level directory fixaj-fixmlconverter-N.N.N with the following content:

JMS Adaptor

Adaptor which helps to link FIX Antenna and Java Message Service. The package also contains a server for routing FIX messages to and from JMS server.
The package includes a top-level directory fixaj-jmsadaptor-N.N.N with the following content:

Samples descriptions

Samples is a set of small applications accompanied with sources that demonstrate the usage of the core FIX Antenna functionality.

Simplest FIXAJ Samples

CreateMessage

This sample demonstrates how to create a message object easily with FIX Messaging API.

Structure:

How to run:

FlatNewOrderSingleMessage

This sample demonstrates several ways to convert an existing string with a FIX message into its object representation.

Structure:

How to run:

NewOrderSingleMessage

This example demonstrates how to create a NewOrderSingle (D) message with object messaging model.

Structure:

How to run:

SimpleNewsBroadcaster

Simplest client application. It demonstrates how to create a FIX initiator session and send a News (B) message to server.

Structure:

How to run:

MaxSpeedBroadcaster

This sample demonstrates how to configure SimpleNewsBroadcaster sample for working with maximum throughput.

Structure:

How to run:

CustomProtocolBroadcaster

This sample demonstrates how to run SimpleNewsBroadcaster sample with customized FIX protocol.

Structure:

How to run:

SimpleAdminClient

This sample demonstrates how to connect to an administrative session and communicate with it using the implementation of administrative messages.

Structure:

How to run:

SimpleServer

This sample demonstrates how to implement a FIX server with simple IP filtering of incoming sessions.

Structure:

How to run:

SimpleServerWithAdminSession

This sample demonstrates how to run SimpleServer sample with enabled Administrative plugin.

Structure:

How to run:

SimpleServerWithCustomDic

This sample demonstrates how to run SimpleServer sample with customized FIX protocol.

Structure:

How to run:

PreconfiguredAcceptorSample

This sample demonstrates how to define acceptors sessions in configuration file.

Structure:

How to run:

PreconfiguredInitiatorSample

This sample demonstrates how to define initiator sessions in configuration file.

Structure:

How to run:


Advanced FIXAJ Samples

CustomSessionLevelBroadcaster

This sample demonstrates how to run SimpleNewsBroadcaster sample with customized session level. Redefine handlers for Resend Request(2) and Reject(3) messages in its configuration.

Structure:

How to run:

CustomStorageBroadcaster

This sample demonstrates how to implement and configure a custom storage mechanism for incoming messages (outgoing messages will be stored in the default way). Customization is based on SimpleNewsBroadcaster sample.

Structure:

How to run:

CustomSimpleMDServer

This sample demonstrates how to run SimpleServer sample with customized behaviour. For this sample was enabled custom storage and Resend Request(2) handler.

Structure:

How to run:


SSL Samples

SingleMessageSSLClient

This sample demonstrates how to configure SimpleNewsBroadcaster sample for working with SSL connection.

Structure:

How to run:

SimpleSSLNewsBroadcaster

A bit more complex than SingleMessageSSLClient sample with GUI elements. It demonstrates how to build the simplest GUI FIX client that can work under SSL.

Structure:

How to run:

SimpleSSLServer

This sample demonstrates how to build the simplest SSL FIX server. The sample is based on SimpleServer sample.

Structure:

How to run:

FlatOrderSender

This sample demonstrates how to send New Order message.

Structure:

How to run:

ModelOrderSender

This sample demonstrates how to send New Order message based on FIXAJ model API.

Structure:

How to run:

OrderFillerServer

This sample demonstrates how to build the simplest FIX server. The sample is based on SimpleServer sample.

Structure:

EncryptionSimpleServer

This sample demonstrates how to configure encryption FIX server. The sample is based on SimpleServer sample.

Structure:

How to run:

EncryptionSimpleNewsBroadcaster

This sample demonstrates how to connect to server via encryption session.

Structure:

How to run:


Validation Samples

SimpleValidator44

This sample demonstrates how to check a message for compliance with FIX 4.4 using FIX Antenna Validation module.

Structure:

How to run:

SimpleValidator50

This sample demonstrates how to check a message for compliance with FIX 5.0 using FIX Antenna Validation module.

Structure:

How to run:

AdditionalValidationSample44

This sample demonstrates how to customize validation in case of using customized FIX protocol.

Structure:

How to run:


FIXML Samples

FIX2FIXML

This sample demonstrates a simple way of converting a string with FIX message into its FIXML representation.

Structure:

How to run:

FIX2FIXMLWithCustomSerializer

This sample demonstrates how to convert a string with FIX message into its FIXML representation with custom XML processing.

Structure:

How to run:

FIXML2FIX

This sample demonstrates a simple way of converting a string with FIXML message into its FIX representation.

Structure:

How to run:

FIXML2FIXWithCustomParser

This sample demonstrates how to convert a string with FIXML message into its FIX representation with custom XML processing.

Structure:

How to run:


JMS Samples

FIXJMSAdpator

This sample demonstrates how to send and receive FIX messages via JMS Adaptor.

Structure:

How to run:

FIXJMSAdvancedAdpator

This sample demonstrates how to send and receive FIX messages via JMS Adaptor. FIXJMSAdvancedAdaptor hides accessing to JMS queues from you and makes it easier to initialize an adaptor.

Structure:

How to run:

iLink SimpleOrderSender

This sample demonstrates how to send and receive FIX messages with CME Ilink Adaptor.

Structure:

How to run:

MEFF SimpleOrderSender

This sample demonstrates how to send and receive FIX messages with MEFF Adaptor.

Structure:

How to run:

Benchmarks

FIX Engine Benchmarks

Latency

This benchmark sample measure latency for processing message inside FIX Engine. See more about measuring latency in corresponding section: Latency.

Structure:

How to run:

Throughput

This benchmark sample allows to measure throughput (how many messages per second can be sent). See more about measuring throughput in the corresponding section: Throughput.

Structure:

How to run:

Transaction

This benchmark sample measures how much time one transaction takes (sends a message and receives it). Messages are sent one by another.

Structure:

How to run:

Transaction Sequence

This benchmark sample measures how much time one transaction takes (sends a message and receives it). Messages are sent only after receiving the answer from a previous one.

Structure:

How to run:

FIX Message Parsing

This benchmark sample measures different operations with a FIX message:

Structure:

How to run:


Validation Benchmarks

Validation

This benchmark sample measures the time required to validate a complex message for compliance with FIX 4.4.

Structure:

How to run:


FIXML Benchmarks

FIXML benchmarks have 2 tests. They are similar from the first sight and differ only in FIX version of used protocol. This is because FIXML convertor has 2 different implementations for FIX 4.1-4.3 and for later versions. Such behaviour is predicted by means of FIXML description. Earlier versions descriptions are different and the converter was adopted to work with both meta-descriptions.

FIXML 4.1 Converter

This benchmark sample measures the time FIX message conversion into FIXML and back. The benchmark uses FIX 4.1 messages.

Structure:

How to run:

FIXML 4.4 Converter

This benchmark sample measures the time of FIX message conversion into FIXML and back. The benchmark uses FIX 4.4 messages.

Structure:

How to run:

Uninstallation instructions

To uninstall FIX Antenna simply remove the FIX Antenna directory from disk. It is recommended to keep the license file though.

Generated on Thu Sep 4 19:43:07 2014 for FIXAntennaJava by  doxygen 1.6.3