2010-06-07 14:55:29,573 INFO [pool-2-thread-1] proj.FATMasterTransferObjectConverter - message-processor:fromMessage OrderID:171176
<<171176>>
2010-06-07 14:55:30,030 INFO [pool-2-thread-1] jms.FatTransferObjectMessageConverter - message-processor:toMessage OrderID:171176
2010-06-07 14:55:30,141 INFO [pool-2-thread-1] jms.FatTransferObjectMessageConverter - message-processor:fromMessage
2010-06-07 14:55:30,141 INFO [pool-2-thread-1] jms.FatTransferObjectMessageConverter - message-processor:fromMessage
2010-06-07 14:55:30,147 INFO [pool-2-thread-1] proj.FATMasterTransferObjectConverter - message-processor:toMessage OrderID:171176

<<171138>>
2010-06-07 14:55:30,567 INFO [pool-2-thread-1] proj.FATMasterTransferObjectConverter - message-processor:fromMessage OrderID:171138
2010-06-07 14:55:31,022 INFO [pool-2-thread-1] jms.FatTransferObjectMessageConverter - message-processor:toMessage OrderID:171138
2010-06-07 14:55:31,164 INFO [pool-2-thread-1] jms.FatTransferObjectMessageConverter - message-processor:fromMessage
2010-06-07 14:55:31,164 INFO [pool-2-thread-1] jms.FatTransferObjectMessageConverter - message-processor:fromMessage

<<171177>>

2010-06-07 14:55:31,557 INFO [pool-2-thread-1] proj.FATMasterTransferObjectConverter - message-processor:fromMessage OrderID:171177
2010-06-07 14:55:32,014 INFO [pool-2-thread-1] jms.FatTransferObjectMessageConverter - message-processor:toMessage OrderID:171177
2010-06-07 14:55:32,125 INFO [pool-2-thread-1] jms.FatTransferObjectMessageConverter - message-processor:fromMessage
2010-06-07 14:55:32,125 INFO [pool-2-thread-1] jms.FatTransferObjectMessageConverter - message-processor:fromMessage
2010-06-07 14:55:32,137 INFO [pool-2-thread-1] proj.FATMasterTransferObjectConverter - message-processor:toMessage OrderID:171177

<<171138>>
2010-06-07 14:55:32,550 INFO [pool-2-thread-1] proj.FATMasterTransferObjectConverter - message-processor:fromMessage OrderID:171138
2010-06-07 14:55:33,005 INFO [pool-2-thread-1] jms.FatTransferObjectMessageConverter - message-processor:toMessage OrderID:171138
2010-06-07 14:55:33,116 INFO [pool-2-thread-1] jms.FatTransferObjectMessageConverter - message-processor:fromMessage
2010-06-07 14:55:33,117 INFO [pool-2-thread-1] jms.FatTransferObjectMessageConverter - message-processor:fromMessage



When sending a message... looks like the process is waiting for the other-side to respond. toMessage and waiting for fromMessage from the other process...Why is that happening?
2010-06-07 14:55:32,014 INFO [pool-2-thread-1] jms.FatTransferObjectMessageConverter - message-processor:toMessage OrderID:171177
2010-06-07 14:55:32,125 INFO [pool-2-thread-1] jms.FatTransferObjectMessageConverter - message-processor:fromMessage
2010-06-07 14:55:32,125 INFO [pool-2-thread-1] jms.FatTransferObjectMessageConverter - message-processor:fromMessage

Code:
<<ibm mq configuration>>
	<bean id="common-ibmmq.queueConnectionFactory" class="com.ibm.mq.jms.MQConnectionFactory" lazy-init="true">
		<property name="queueManager" value="${mq.conn.fac.name.mgr}" />
		<property name="hostName" value="${mq.conn.fac.host}" />
		<property name="port" value="${mq.conn.fac.port}" />
		<property name="channel" value="${mq.conn.fac.channel}" />
		<property name="transportType" value="1" />				
	</bean>

	<bean id="common-ibmmq.baseJmsTemplate" abstract="true"
		class="org.springframework.jms.core.JmsTemplate" />

	<bean id="common-ibmmq.queueJmsTemplate" parent="common-ibmmq.baseJmsTemplate" lazy-init="true">
		<property name="connectionFactory" ref="common-ibmmq.queueConnectionFactory" />
	</bean>


	<<To Process>>
    <jms:outbound-channel-adapter id="fat.queueSender"
                                  channel="fat.toProcess" jms-template="fat.outboundProcessJmsTemplate"/>
                                  
    <bean id="fat.outboundProcessJmsTemplate" parent="common-ibmmq.queueJmsTemplate">
        <property name="messageConverter" ref="fat.processMessageConverter"/>
        <property name="defaultDestination" ref="common.sendQueue"/>
    </bean>     
    
    
    <bean id="fat.processMessageConverter" class="com.ubs.etdet.skore.jms.FatTransferObjectMessageConverter">
    </bean>
    
    
    
    <<From Process>
    
        <jms:message-driven-channel-adapter id="fat.processReader"
                                            container="fat.recvQueueContainer"
                                            message-converter="fat.processMessageConverter"
                                        channel="fat.toProcess"/> 
                                        
    <bean id="fat.recvQueueContainer" class="org.springframework.jms.listener.DefaultMessageListenerContainer" >
	        <property name="connectionFactory" ref="common-ibmmq.queueConnectionFactory"/>
        	<property name="destination" ref="common.fatRecvQueue"/>
        	<property name="sessionTransacted" value="true"/>
    </bean>                                        
                                        
                                        
    
public class FATMasterTransferObjectConverter extends MessageConverter
{

    
   
    @Override
    public Message toMessage(Object o, Session session)
            throws JMSException, MessageConversionException
    {
        if (o instanceof Master)
        {
           .. do stuff.
        }
    }

    @Override
    public MasterTransferObject fromMessage(Message message)
            throws JMSException, MessageConversionException
    {
    	
        if (message instanceof BytesMessage)
        {
            javax.jms.BytesMessage bm = (BytesMessage) message;

            ...construct object
            return master;
        }
    }
}
Why does current process have to wait for message to return message?