我有一个客户端应用程序可以连接多个修复会话,每个会话都有自己的时区和属性。我注意到,如果我删除会话的一个配置。这会影响其他会话。例如,如果我删除的会话有一个allowunknownmsgfields属性,那么其他会话将中断,因为它们共享该属性。它一直都可以复制。我对配置的定义有误吗?
qfj版本:quickfixj-all.2.1.0.jar
[Default]
HeartbeatInt=30
ReconnectInterval=5
[Session]
Sender=Sender1
Target=Target1
[Session]
Sender=Sender2
Target=Target2
AllowUnknownMsgFields=Y
1条答案
按热度按时间h22fl7wq1#
这是quickfix/j中的一个bug,将在版本3.0.0中解决。不过,我们没有发布日期。问题是字典(以及它们配置的验证选项)是基于它们的名称缓存的。
https://www.quickfixj.org/jira/browse/qfj-982
https://github.com/quickfix-j/quickfixj/pull/245
作为一种解决方法,您可以为第二个会话复制字典并应用所需的验证选项。