当我尝试通过包含 sessionConfig 的文件中存在的索引获取 sessionconfig 时(在我们的例子中是“InitiatorSettings.cfg”)
[default]
FileStorePath=data
FileLogPath=log
HeartBtInt=30
ReconnectInterval=5
[session]
SessionName=badisInit1
BeginString=FIX.4.2
SenderCompID=client1
TargetCompID=server1
ConnectionType=initiator
SocketConnectPort=9878
SocketConnectHost=localhost
UseDataDictionary=N
[session]
SessionName=init0badis
BeginString=FIX.4.2
SenderCompID=client1
TargetCompID=server12
ConnectionType=initiator
SocketConnectPort=9878
SocketConnectHost=localhost
UseDataDictionary=N
[session]
SessionName=test211
BeginString=FIX.4.2
SenderCompID=badis
TargetCompID=server
ConnectionType=initiator
SocketConnectPort=9878
SocketConnectHost=localhost
UseDataDictionary=N
我以不同的顺序获得会话,仅在前两个 sessionID 中:
get session id FIX.4.2:client1->server12
get session id FIX.4.2:client1->server1
get session id FIX.4.2:badis->server
有我用来加载会话并打印它们的代码我不知道文件中有不同的顺序是否正常,在我们加载它们之后,或者我的配置文件有问题..
SessionSettings sessionSettings = new SessionSettings("InitiatorSettings.cfg");
ApplicationImp mainApplication = new ApplicationImp();
FileStoreFactory fileStoreFactory = new FileStoreFactory(sessionSettings);
FileLogFactory logFactory = new FileLogFactory(sessionSettings);
MessageFactory messageFactory = new DefaultMessageFactory();
socketInitiator = new SocketInitiator( mainApplication,
fileStoreFactory, this.sessionSettings, logFactory,
messageFactory);
for(int i=0;i<socketInitiator.getSessions().size();i++)
{
System.out.println("get session id "+socketInitiator.getSessions().get(i));
}
谢谢您的帮助。