bubbo调用服务异常:
com.alibaba.dubbo.rpc.RpcException: Failed to invoke remote method: getPlanFlowInfo, provider: dubbo://10.20.30.164:21331/com.ys.mqpms.api.IMqPmsApi?application=ysportal-server&default.check=false&default.timeout=300000&dubbo=2.5.3&interface=com.ys.mqpms.api.IMqPmsApi&methods=cbPlanEndExecute,purOrderDetailgetMqMtrlRequireDetailIds,getMtrlRequireMtrlForSumForFlow,getZSPlanTaskChart,getIstockInfo,getAllotDetail,cbZSPlanRectifyStartExecute,getPlanFlowInfo,cbLabourPlanEndExecute,getMbidFileListInfo,getPlanInfo,getFinanceListApp,cbLabourTenderEndExecute,getPlanTaskDeatilApp,getIstockMtrlList,cbLabourFileEndExecute,getMqMtrlRequired,getBaseInfoDeatilApp,getMtrlRequiredInfoForSrm2,getMbidPersonListInfo,taskupdateUI,getPlanDeptListInfo,getLabourFileFileDetail,cbMtrlRequiredStartExecute,getPersonNoFromPmsPerson,getMtrlRequiredInfoForSrm,updatePlanGraphicProgress,getPlanDelayItemPagerModelByQuery,getMtrlRequireMtrlDetailAll,getOstockDetail,getLabourPlan,getBaseInfoToPersonelOne,getPlanRectifyCancleGanttInfo,cbPlanRectifyEndExecute,getLabourPlanDetail,getMbidContListInfo,cbPlanStartExecute,getMtrlRequireInfoByCode,updatePlanTaskProgress,getFileListApp,getPlanRectifyChart,getLabourTenderFileDetail,getAllot,getMtenderDetailInfo,cbMQPlanRectifyStartExecute,selMtrlPlanDetailMtrlInfoByIdCount,getPmsChildBySn,purOrderDetailgetMtrlRequireMtrlIds,getMqMtrlRequiredBase,getMbidWsDetailInfo,getMtender,getMqPersonAllotById,getBaseInfoAndRelate,getFileBybaseInfoIdsList,getMtrlPlanDetailGroupByMoreByQuery,getMqMtrlRequireDetailList,purOrderDetailgetMtrlRequireMtrl,selectPlanTaskNotProCodeNullPage,getPlanTaskChart,purOrderDetailgetMtrlRequireInfo,getmTenderFileDetail,getMqPersonAllotProDate,getBaseInfoListApp,getMtrlPlanInfo,cbMtrlPlanEndExecute,getMqPersonApplyRequirePagerModelByQuery,updateMtrlRequireMtrlToHasOrderCountBatch,getFileInfo,getMtrlPlanDetailAll,getPlanInfolistApp,getMlabourTeamDetailListInfo,getMconstructDetails,getMqSizeByQuery,getMbidWsListInfo,getMqMtrlRequireDetailFile,getPlanTaskList,getLabourTender,getLabourFile,updateMtrlRequireMtrlToHasOrderCount,getMtenderRequiredDetail,getPlanRectifyInfo,cbMtrlRequiredEndExecute,cbZSPlanRectifyEndExecute,getLabourTenderWsDetail,getMlabourTeamDetailInfo,getChangeRecordListApp,getMbidInfo,cbPlanRectifyStartExecute,cbMQPlanRectifyEndExecute,getMapBaseInfoByIds,getPlanDelayItemGantt,getLabourFileInfoDetail,getOstock,getBaseInfoById,getMtrlRequiredBase,getLabourTenderRequiredDetail,updatePlanTaskWord,getBaseInfoAll,getMlabourTeamInfo,getMconstructs,getDeptByBaseInfo,getMtrlPlanInfoByCode,getMtrlRequireInfo,getMbidContDetailInfo,getCompanysListApp,updateMqMtrlRequireDetail,getMqMtrlRequireDetailById,getPlanInfoDeatilApp,getMqMtrlRequireInfo,cbMtrlPlanStartExecute,getMtrlRequired,getMtrlRequireMtrlDetailById,updateMqMtrlRequireDetailToHasOrderCountBatch,getMqMtrlRequireDetail,getBaseInfoByProjectCode,updatePersonExit,getmtrlrequireDetailToPurOrderDetail,getPlanGraphicProgressListApp,getChildBySn,getPersonsListApp,getMqPersonApplyById&pid=7292&revision=0.0.1-SNAPSHOT&side=consumer×tamp=1516936717997&version=1.0, cause: message can not send, because channel is closed . url:dubbo://10.20.30.164:21331/com.ys.mqpms.api.IMqPmsApi?application=ysportal-server&codec=dubbo&default.check=false&default.timeout=300000&dubbo=2.5.3&heartbeat=60000&interface=com.ys.mqpms.api.IMqPmsApi&methods=cbPlanEndExecute,purOrderDetailgetMqMtrlRequireDetailIds,getMtrlRequireMtrlForSumForFlow,getZSPlanTaskChart,getIstockInfo,getAllotDetail,cbZSPlanRectifyStartExecute,getPlanFlowInfo,cbLabourPlanEndExecute,getMbidFileListInfo,getPlanInfo,getFinanceListApp,cbLabourTenderEndExecute,getPlanTaskDeatilApp,getIstockMtrlList,cbLabourFileEndExecute,getMqMtrlRequired,getBaseInfoDeatilApp,getMtrlRequiredInfoForSrm2,getMbidPersonListInfo,taskupdateUI,getPlanDeptListInfo,getLabourFileFileDetail,cbMtrlRequiredStartExecute,getPersonNoFromPmsPerson,getMtrlRequiredInfoForSrm,updatePlanGraphicProgress,getPlanDelayItemPagerModelByQuery,getMtrlRequireMtrlDetailAll,getOstockDetail,getLabourPlan,getBaseInfoToPersonelOne,getPlanRectifyCancleGanttInfo,cbPlanRectifyEndExecute,getLabourPlanDetail,getMbidContListInfo,cbPlanStartExecute,getMtrlRequireInfoByCode,updatePlanTaskProgress,getFileListApp,getPlanRectifyChart,getLabourTenderFileDetail,getAllot,getMtenderDetailInfo,cbMQPlanRectifyStartExecute,selMtrlPlanDetailMtrlInfoByIdCount,getPmsChildBySn,purOrderDetailgetMtrlRequireMtrlIds,getMqMtrlRequiredBase,getMbidWsDetailInfo,getMtender,getMqPersonAllotById,getBaseInfoAndRelate,getFileBybaseInfoIdsList,getMtrlPlanDetailGroupByMoreByQuery,getMqMtrlRequireDetailList,purOrderDetailgetMtrlRequireMtrl,selectPlanTaskNotProCodeNullPage,getPlanTaskChart,purOrderDetailgetMtrlRequireInfo,getmTenderFileDetail,getMqPersonAllotProDate,getBaseInfoListApp,getMtrlPlanInfo,cbMtrlPlanEndExecute,getMqPersonApplyRequirePagerModelByQuery,updateMtrlRequireMtrlToHasOrderCountBatch,getFileInfo,getMtrlPlanDetailAll,getPlanInfolistApp,getMlabourTeamDetailListInfo,getMconstructDetails,getMqSizeByQuery,getMbidWsListInfo,getMqMtrlRequireDetailFile,getPlanTaskList,getLabourTender,getLabourFile,updateMtrlRequireMtrlToHasOrderCount,getMtenderRequiredDetail,getPlanRectifyInfo,cbMtrlRequiredEndExecute,cbZSPlanRectifyEndExecute,getLabourTenderWsDetail,getMlabourTeamDetailInfo,getChangeRecordListApp,getMbidInfo,cbPlanRectifyStartExecute,cbMQPlanRectifyEndExecute,getMapBaseInfoByIds,getPlanDelayItemGantt,getLabourFileInfoDetail,getOstock,getBaseInfoById,getMtrlRequiredBase,getLabourTenderRequiredDetail,updatePlanTaskWord,getBaseInfoAll,getMlabourTeamInfo,getMconstructs,getDeptByBaseInfo,getMtrlPlanInfoByCode,getMtrlRequireInfo,getMbidContDetailInfo,getCompanysListApp,updateMqMtrlRequireDetail,getMqMtrlRequireDetailById,getPlanInfoDeatilApp,getMqMtrlRequireInfo,cbMtrlPlanStartExecute,getMtrlRequired,getMtrlRequireMtrlDetailById,updateMqMtrlRequireDetailToHasOrderCountBatch,getMqMtrlRequireDetail,getBaseInfoByProjectCode,updatePersonExit,getmtrlrequireDetailToPurOrderDetail,getPlanGraphicProgressListApp,getChildBySn,getPersonsListApp,getMqPersonApplyById&pid=7292&revision=0.0.1-SNAPSHOT&side=consumer×tamp=1516936717997&version=1.0
at com.alibaba.dubbo.rpc.protocol.dubbo.DubboInvoker.doInvoke(DubboInvoker.java:101)
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.proxy.InvokerInvocationHandler.invoke(InvokerInvocationHandler.java:52)
at com.alibaba.dubbo.common.bytecode.proxy10.getPlanFlowInfo(proxy10.java)
at com.ys.portal.web.controller.form.MqPersonApplyController.fromflowInfo(MqPersonApplyController.java:60)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:215)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:745)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:686)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:80)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:925)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:856)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:953)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:844)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:624)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:829)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at com.ys.portal.web.filter.LoginCheckFilter.doFilterInternal(LoginCheckFilter.java:64)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at com.bizenit.idm.siam.client.authentication.AuthenticationFilter.doFilter(AuthenticationFilter.java:155)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at com.bizenit.idm.siam.client.validation.AbstractTicketValidationFilter.doFilter(AbstractTicketValidationFilter.java:234)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at com.bizenit.idm.siam.client.session.SingleSignOutFilter.doFilter(SingleSignOutFilter.java:102)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.springframework.session.web.http.SessionRepositoryFilter.doFilterInternal(SessionRepositoryFilter.java:119)
at org.springframework.session.web.http.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:65)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:343)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:260)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:124)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:436)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1078)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)
Caused by: com.alibaba.dubbo.remoting.RemotingException: message can not send, because channel is closed . url:dubbo://10.20.30.164:21331/com.ys.mqpms.api.IMqPmsApi?application=ysportal-server&codec=dubbo&default.check=false&default.timeout=300000&dubbo=2.5.3&heartbeat=60000&interface=com.ys.mqpms.api.IMqPmsApi&methods=cbPlanEndExecute,purOrderDetailgetMqMtrlRequireDetailIds,getMtrlRequireMtrlForSumForFlow,getZSPlanTaskChart,getIstockInfo,getAllotDetail,cbZSPlanRectifyStartExecute,getPlanFlowInfo,cbLabourPlanEndExecute,getMbidFileListInfo,getPlanInfo,getFinanceListApp,cbLabourTenderEndExecute,getPlanTaskDeatilApp,getIstockMtrlList,cbLabourFileEndExecute,getMqMtrlRequired,getBaseInfoDeatilApp,getMtrlRequiredInfoForSrm2,getMbidPersonListInfo,taskupdateUI,getPlanDeptListInfo,getLabourFileFileDetail,cbMtrlRequiredStartExecute,getPersonNoFromPmsPerson,getMtrlRequiredInfoForSrm,updatePlanGraphicProgress,getPlanDelayItemPagerModelByQuery,getMtrlRequireMtrlDetailAll,getOstockDetail,getLabourPlan,getBaseInfoToPersonelOne,getPlanRectifyCancleGanttInfo,cbPlanRectifyEndExecute,getLabourPlanDetail,getMbidContListInfo,cbPlanStartExecute,getMtrlRequireInfoByCode,updatePlanTaskProgress,getFileListApp,getPlanRectifyChart,getLabourTenderFileDetail,getAllot,getMtenderDetailInfo,cbMQPlanRectifyStartExecute,selMtrlPlanDetailMtrlInfoByIdCount,getPmsChildBySn,purOrderDetailgetMtrlRequireMtrlIds,getMqMtrlRequiredBase,getMbidWsDetailInfo,getMtender,getMqPersonAllotById,getBaseInfoAndRelate,getFileBybaseInfoIdsList,getMtrlPlanDetailGroupByMoreByQuery,getMqMtrlRequireDetailList,purOrderDetailgetMtrlRequireMtrl,selectPlanTaskNotProCodeNullPage,getPlanTaskChart,purOrderDetailgetMtrlRequireInfo,getmTenderFileDetail,getMqPersonAllotProDate,getBaseInfoListApp,getMtrlPlanInfo,cbMtrlPlanEndExecute,getMqPersonApplyRequirePagerModelByQuery,updateMtrlRequireMtrlToHasOrderCountBatch,getFileInfo,getMtrlPlanDetailAll,getPlanInfolistApp,getMlabourTeamDetailListInfo,getMconstructDetails,getMqSizeByQuery,getMbidWsListInfo,getMqMtrlRequireDetailFile,getPlanTaskList,getLabourTender,getLabourFile,updateMtrlRequireMtrlToHasOrderCount,getMtenderRequiredDetail,getPlanRectifyInfo,cbMtrlRequiredEndExecute,cbZSPlanRectifyEndExecute,getLabourTenderWsDetail,getMlabourTeamDetailInfo,getChangeRecordListApp,getMbidInfo,cbPlanRectifyStartExecute,cbMQPlanRectifyEndExecute,getMapBaseInfoByIds,getPlanDelayItemGantt,getLabourFileInfoDetail,getOstock,getBaseInfoById,getMtrlRequiredBase,getLabourTenderRequiredDetail,updatePlanTaskWord,getBaseInfoAll,getMlabourTeamInfo,getMconstructs,getDeptByBaseInfo,getMtrlPlanInfoByCode,getMtrlRequireInfo,getMbidContDetailInfo,getCompanysListApp,updateMqMtrlRequireDetail,getMqMtrlRequireDetailById,getPlanInfoDeatilApp,getMqMtrlRequireInfo,cbMtrlPlanStartExecute,getMtrlRequired,getMtrlRequireMtrlDetailById,updateMqMtrlRequireDetailToHasOrderCountBatch,getMqMtrlRequireDetail,getBaseInfoByProjectCode,updatePersonExit,getmtrlrequireDetailToPurOrderDetail,getPlanGraphicProgressListApp,getChildBySn,getPersonsListApp,getMqPersonApplyById&pid=7292&revision=0.0.1-SNAPSHOT&side=consumer×tamp=1516936717997&version=1.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)
... 74 more
原因分析
message can not send, because channel is closed 远程方法调用失败,提示通道被关闭,无法发送信息
1. 检查服务提供的配置文件是否正确,配置文件是否加载
dubbo_provider.xml 提供服务的文件
<dubbo:service interface="com.ys.xxxx.xxxx.xxxx" ref="xxxxImpl" version="1.0" />
bean.xml 加载 dubbo_provider.xml 配置文件
<import resource="classpath*:/dubbo_provider.xml" />
2.检查客户端、服务端的超时配置;如果超时时间没有设置,设置为一个较长时间,就可以了
<dubbo:consumer check="false" timeout="300000" />
<dubbo:provider timeout="300000" />
3.检查你调用服务所在机器ip地址与你调用端配置的ip地址是否一致,如下红色url地址
dubbo_customer.xml 调用服务的配置
<dubbo:reference id="xxxx" interface="com.ys.xxxx.xxx.xxxxApi" url="dubbo://10.20.30.164:21331" version="1.0" />