String replyXml = "<p:ProvisionResponse
xmlns:p=\"http://www.gammatele.com/provision\";>\n"
                                + "\t<p:RequestNum>" + reqID + 
"</p:RequestNum>\n"
                                + "</p:ProvisionResponse>";

NormalizedMessage replyMsg = exchange.createMessage();
                    
                        marshaler.marshal(exchange, replyMsg, 
XmlUtils.parseDoc(replyXml));
                        if (exchange instanceof InOut && exchange.getStatus()==
ExchangeStatus.ACTIVE) {
                        
                        exchange.setMessage(replyMsg, "out");
                                log.info("Out messages set ");
                        }
                        else{
                                log.info("Not instance of InOut ");
                                //inOut.setStatus(ExchangeStatus.ACTIVE);
                                //inOut.setOutMessage(replyMsg);                
                        }
                        channel.send(exchange);

The desired result is returned back to the sender but i'm just trying to
eliminate the errors thrown. The channel forwards the msg to the next
component even though an error was thrown. I also tried creating another
message exchange but that didnt solve the problem. tx



wellabadda wrote:
> 
> Thanks for ur prompt reply. I checked for the exchange status before
> calling the method:
> 
> if (exchange instanceof InOut && exchange.getStatus()==
> ExchangeStatus.ACTIVE) {
>                       
>                       exchange.setMessage(replyMsg, "out"); // causes the 
> error
>                               log.info("Out messages set ");
>       }
> tx
> 
> gnodet wrote:
>> 
>> Maybe the exchange is already DONE or in ERROR.
>> Check that the exchange status is active before processing it.
>> 
>> On Wed, Dec 10, 2008 at 12:21 PM, wellabadda <[EMAIL PROTECTED]> wrote:
>>>
>>> I'm using Servicemix-bean in the ServiceMix 3.3 version. Whenever I call
>>> the
>>> method inOut.setOutMessage or exchange.setMessage(normMsg, "out"), the
>>> "Out
>>> not Supported" error from the MessageExchangeImpl class is thrown even
>>> though I set the MEP to in-out in the http xbean file and the exchange
>>> is an
>>> instanceof InOut. This wasn't happening with the lwc when I extended
>>> OutBinding. I'm implementing the MessageExchangeListener.
>>> Thanks in advance.
>>> --
>>> View this message in context:
>>> http://www.nabble.com/Out-not-supported-error-tp20933419p20933419.html
>>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>>
>>>
>> 
>> 
>> 
>> -- 
>> Cheers,
>> Guillaume Nodet
>> ------------------------
>> Blog: http://gnodet.blogspot.com/
>> ------------------------
>> Open Source SOA
>> http://fusesource.com
>> 
>> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Out-not-supported-error-tp20933419p20933841.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to