Quickfix 快速修复消息被拒绝:无效的标记号:
我正在使用QuickFix/J 1.14.3和fix4.2作为发起方和接受方 在Acceptor上,我尝试禁用配置文件中的所有验证检查,如下所示。调用fromAdmin()时会显示违反规则的消息。我不确定我是否想弄乱数据字典,但我认为通过禁用所有检查,我实际上可以得到消息。接受者设置一个字段,如下所示。 setField(newintfield(6401,79)) 任何帮助都将不胜感激Quickfix 快速修复消息被拒绝:无效的标记号:,quickfix,quickfixj,Quickfix,Quickfixj,我正在使用QuickFix/J 1.14.3和fix4.2作为发起方和接受方 在Acceptor上,我尝试禁用配置文件中的所有验证检查,如下所示。调用fromAdmin()时会显示违反规则的消息。我不确定我是否想弄乱数据字典,但我认为通过禁用所有检查,我实际上可以得到消息。接受者设置一个字段,如下所示。 setField(newintfield(6401,79)) 任何帮助都将不胜感激 UseDataDictionary=N DefaultMarketPrice=12.30 ValidateUs
UseDataDictionary=N
DefaultMarketPrice=12.30
ValidateUserDefinedFields=N
ValidateFieldsHaveValues=N
ValidateFieldsOutOfOrder=N
ValidateUserDefinedMessages=N
UseDataDictionary=N
# ACCEPTOR SIMULATOR
[session]
SenderCompID=baml
TargetCompID=mjt
BeginString=FIX.4.2
SocketAcceptPort=9879
CheckCompID=N
首先添加属性 AllowUnknownMsgFields=Y 并使用它允许处理组的数据字典
UseDataDictionary=Y
将数据字典弄乱
当然是。但永远不要禁用验证,这在很多级别上都是错误的。验证根据标准检查消息是否正确,是否存在所需字段。你可能会通过测试,但当你进入现实世界时,你会失败。你能发布违反信息的全文吗?哪个标签号无效?如果是6401,则表示标记6401在FIX 4.2中未知。这是拒绝消息:mjt,传入>(8=FIX.4.29=22935=D34=849=mjt50=VTRD52=20170424-19:18:30.11556=baml115=VTRD1=42490300D911=217Morel00000000121=138=1040=244=29.6554=255=AAPL59=360=20170424-19:18:30.11277=O167=OPT200=201704201=1202=1140205=2864010),MJ7910>(消息8被拒绝:无效标签号:6401)我正在建立一个到BOA GES服务器的客户端连接。服务器使用了一些Fix4.2中的自定义字段。在测试环境/认证向我开放之前,可能需要几周时间。因此我开始制作一个模拟器服务器。模拟器服务器就是我遇到问题的地方。我将1.14.3中的例外示例作为例子另一方面,我下载了1.6.3 quickFixJ来构建最新的Java代码。我使用IntelliJ作为IDE。我在从Maven转换为其构建语言时遇到问题。我花了几个小时试图构建它,但没有成功。