调用Dubbo服务报以下错误,跪求问题原因和解决办法

Caused by: com.alibaba.dubbo.remoting.RemotingException: message can not send, because channel is closed . url:dubbo://192.168.17.71:21954/com.tw.ei.business.agent.service.ReqBuinessAgentService?anyhost=true&application=consumer-engine&check=false&codec=dubbo&default.timeout=120000&dubbo=2.4.10&heartbeat=60000&interface=com.tw.ei.business.agent.service.ReqBuinessAgentService&methods=execute&pid=27587&retries=0&revision=reqappservice&side=consumer&timestamp=1399973540550&version=1.0.0
at com.alibaba.dubbo.remoting.transport.AbstractClient.send(AbstractClient.java:268)
at com.alibaba.dubbo.remoting.transport.AbstractPeer.send(AbstractPeer.java:51)
at com.alibaba.dubbo.remoting.exchange.support.header.HeaderExchangeChannel.request(HeaderExchangeChannel.java:112)
at com.alibaba.dubbo.remoting.exchange.support.header.HeaderExchangeClient.request(HeaderExchangeClient.java:91)
at com.alibaba.dubbo.rpc.protocol.dubbo.ReferenceCountExchangeClient.request(ReferenceCountExchangeClient.java:81)
at com.alibaba.dubbo.rpc.protocol.dubbo.DubboInvoker.doInvoke(DubboInvoker.java:96)
at com.alibaba.dubbo.rpc.protocol.AbstractInvoker.invoke(AbstractInvoker.java:144)
at com.alibaba.dubbo.rpc.listener.ListenerInvokerWrapper.invoke(ListenerInvokerWrapper.java:74)
at com.alibaba.dubbo.rpc.protocol.dubbo.filter.FutureFilter.invoke(FutureFilter.java:53)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
at com.alibaba.dubbo.monitor.support.MonitorFilter.invoke(MonitorFilter.java:75)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
at com.alibaba.dubbo.rpc.filter.ConsumerContextFilter.invoke(ConsumerContextFilter.java:48)
at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
at com.alibaba.dubbo.rpc.protocol.InvokerWrapper.invoke(InvokerWrapper.java:53)
at com.alibaba.dubbo.rpc.cluster.support.FailoverClusterInvoker.doInvoke(FailoverClusterInvoker.java:77)
... 10 more

如果代码感觉没问题 看看是不是开启了wifi共享一类的软件 或者是虚拟机什么的 把你的电脑IP给虚拟改变了 影响了dubbo的使用

呵呵,楼上真是站着说话不腰疼。来来来,我们坐着说。

一般是网络不通,从服务消费方到服务提供方网络问题。

provider返回的时候 发现调用provider的线程已经被关闭了 有可能是consumer 的timeout设得太短了。

服务端响应超时,调用端就会报这个异常,你可以看下服务端spring配置中设定的超时时间 dubbo:service timeout的设定的时间、

服务器端的pojo记得实现序列化

查一下你的项目有没有交给spring管理,监听