我有一台服务器和很多客户端。他们通过Java套接字相互通信。我创建了一个消息库,其中包含应该发送的消息。很多消息都很好用,但是有一个问题。如果我想发送这种消息,我会得到以下异常:
java.io.StreamCorruptedException:无效的流标题:73720024 at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:806) 在java.io.ObjectInputStream。(ObjectInputStream.java:299) at messages.MessageHandler.receiveMessageNonBlocking(MessageHandler.java:156) at loadbalancer.socket.SocketCommunicator.socketMessageHandler(SocketCommunicator.java:147) at loadbalancer.socket.SocketCommunicator.run(SocketCommunicator.java:93)
如果客户端和服务器在同一台计算机上运行,那么问题就不会发生,但如果不是这样的话。远程计算机使用相同的操作系统,相同的Java版本。
您对我应该检查什么有什么建议吗?
答案 0 :(得分:0)
您应该检查两端是否只使用writeObject()
和readObject()
,并且在套接字的生命周期中使用相同的对象流,同样在两端。 72730024看起来像是一段ASCII文本。