Hi, I can see the log printed by my class. There are 3 times for the same exchange, but all of them are ACTIVE, no DONE message found.
Regards, Zhao Yi Gert Vanthienen wrote: > > Zhao Yi, > > This class looks OK to me. Are you seeing the debug messages from > this class printed in your log file when you do the send? > > Could you try enabling DEBUG logging for this InOut exchange? You > should see the same exchange pass through the NMR 3 times: once ACTIVE > (with only the in message), another ACTIVE (with both the in and out > message) and finally DONE. Are there any exceptions or error in the > log that can help us figure out what the problem is? > > Regards, > > Gert Vanthienen > ------------------------ > Open Source SOA: http://fusesource.com > Blog: http://gertvanthienen.blogspot.com/ > > > > 2009/11/17 youhaodeyi <[email protected]>: >> >> Hi >> >> Thanks very much for your reply. >> >> This is the MyReceiver code. >> >> public class MyReceiver implements MessageExchangeListener { >> >> �...@resource >> private DeliveryChannel channel; >> >> public void onMessageExchange(MessageExchange me) throws >> MessagingException >> { >> ExchangeStatus status = me.getStatus(); >> logger.debug("Receive message " + me + " " + >> me.getStatus()); >> if (status.equals(ExchangeStatus.DONE) == true >> || status.equals(ExchangeStatus.ERROR)) { >> return; >> } >> if (status == ExchangeStatus.ACTIVE) { >> NormalizedMessage message = me.getMessage("in"); >> Source content = message.getContent(); >> >> try { >> String body = (new >> SourceTransformer()).toString(content); >> logger.debug("Get body:" + body); >> } catch (TransformerException e) { >> e.printStackTrace(); >> } >> message.setContent(content); >> me.setMessage(message, "out"); >> channel.send(me); >> >> } >> >> >> Gert Vanthienen wrote: >>> >>> Zhao Yi, >>> >>> The URI you set on the @ExchangeTarget is correct. Could you post the >>> code for the MyReceiver bean as well? The Destination interface sends >>> an InOut exchange to that bean, so perhaps there's a problem in how >>> that bean handle the InOut MEP and is that the cause of blocking the >>> call indefinitely. >>> >>> Regards, >>> >>> Gert Vanthienen >>> ------------------------ >>> Open Source SOA: http://fusesource.com >>> Blog: http://gertvanthienen.blogspot.com/ >>> >>> >>> >>> 2009/11/16 youhaodeyi <[email protected]>: >>>> >>>> Hi, >>>> >>>> This is the xbean.xml: >>>> >>>> <?xml version="1.0" encoding="UTF-8"?> >>>> <beans xmlns="http://www.springframework.org/schema/beans" >>>> xmlns:service="http://com.test.service" >>>> xmlns:sm="http://servicemix.apache.org/config/1.0" >>>> xmlns:bean="http://servicemix.apache.org/bean/1.0" >>>> xmlns:server="http://servicemix.apache.org/server" >>>> xmlns:xsi="http://http://www.w3.org/2001/XMLSchema-instance" >>>> xsi:schemaLocation="http://servicemix.apache.org/bean/1.0 >>>> http://servicemix.apache.org/schema/servicemix-bean-3.2.3.xsd >>>> http://www.springframework.org/schema/beans >>>> http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> >>>> >>>> <bean:endpoint service="service:myservice" >>>> endpoint="my_service_endpoint" bean="#receiver" /> >>>> <bean id="receiver" class="MyService"> >>>> </bean> >>>> </beans> >>>> >>>> thanks, >>>> >>>> Zhao Yi >>>> >>>> >>>> Gert Vanthienen wrote: >>>>> >>>>> L.S., >>>>> >>>>> Could you paste us the xbean.xml for the >>>>> {http://com.test.service}service endpoint you're trying to target? >>>>> Perhaps it doesn't support the MEP or there's an error in the URI or >>>>> something? Are there any exception in the log for this message >>>>> exchange? >>>>> >>>>> Regards, >>>>> >>>>> Gert Vanthienen >>>>> ------------------------ >>>>> Open Source SOA: http://fusesource.com >>>>> Blog: http://gertvanthienen.blogspot.com/ >>>>> >>>>> >>>>> >>>>> 2009/11/16 youhaodeyi <[email protected]>: >>>>>> >>>>>> I have tried this method but the channel.send() will send a new >>>>>> message >>>>>> to >>>>>> the called service not reply. >>>>>> >>>>>> The future.get() method will block and never get reply message. >>>>>> >>>>>> >>>>>> Maciek Prochniak wrote: >>>>>>> >>>>>>> it's covered here: >>>>>>> http://servicemix.apache.org/servicemix-bean.html >>>>>>> please, look at 'Message processing' example >>>>>>> >>>>>>> br, maciek >>>>>>> >>>>>>> On Sun, 2009-11-15 at 22:30 -0800, youhaodeyi wrote: >>>>>>>> I use servicemix-bean component to deploy my service unit and set a >>>>>>>> field >>>>>>>> with @ExchangeTarget annotation. See below: >>>>>>>> >>>>>>>> @ExchangeTarget(uri = "service:http://com.test.service/myservice") >>>>>>>> public Destination target; >>>>>>>> >>>>>>>> future = target.send(targetMsg); >>>>>>>> NormalizedMessage retMsg = future.get(); >>>>>>>> >>>>>>>> target.send() is called to send the message to myservice and >>>>>>>> waiting >>>>>>>> for >>>>>>>> reply. How can I reply the message in myservice? myservice >>>>>>>> implements >>>>>>>> MessageExchangeListener interface. >>>>>>>> >>>>>>>> thanks, >>>>>>>> >>>>>>>> Zhao Yi >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>>> -- >>>>>> View this message in context: >>>>>> http://old.nabble.com/How-can-I-send-synchronous-message-by-Destination--tp26367357p26368288.html >>>>>> Sent from the ServiceMix - User mailing list archive at Nabble.com. >>>>>> >>>>>> >>>>> >>>>> >>>>> ----- >>>>> --- >>>>> Gert Vanthienen >>>>> http://gertvanthienen.blogspot.com >>>>> >>>> >>>> -- >>>> View this message in context: >>>> http://old.nabble.com/How-can-I-send-synchronous-message-by-Destination--tp26367357p26371272.html >>>> Sent from the ServiceMix - User mailing list archive at Nabble.com. >>>> >>>> >>> >>> >>> ----- >>> --- >>> Gert Vanthienen >>> http://gertvanthienen.blogspot.com >>> >> >> -- >> View this message in context: >> http://old.nabble.com/How-can-I-send-synchronous-message-by-Destination--tp26367357p26382967.html >> Sent from the ServiceMix - User mailing list archive at Nabble.com. >> >> > > > ----- > --- > Gert Vanthienen > http://gertvanthienen.blogspot.com > -- View this message in context: http://old.nabble.com/How-can-I-send-synchronous-message-by-Destination--tp26367357p26387229.html Sent from the ServiceMix - User mailing list archive at Nabble.com.
