You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@servicemix.apache.org by "Willem Jiang (JIRA)" <ji...@apache.org> on 2009/11/03 05:13:53 UTC

[jira] Updated: (SMXCOMP-651) smx-camel errorHandler problem when in-only mep received, robust-in-only mep sent, fault returned, and handleFault="true"

     [ https://issues.apache.org/activemq/browse/SMXCOMP-651?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Willem Jiang updated SMXCOMP-651:
---------------------------------

    Attachment: smxcomp-651-new.patch

Attached smxcomp-651-new.patch which is created against latest trunk code.

> smx-camel errorHandler problem when in-only mep received, robust-in-only mep sent, fault returned, and handleFault="true"
> -------------------------------------------------------------------------------------------------------------------------
>
>                 Key: SMXCOMP-651
>                 URL: https://issues.apache.org/activemq/browse/SMXCOMP-651
>             Project: ServiceMix Components
>          Issue Type: Bug
>          Components: servicemix-camel
>    Affects Versions: servicemix-camel-2009.01
>            Reporter: Ron Gavlin
>         Attachments: smxcomp-651-new.patch, smxcomp-651-test-2009.01.patch, smxcomp-651-test.patch
>
>
> This patch adds a robust-in-only test, JbiRobustInOnlyWithFaultHandledTrueSpringDSLTest, that exposes a bug in the 2009.01 version of the component. It appears this bug is fixed with the camel-2.0-based re-write of the component. Will attach the test patch shortly.
> The stack trace generated when running test, testInOnlyWithFaultHandledByExceptionClause, using version servicemix-camel-2009.01is listed below:
> INFO  - ComponentMBeanImpl             - Initializing component: ID:10.10.10.10-124573db925-0:4
> INFO  - ComponentMBeanImpl             - Starting component: ID:10.10.10.10-124573db925-0:4
> ERROR - CamelJbiComponent              - Error processing exchange RobustInOnly[
>   id: ID:10.10.10.10-124573db925-3:0
>   status: Active
>   role: consumer
>   service: {urn:test}faulty-service
>   endpoint: endpoint
>   in: null
>   fault: <?xml version="1.0" encoding="UTF-8"?><fault/>
> ]
> java.lang.RuntimeException: javax.jbi.messaging.MessagingException: Fault not supported
> 	at org.apache.servicemix.camel.JbiExchange.createMessage(JbiExchange.java:179)
> 	at org.apache.servicemix.camel.JbiExchange.createFaultMessage(JbiExchange.java:156)
> 	at org.apache.servicemix.camel.JbiExchange.createFaultMessage(JbiExchange.java:1)
> 	at org.apache.camel.impl.DefaultExchange.getFault(DefaultExchange.java:259)
> 	at org.apache.servicemix.camel.JbiExchange.getFault(JbiExchange.java:81)
> 	at org.apache.servicemix.camel.JbiExchange.getFault(JbiExchange.java:1)
> 	at org.apache.camel.impl.DefaultExchange.getFault(DefaultExchange.java:254)
> 	at org.apache.servicemix.camel.JbiExchange.getFault(JbiExchange.java:76)
> 	at org.apache.servicemix.camel.JbiExchange.getFault(JbiExchange.java:1)
> 	at org.apache.servicemix.camel.CamelConsumerEndpoint.process(CamelConsumerEndpoint.java:64)
> 	at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:627)
> 	at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:598)
> 	at org.apache.servicemix.common.AsyncBaseLifeCycle.onMessageExchange(AsyncBaseLifeCycle.java:535)
> 	at org.apache.servicemix.common.SyncLifeCycleWrapper.onMessageExchange(SyncLifeCycleWrapper.java:60)
> 	at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:620)
> 	at org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:172)
> 	at org.apache.servicemix.jbi.nmr.flow.st.STFlow.doSend(STFlow.java:49)
> 	at org.apache.servicemix.jbi.nmr.flow.AbstractFlow.send(AbstractFlow.java:123)
> 	at org.apache.servicemix.jbi.nmr.DefaultBroker.sendExchangePacket(DefaultBroker.java:283)
> 	at org.apache.servicemix.jbi.container.JBIContainer.sendExchange(JBIContainer.java:894)
> 	at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryChannelImpl.java:395)
> 	at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(DeliveryChannelImpl.java:431)
> 	at org.apache.servicemix.components.util.PojoSupport.fail(PojoSupport.java:237)
> 	at org.apache.servicemix.camel.JbiInOnlyWithFaultHandledTrueSpringDSLTest$ReturnFaultComponent.onMessageExchange(JbiInOnlyWithFaultHandledTrueSpringDSLTest.java:101)
> 	at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:620)
> 	at org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:172)
> 	at org.apache.servicemix.jbi.nmr.flow.st.STFlow.doSend(STFlow.java:49)
> 	at org.apache.servicemix.jbi.nmr.flow.AbstractFlow.send(AbstractFlow.java:123)
> 	at org.apache.servicemix.jbi.nmr.DefaultBroker.sendExchangePacket(DefaultBroker.java:283)
> 	at org.apache.servicemix.jbi.container.JBIContainer.sendExchange(JBIContainer.java:894)
> 	at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryChannelImpl.java:395)
> 	at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(DeliveryChannelImpl.java:431)
> 	at org.apache.servicemix.common.EndpointDeliveryChannel.send(EndpointDeliveryChannel.java:88)
> 	at org.apache.servicemix.common.endpoints.SimpleEndpoint.send(SimpleEndpoint.java:70)
> 	at org.apache.servicemix.camel.CamelConsumerEndpoint.process(CamelConsumerEndpoint.java:89)
> 	at org.apache.servicemix.camel.JbiEndpoint$JbiProducer.process(JbiEndpoint.java:98)
> 	at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:84)
> 	at org.apache.servicemix.camel.su9.HandleFaultProcessor.process(HandleFaultProcessor.java:47)
> 	at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)
> 	at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:189)
> 	at org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:133)
> 	at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)
> 	at org.apache.camel.processor.interceptor.StreamCachingInterceptor.proceed(StreamCachingInterceptor.java:87)
> 	at org.apache.camel.processor.interceptor.StreamCachingInterceptor.process(StreamCachingInterceptor.java:82)
> 	at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:52)
> 	at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
> 	at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
> 	at org.apache.servicemix.camel.CamelProviderEndpoint.handleActiveProviderExchange(CamelProviderEndpoint.java:94)
> 	at org.apache.servicemix.camel.CamelProviderEndpoint.process(CamelProviderEndpoint.java:73)
> 	at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:627)
> 	at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:581)
> 	at org.apache.servicemix.common.AsyncBaseLifeCycle.onMessageExchange(AsyncBaseLifeCycle.java:535)
> 	at org.apache.servicemix.common.SyncLifeCycleWrapper.onMessageExchange(SyncLifeCycleWrapper.java:60)
> 	at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:620)
> 	at org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:172)
> 	at org.apache.servicemix.jbi.nmr.flow.st.STFlow.doSend(STFlow.java:49)
> 	at org.apache.servicemix.jbi.nmr.flow.AbstractFlow.send(AbstractFlow.java:123)
> 	at org.apache.servicemix.jbi.nmr.DefaultBroker.sendExchangePacket(DefaultBroker.java:283)
> 	at org.apache.servicemix.jbi.container.JBIContainer.sendExchange(JBIContainer.java:894)
> 	at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryChannelImpl.java:395)
> 	at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(DeliveryChannelImpl.java:431)
> 	at org.apache.servicemix.client.DefaultServiceMixClient.send(DefaultServiceMixClient.java:148)
> 	at org.apache.servicemix.camel.JbiInOnlyWithFaultHandledTrueSpringDSLTest.testInOnlyWithFaultHandledByExceptionClause(JbiInOnlyWithFaultHandledTrueSpringDSLTest.java:59)
> 	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 junit.framework.TestCase.runTest(TestCase.java:168)
> 	at junit.framework.TestCase.runBare(TestCase.java:134)
> 	at junit.framework.TestResult$1.protect(TestResult.java:110)
> 	at junit.framework.TestResult.runProtected(TestResult.java:128)
> 	at junit.framework.TestResult.run(TestResult.java:113)
> 	at junit.framework.TestCase.run(TestCase.java:124)
> 	at junit.framework.TestSuite.runTest(TestSuite.java:232)
> 	at junit.framework.TestSuite.run(TestSuite.java:227)
> 	at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:81)
> 	at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:45)
> 	at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
> 	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
> 	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
> 	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
> 	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
> Caused by: javax.jbi.messaging.MessagingException: Fault not supported
> 	at org.apache.servicemix.jbi.messaging.MessageExchangeImpl.setMessage(MessageExchangeImpl.java:366)
> 	at org.apache.servicemix.jbi.messaging.MessageExchangeImpl.setFault(MessageExchangeImpl.java:290)
> 	at org.apache.servicemix.camel.JbiExchange.createMessage(JbiExchange.java:166)
> 	... 81 more

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.