Closed GoogleCodeExporter closed 8 years ago
Thanks -- this is indeed a bug. The application is throwing an error if the
other custom fields are not present in the config file.
As a workaround, I suggest you add the other custom fields to your config and
give them empty values (note that RawDataLength must be less than 0):
[session]
BeginString=FIX.4.4
SocketConnectHost=90.151.253.32
SocketConnectPort=22372
SenderCompID=1027709-EUREX-T-SIMU-027
TargetCompID=EUREX
Username=
Password=FixForFes
RawData=
RawDataLength=-1
TestMessageIndicator=true
Original comment by jramoyo
on 1 Dec 2012 at 5:55
Fixed but won't be released until 2.1.
For now, apply the suggested workaround.
Original comment by jramoyo
on 1 Dec 2012 at 6:01
ok: initiator send the additional fields within [session] as you describe.
not ok:
a) entered additional fields in FIX44.xml in fields
<field number="1600" name="FIXEngineName" type="STRING"/>
<field number="1601" name="FIXEngineVersion" type="STRING"/>
<field number="1602" name="FIXEngineVendor" type="STRING"/>
<field number="1603" name="ApplicationSystemName" type="STRING"/>
<field number="1604" name="ApplicationSystemVersion" type="STRING"/>
<field number="1605" name="ApplicationSystemVendor" type="STRING"/>
b) entered those fields in FIX44.xml in messages: Logon
Logon now looks like:
<message name="Logon" msgtype="A" msgcat="admin">
<field name="EncryptMethod" required="Y"/>
<field name="HeartBtInt" required="Y"/>
<field name="RawDataLength" required="N"/>
<field name="RawData" required="N"/>
<field name="ResetSeqNumFlag" required="N"/>
<field name="NextExpectedMsgSeqNum" required="N"/>
<field name="MaxMessageSize" required="N"/>
<group name="NoMsgTypes" required="N">
<field name="RefMsgType" required="N"/>
<field name="MsgDirection" required="N"/>
</group>
<field name="TestMessageIndicator" required="N"/>
<field name="Username" required="N"/>
<field name="Password" required="N"/>
<field name="FIXEngineName" required="N"/>
<field name="FIXEngineVersion" required="N"/>
<field name="FIXEngineVendor" required="N"/>
<field name="ApplicationSystemName" required="N"/>
<field name="ApplicationSystemVersion" required="N"/>
<field name="ApplicationSystemVendor" required="N"/>
c) entered those fields in session for custom login:
[session]
BeginString=FIX.4.4
SocketConnectHost=90.151.253.32
SocketConnectPort=22372
SenderCompID=1027709-EUREX-T-SIMU-027
TargetCompID=EUREX
Username=
Password=SomePassword
RawData=
RawDataLength=-1
TestMessageIndicator=true
FIXEngineName=BobbelFix
FIXEngineVersion=1.0
FIXEngineVendor=gabebor
ApplicationSystemName=BobbelFix
ApplicationSystemVersion=1.0
ApplicationSystemVendor=gabebor
d)EXPECTED:
initiator send within the logon the additional fields
e)RESULT
initiator dont send the additional fields:
request:
8=FIX.4.4|9=105|35=A|34=99|49=1027709-EUREX-T-SIMU-027|52=20121205-14:54:11.156|
56=EUREX|98=0|108=30|464=Y|554=SomePassword|10=062|
response:
8=FIX.4.4|9=109|35=5|34=6619|49=EUREX|52=20121205-14:54:11.177|56=1027709-EUREX-
T-SIMU-027|58=Invalid value of FIXEngineName|10=137|
Original comment by boris.ga...@arcor.de
on 5 Dec 2012 at 5:09
Unfortunately, QuickFIX Messenger does not support inserting user-defined
fields to the logon message.
While it is fairly straight forward to add support for a specific set of fields
(like the ones above), there is no generic way to support arbitrary fields.
I did a quick search on these fields and it looks like they are part of the
latest FIX 5.0 SP2 *EP* -- I admit however, that I have no idea what that means
:-)
If you can provide a bit more information on how common it is for these fields
to be used in logon messages, then perhaps I can officially add support for
them.
Otherwise, you'd have to modify the code and add support for them yourself.
Original comment by jramoyo
on 6 Dec 2012 at 3:57
hi,
those fields are not very common today... but will be used much more in future.
within those fields you are able to
- (dis)allow the access to an exchange (like eurex or xetra do)
- make internal statistics which engine, application is used if errors ocour
and why
- in fact i should use the following settings to access an exchange:
FIXEngineName=QuickFIX/J
FIXEngineVersion=1.5.2
FIXEngineVendor=jramoyo
ApplicationSystemName=quickfix-messenger
ApplicationSystemVersion=2.0
ApplicationSystemVendor= jramoyo
- EPs ;)
http://fixprotocol.org/FIXimate3.0/en/FIX.5.0SP2/manifest.html
and
http://fixprotocol.org/FIXimate3.0/latestEP/index.html
you get for field tag 1600 the name FIXEngineName
which was entered to the specification/repository with EP113
from the by the CME which is a FPL Member
the "Deutsche Boerse Group" hosting the exchanges EUREX and XETRA.
and use those fields... where i try to connect with your application ;-)
hopefully i could clairify a bit? to support fields with
TAG 1600, 1601, 1602, 1603, 1604, 1605, within Logon
Original comment by boris.ga...@arcor.de
on 6 Dec 2012 at 11:33
Original issue reported on code.google.com by
boris.ga...@arcor.de
on 27 Nov 2012 at 11:58