当我尝试通过spring的远程服务调用可用的方法时,会发生此错误。
错误如下:
org.springframework.remoting.RemoteAccessException: Cannot deserialize result from HTTP invoker remote service [remote service address];
nested exception is java.lang.ClassNotFoundException: default.CommonException
at org.springframework.remoting.httpinvoker.HttpInvokerClientInterceptor.convertHttpInvokerAccessException(HttpInvokerClientInterceptor.java:192)
at org.springframework.remoting.httpinvoker.HttpInvokerClientInterceptor.invoke(HttpInvokerClientInterceptor.java:157)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)
at com.sun.proxy.$Proxy25.getQueryResult(Unknown Source)
at default.Main.main
由什么引起的问题可能是什么?所有其他方法的结果都会反复序列化而没有问题。
编辑:我试图通过以下方式得到这个结果:Result res = remoteService.getResult(param);
答案 0 :(得分:1)
远程服务抛出了default.CommonException,然后通过spring远程处理将其序列化,然后尝试反序列化: 此时,您将获得ClassNotFound。
我认为您在调用方的类路径上没有default.CommonException,因此反序列化不起作用。