You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@camel.apache.org by "Claus Ibsen (JIRA)" <ji...@apache.org> on 2010/09/29 09:54:42 UTC
[jira] Resolved: (CAMEL-3176) Cannot get response data when set
sync= true option
[ https://issues.apache.org/activemq/browse/CAMEL-3176?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Claus Ibsen resolved CAMEL-3176.
--------------------------------
Assignee: Claus Ibsen
Fix Version/s: 2.5.0
Resolution: Working as Designed
> Cannot get response data when set sync= true option
> ---------------------------------------------------
>
> Key: CAMEL-3176
> URL: https://issues.apache.org/activemq/browse/CAMEL-3176
> Project: Apache Camel
> Issue Type: Bug
> Components: camel-mina
> Affects Versions: 2.4.0
> Environment: Camel2.4.0+Mina1.1.7
> Tomcat 6.0
> PC Server
> Reporter: maozuoyun
> Assignee: Claus Ibsen
> Fix For: 2.5.0
>
>
> I use camel-mina for app-client to corresponding to a TCP Server in IN-OUT way, it can send request message to server,but Cannot get response data from server. It printed "No response received from remote server" 。
> Endpoint configuration url=mina:tcp://172.22.1.128:9998?encoding=GBK&disconnect=true&timeout=30000&lazySessionCreation=true&textline=true&sync=true
> Where does wrong with my code?
> Below are app logs:
> 2010-09-29 15:10:06,721 [Error][CI20100929151002034994]Error ServiceRouteProcessor.dispatchServiceError adapt:No response received from remote server: mina:tcp://172.22.1.128:9998?encoding=GBK&disconnect=true&timeout=30000&lazySessionCreation=true&textline=true&sync=true. Exchange[Message: [B@c08534]
> com.whbcn.channels.cai.exception.CAIException: Error adapt:No response received from remote server: mina:tcp://172.22.1.128:9998?encoding=GBK&disconnect=true&timeout=30000&lazySessionCreation=true&textline=true&sync=true. Exchange[Message: [B@c08534]
> at com.whbcn.channels.cai.adapter.AbstractAdapter.adapt(AbstractAdapter.java:76)
> at com.whbcn.channels.cai.platform.processor.ServiceRouteProcessor.dispatchService(ServiceRouteProcessor.java:67)
> at com.whbcn.channels.cai.platform.route.RouterManager.routeMessage(RouterManager.java:49)
> at com.whbcn.channels.cai.platform.ServiceFacade.sendRequest(ServiceFacade.java:45)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at org.apache.camel.component.bean.MethodInfo.invoke(MethodInfo.java:260)
> at org.apache.camel.component.bean.MethodInfo$1.proceed(MethodInfo.java:164)
> at org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:159)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:91)
> at org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:74)
> at org.apache.camel.impl.ProcessorEndpoint.onExchange(ProcessorEndpoint.java:95)
> at org.apache.camel.impl.ProcessorEndpoint$1.process(ProcessorEndpoint.java:65)
> at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncProcessorTypeConverter.java:50)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProcessor.java:104)
> at org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:272)
> at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:98)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
> at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
> at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:99)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:290)
> at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:202)
> at org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:256)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.Pipeline.process(Pipeline.java:143)
> at org.apache.camel.processor.Pipeline.process(Pipeline.java:78)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
> at org.apache.camel.processor.ChoiceProcessor.process(ChoiceProcessor.java:72)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
> at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
> at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
> at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
> at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:99)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
> at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
> at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:290)
> at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:202)
> at org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:256)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
> at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
> at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
> at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
> at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:99)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
> at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
> at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)
> at org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:256)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:290)
> at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:202)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.MulticastProcessor.doProcessSequential(MulticastProcessor.java:334)
> at org.apache.camel.processor.MulticastProcessor.doProcessSequential(MulticastProcessor.java:274)
> at org.apache.camel.processor.MulticastProcessor.process(MulticastProcessor.java:179)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
> at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
> at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
> at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
> at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:99)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
> at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
> at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)
> at org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:256)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.Pipeline.process(Pipeline.java:143)
> at org.apache.camel.processor.Pipeline.process(Pipeline.java:78)
> at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:99)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
> at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
> at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:91)
> at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:85)
> at org.apache.camel.component.cxf.CxfConsumer$1.invoke(CxfConsumer.java:97)
> at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58)
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> at org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
> at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:106)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:243)
> at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:110)
> at org.apache.cxf.transport.servlet.ServletDestination.invoke(ServletDestination.java:98)
> at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:423)
> at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:178)
> at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(AbstractCXFServlet.java:142)
> at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:179)
> at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:103)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
> at org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:159)
> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
> at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
> at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
> at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
> at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
> at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
> at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
> at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
> at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
> at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
> at java.lang.Thread.run(Thread.java:619)
> Caused by: org.apache.camel.CamelExchangeException: No response received from remote server: mina:tcp://172.22.1.128:9998?encoding=GBK&disconnect=true&timeout=30000&lazySessionCreation=true&textline=true&sync=true. Exchange[Message: [B@c08534]
> at org.apache.camel.component.mina.MinaProducer.process(MinaProducer.java:132)
> at com.whbcn.channels.cai.adapter.AbstractAdapter.adapt(AbstractAdapter.java:64)
> ... 121 more
> TCPServer.java:
> public class TcpServer {
> public static void main(String[] args) {
> TcpServer server = new TcpServer();
> }
> public TcpServer() {
> start();
> }
> private void start() {
> try {
> ServerSocket serverSocket = new ServerSocket(9998,1);
> while (true) {
> Socket socket = serverSocket.accept();
> Thread thread = new AcceptThread(socket);
> }
> } catch (Exception e) {
> e.printStackTrace();
> }
> }
> }
> class AcceptThread extends Thread {
> Socket socket = null;
> public AcceptThread(Socket socket) {
> this.socket = socket;
> start();
> }
> public void run() {
> try {
> InputStream inputStream = socket.getInputStream();
>
> byte[] reqBytes = new byte[1024*20];
>
> inputStream.read(reqBytes);
>
> System.out.println("receive bytes="+new String(reqBytes));
>
> OutputStream outputStream = socket.getOutputStream();
> outputStream.write("Hello!!@".getBytes());
> outputStream.flush();
> System.out.println("receive line!");
> } catch (Exception e) {
> e.printStackTrace();
> } finally {
> try {
> socket.close();
> } catch (Exception e) {
> e.printStackTrace();
> }
> }
> }
> }
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.