我在我的项目中使用了来自codebutler的android-websockets库。但是在执行disconnect()
方法时遇到了问题。代码如下:
public void disconnectServer()
{
if(client != null)
{
try {
if(client.isConnected())
{
client.disconnect();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
05-11 17:58:19.873:W/System.err(29443):java.net.SocketException:套接字关闭
05-11 17:58:19.873:W/System.err(29443):at libcore.io.posix.recvFromBytes(本机方法)
05-11 17:58:19.873:W/System.err(29443):at libcore.io.posix.recvfrom(POSIX.java:161)
05-11 17:58:19.878:W/System.err(29443):at java.net.plainsockeTimpl.read(PlainsockeTimpl.java:485)
05-11 17:58:19.878:W/System.err(29443):at java.net.plainsockeTimpl.access$000(plainsockeTimpl.java:37)
05-11 17:58:19.878:W/System.err(29443):at java.net.plainsockeTimpl$plainsocketinputstream.read(PlainsockeTimpl.java:237)
05-11 17:58:19.878:W/System.err(29443):at libcore.io.streams.ReadSingleByte(streams.java:41)
05-11 17:58:19.878:W/System.err(29443):at java.net.plainsockeTimpl$plainsocketinputstream.read(plainsockeTimpl.java:233)
05-11 17:58:19.878:W/System.err(29443):at java.io.datainputstream.readbyte(datainputstream.java:75)
05-11 17:58:19.878:W/System.err(29443):at com.codebutler.android_websockets.hybiparser.start(hybiparser.java:120)
05-11 17:58:19.878:W/System.err(29443):at com.codebutler.android_websocketsclient.websocketclient$1.run(websocketclient.java:145)
05-11 17:58:19.878:W/System.err(29443):at java.lang.thread.run(thread.java:818)
请帮帮忙!!!!!
这是因为disconnect()方法的实现与connect()方法的实现中创建的线程不同步。CodeButler/Android-WebSockets不是商业质量。disconnect()方法甚至不执行RFC6455所要求的结束握手。
如果不想看到错误,请使用另一个WebSocket库。
问题内容: 我正在尝试使用Java,并想通过Java的客户端/服务器进行测试,以使客户端将自定义类(消息)的简单对象发送到服务器。问题是我一直在服务器端收到ClassNotFoundException。 我认为其余代码似乎还不错,因为其他对象(例如String)可以顺利通过。 我在不同的位置分别有两个不同的netbeans项目,分别用于客户端和服务器。 他们每个人在各自的程序包下都有自己的Mess
请看下面的代码: 当我运行时,我得到以下异常: 线程“主”java.util.regex.PatternSyntaxException异常:指数4附近无与伦比的收盘“)” 0.3港元)预订:virginiawong@fahkco.com.hk4)FCR 根据我的理解,我必须对参数'(',')'进行转义,我试图这样做(看看代码中的注释部分)没有任何异常,但是我添加到字符串的换行符似乎没有出现。
当我运行测试用例时,我有以下异常: 测试用例有两个测试,如下所示: 我有两个问题: null 测试毫无问题地通过了.... 编辑4:实际上,我正在拼命地修改下面的示例:https://stackoverflow.com/a/24229350/536299,这是在另一篇文章中给我的。人们会注意到模拟是autowired的,测试确实使用了spring上下文。谁能帮我把考试考对吗?
问题内容: 例如,框架/ JDK中的许多方法可能会抛出 但这未在方法签名中指出(因为这是通常保留给检查异常的做法)。我想证明在方法sigs中声明RuntimeExceptions有很多好处(例如类似于静态类型检查)。我喝醉了还是其他? 问题答案: 我不会在签名中声明未经检查的异常,因为它会误导该API的用户。是否必须显式处理该异常不再明显。 在javadoc中声明它是一种更好的方法,因为它允许某人
问题内容: 阅读的JavaDoc ,我碰到了一个奇怪的方法签名;我一生中从未见过: 乍一看,我想知道通用异常怎么可能发生,因为您不能这样做(here和here)。再三考虑,这开始变得有意义,因为这里只是绑定…,但是供应商本身确切知道泛型之前应该是什么类型。 但是第二行打给我: 是完整的通用异常类型。 然后: 什么世界呢 这 是什么意思? 已绑定在方法签名中。 这将以任何方式解决通用异常限制吗? 为
问题内容: 在这里提供一些答案并阅读了一些评论之后,看来,实际上IOException永远不会对文件I / O抛出异常。 在任何情况下,在Stream / Reader / Writer上进行close调用实际上会引发IOException吗? 如果实际引发异常,应该如何处理? 问题答案: 对于文件,可能不会在close()上经常抛出IOException,但是对于非文件I / O,您肯定会看到它