Spring - 无法反序列化HTTP调用程序远程服务的结果

时间:2017-10-12 12:14:22

标签: java spring maven spring-remoting

当我尝试通过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);

1 个答案:

答案 0 :(得分:1)

远程服务抛出了default.CommonException,然后通过spring远程处理将其序列化,然后尝试反序列化: 此时,您将获得ClassNotFound。

我认为您在调用方的类路径上没有default.CommonException,因此反序列化不起作用。