<分区>
<分区>
Possible Duplicate:
java.net.SocketException: Software caused connection abort: recv failed
我正在尝试编写一个客户端服务器对,其中连接一整天都处于 Activity 状态,客户端等待服务器发送消息。步骤是:
我可以让步骤 1-4 正常工作,但是如果我尝试重复步骤 3,我会在标题中看到错误。
这是我在客户端的方法:
private static void waitForInput(SSLSocket sslsocket) throws IOException {
do {
try {
ObjectInputStream ois = new ObjectInputStream(sslsocket.getInputStream());
ObjectOutputStream oos = new ObjectOutputStream(sslsocket.getOutputStream());
Object o = (Object) (ois.readObject());
// excluded code to process data
oos.flush();
oos.writeObject(o);
oos.reset();
}
catch(ClassNotFoundException e){
System.err.println(e.getMessage());
}
} while ( true );
}
代码在第 4 行失败,第一次绕过它阻塞并等待我获得下一位数据,但它两次都不起作用。我做错了什么?
最佳答案
当您等待从另一端已关闭的套接字中读取数据时,将抛出连接中止 IOException,如果您没有意外关闭套接字,请检查您的服务器端代码。 还可以上传服务器端代码以进行更深入的分析,也可以尝试发布堆栈跟踪,这将有助于分析。
关于java - 客户端服务器套接字 java.net.SocketException : Software caused connection abort: recv failed,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12466471/
相关文章:
javascript - 无法在使用 SSL 的服务器中获取 css 和 js 文件
java - 在其他函数中而不是 OnCreate() 方法中初始化按钮
java - 有没有办法通过套接字发送带有 DataOutputStream 的 Point 数组?
ssl - NGINX 转发 ssl 背后的 Tomcat 7
java - 在两个 GUI 类之间传输 String 时出现 NullPointerException
java - 如何将显示方法添加到仅显示列表中第一个和最后 10 个项目的 Java 链表实现?
Java(网络):passing incremented values between client and server