如何从 TcpConnectionFactory 重新打开 Spring 套接字?
How to reopen a Spring Socket from TcpConnectionFactory?
@Bean
public TcpConnectionFactoryFactoryBean tcpFactory(LengthHeaderDeserializer deserializer) throws Exception {
TcpConnectionFactoryFactoryBean fact = new TcpConnectionFactoryFactoryBean();
fact.setType("server");
fact.setPort(port);
fact.setUsingNio(true);
fact.setSingleUse(false);
fact.setDeserializer(new ByteArrayLengthHeaderSerializer());
fact.setSerializer(new ByteArrayLengthHeaderSerializer());
return fact;
}
如果deserializer.deserialize()
发生异常,则socket被服务器关闭。
问题:
我怎样才能告诉 Spring 之后自动重新打开套接字?
否则,我怎么能自己强制重新打开?
这只是关闭来自客户端的当前连接 - 服务器套接字保持打开状态等待新连接。客户端需要重新打开他的连接。
@Bean
public TcpConnectionFactoryFactoryBean tcpFactory(LengthHeaderDeserializer deserializer) throws Exception {
TcpConnectionFactoryFactoryBean fact = new TcpConnectionFactoryFactoryBean();
fact.setType("server");
fact.setPort(port);
fact.setUsingNio(true);
fact.setSingleUse(false);
fact.setDeserializer(new ByteArrayLengthHeaderSerializer());
fact.setSerializer(new ByteArrayLengthHeaderSerializer());
return fact;
}
如果deserializer.deserialize()
发生异常,则socket被服务器关闭。
问题: 我怎样才能告诉 Spring 之后自动重新打开套接字? 否则,我怎么能自己强制重新打开?
这只是关闭来自客户端的当前连接 - 服务器套接字保持打开状态等待新连接。客户端需要重新打开他的连接。