我使用的是quickfixj,其中我使用Logout()方法从acceptor发送fix消息给initiator,"8=FIX.4.29=8235=534=38749=TEST152=20130409-08:01:47.86256=TEST2-1136558=User Is Blocked10=231“to initiator,但我可以看到从Acceptor本身发送的心跳,我们如何克服这个问题?我正在使用下面的代码
Logout oLogout = new Logout();
quickfix.field.Text aText = new quickfix.field.Text("User Is Blocked");
oLogout.set(aText);
Session.sendToTarget(oLogout, "TEST2-11365, "TEST1");发布于 2013-04-09 22:51:19
您不应该像这样手动发送注销。注销是一条管理消息;您应该信任引擎能够发送/接收所有类型的管理消息。
发生的情况是,您正在将此消息发送到引擎的控制逻辑之外。引擎将其视为任何其他传出的应用程序级消息,而不是启动引擎的内部关闭逻辑。
如果您调用Acceptor.stop(),则engine将启动其关闭逻辑并为您发送注销。
https://stackoverflow.com/questions/15896871
复制相似问题