UnsupportedOperationException thrown if @Consume method is not public
---------------------------------------------------------------------
Key: CAMEL-4994
URL: https://issues.apache.org/jira/browse/CAMEL-4994
Project: Camel
Issue Type: Improvement
Components: camel-spring
Affects Versions: 2.9.0
Reporter: alex hutter
Priority: Minor
If the org.apache.camel.Consume annotation is used on a method that is not
public (e.g. default visibility), then the following exception will be thrown
every time a message is delivered to that consumer and the message will
roll-back with the consumer never invoked.
2012-02-08 16:29:37,298 [Camel Thread 0 - JmsConsumer[paula.inprogress] WARN
org.apache.camel.component.jms.JmsMessageListenerContainer - Execution of JMS
message listener failed, and no ErrorHandler has been set.
org.apache.camel.RuntimeCamelException: java.lang.UnsupportedOperationException
at
org.apache.camel.util.ObjectHelper.wrapRuntimeCamelException(ObjectHelper.java:1139)
at
org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:115)
at
org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:560)
at
org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:498)
at
org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:467)
at
org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:325)
at
org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:243)
at
org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1058)
at
org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1050)
at
org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:947)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:680)
Caused by: java.lang.UnsupportedOperationException
at java.util.Collections$UnmodifiableMap.put(Collections.java:1285)
at
org.apache.camel.component.bean.BeanInfo.introspect(BeanInfo.java:256)
at
org.apache.camel.component.bean.BeanInfo.createInvocation(BeanInfo.java:136)
at
org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:142)
at
org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:109)
at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:103)
at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:85)
at
org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:92)
... 11 more
I appreacate that this not specifically a bug, so I am filing this as an
improvement. However this is a REALLY misleading error message. A more
specific error message would be greaty appreaceated and save a lot of time.
Thanks.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira