每当我们从Eclipse中运行Java客户端以使用RMI联系服务器应用程序时,我们都会遇到异常: java.io.StreamCorruptedException:类型代码无效:01
这只发生在Eclipse内部,其他地方(IntelliJ,命令行等)。
有谁知道发生了什么事?
答案 0 :(得分:2)
您似乎有encountered this issue before ;),而且是seen with JBoss too。
通常是:
查看器运行时上下文中的
ClassLoader
是org.apache.catalina.loader.WebappClassLoader
。所以,如果我做以下事情:
ClassLoader savedClassLoader = Thread.currentThread.getContextClassLoader();
if (savedClassLoader.getClass().getName().equalsIgnoreCase("org.apache.catalina.loader.WebappClassLoader")){
Thread.currentThread().setContextClassLoader(this.getClass().getClassLoader());
}
然后将保存的加载器设置回
IConnection.Close()
,它可以正常工作
答案 1 :(得分:0)
服务器和客户端代码之间是否不兼容?您使用什么JVM来编译每个?