How to upgrade FEJ to a new version
It is very simple to upgrade FEJ. First, download the new version of FEJ and unzip it (see Quick Start). Then, replace all files and directories in your FEJ home directory, except for the /conf directory. All custom user configurations are saved in /conf, therefore the upgrade will not affect personal settings.
How to configure session schedule that can't be defined via single cron-expression
FIXEdge Java 1.8.0 and earlier doesn't support several schedules for the session. So there is a limitation preventing creating a session schedule requiring multiple cron expressions.
For example, the session should have the next maintenance windows:
- Saturday: 6PM – 7PM ET
- Sunday: 10AM – 11AM ET
- Sunday: 6PM – 7PM ET
To achieve this, the user can configure a weekly session with start at 7 PM Sun and stop at 6 PM Sat. And cover the rest time intervals via external tools and scripts (FIXEdge JAVA administration shell CLI) that can start the session remotely.
FIXEdge Java Administrative shell requests passing of a password to it.
Before using it as part of the script, the user should at least once connect to the administrative shell and save SSH keys and insert a password manually.
Crontab scripts examples for credentials:
- username - test
- password - test
- remote host - fixedgej.sever.com:2000
- session name - session1
It is needed to add two additional commands to the crontab that will start the session at 7 PM Sat and 11 AM Sun:
It is needed to add two additional commands to the crontab that will stop the session at 11 AM Sun and 6 PM Sun
Optionally for the Windows remote host, you can use the plink tool (which is part of the PuTTY package):
How to configure Echo between FIXEdge Java and Simple Client
Echo configuration between FIXEdge Java and Simple Client is performed in the following way:
- Install FIXEdge Java.
Create a new file fixedgej-x.x.x\conf\session\s_fix_TestEchoAcceptor.properties for add session TestEchoAcceptor.
Configure session parameters there:
Configure BL rules in fixedgej-x.x.x\conf\rules.groovy
The session-id value in the rule
"TestEchoAcceptor"is the same as the ID in the s_fix_TestEchoAcceptor.properties session configuration file.
- Run FIXEdge Java.
For example, via the run script:
- Windows: Go to the FIXEdge Java installation dir fixedgej-x.x.x\bat\ and run the runConsole.bat script.
- Linux: Go to the FIXEdge Java installation dir fixedgej-x.x.x/bin and run the runConsole.sh script.
Open FIX Client Simulator.
Create a new session as Initiator:
The default port for session acceptors is 8911 and specified as the server.port parameter in the fixedge.properties file.
NOTE: SenderCompID on the FCS side should have the same value as TargetCompId on the FIXEdge side. TargetCompId on the FCS side should be the same as SenderCompID on FIXEdge side.
Send the message from FIX Client Simulator (Pipe character is used to represent SOH character).
The file contains SOH symbols: NewOrderEchoTestMessage.txt
The Echo message from FIXEdge is received.