This documentation is for WSO2 Enterprise Service Bus version 4.7.0 . View documentation for the latest release.

Versions Compared

Key

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

...

  • You will need the two sample FIX applications that come with Quickfix/J (Banzai and Executor). Configure the two applications to establish sessions with Synapse.
  • Add the following lines to the Banzai configuration file (banzai.cfg)line to the fix-synapse-m40.cfg and synapse-sender-m.cfg configuration files.
Code Block
DataDictionary=~/etc/spec/FIX40-synapse.xml
Info
titleNote

FIX40-synapse.xml can be found at $ESB_HOME/repository/samplesssamples/resources/fix. This is a custom FIX data dictionary file that has added tag 150,151 to the execution messages (35=8) of FIX4.0. Make sure the DataDictionary property of the banzai.cfg points to this data dictionary file.

...

  • Start Banzai and Executor using the custom configuration files.
  • Enable FIX transport in the Synapse axis2.xml.
  • Configure Synapse for FIX samples. We will be using two custom configuration files for Synapse in this sample. These two custom configuration files can be found at ESB_HOME/repository/confsamples/sample/resources/fix directory. The two files are called fix-synapse-m40.cfg and synapse-sender-m.cfg. You can point your Synapse configuration to these two files (this is already done in the supplied synapse_sample_261.xml file) or you may create copies of them and point the Synapse configuration to the copies. In either case, make sure that the properties like FileStorePath and FileLogPath in the two files point to valid locations in your local file system.
  • Open up the $ESB_HOME/repository/samples/synapse_sample_261.xml file and make sure that transport.fix.AcceptorConfigURL property points to the fix-synapse-m40.cfg file described above and transport.fix.InitiatorConfigURL points to the synapse-sender-m.cfg file described above. Once done you can start the Synapse configuration numbered 261: i.e. wso2esb-samples.sh -sn 261

    Info
    titleNote

    Synapse creates a new FIX session with Banzai at this point.

  • Send an order request from Banzai to Synapse. For example, Buy DELL 1000 @ MKT.
Code Block
languagehtml/xml
linenumberstrue
<definitions xmlns="http://ws.apache.org/ns/synapse">
     <proxy name="OrderProcesserProxy41" transports="fix">
        <target>
           <endpoint>
              <address uri="fix://localhost:19877?BeginString=FIX.4.1&SenderCompID=SYNAPSE&TargetCompID=EXEC"/>
           </endpoint>
           <inSequence>
				<log level="full"/>
		   </inSequence>
           <outSequence>
				<log level="full"/>
				<send/>
		   </outSequence>
        </target>
        <parameter name="transport.fix.AcceptorConfigURL">file:repository/confsamples/sample/resources/fix/fix-synapse-m40.cfg</parameter>
        <parameter name="transport.fix.AcceptorMessageStore">file</parameter>
        <parameter name="transport.fix.InitiatorConfigURL">file:repository/confsamples/sample/resources/fix/synapse-sender-m.cfg</parameter>
        <parameter name="transport.fix.InitiatorMessageStore">file</parameter>
     </proxy>
</definitions>

...

You can pass the new configuration file as a command line parameter too, in that case you do not need to modify the quickfixj-examples.jar. You can copy the config files from $ESB_HOME/repository/confsamples/sample/resources/fix folder to $QFJ_HOME/etc folder. Execute the sample apps from $QFJ_HOME/bin, ./banzai.sh/bat ../etc/banzai.cfg executor.sh/bat ../etc/executor.shcfg.

Locate and edit the FIX configuration file of Executor to be as follows. This file is usually named executor.cfg.

...