You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@camel.apache.org by "Bengt Rodehav (JIRA)" <ji...@apache.org> on 2010/11/20 18:43:24 UTC

[jira] Created: (CAMEL-3350) Camel context not started although the start() method succeeded

Camel context not started although the start() method succeeded
---------------------------------------------------------------

                 Key: CAMEL-3350
                 URL: https://issues.apache.org/activemq/browse/CAMEL-3350
             Project: Apache Camel
          Issue Type: Bug
          Components: camel-core
    Affects Versions: 2.5.0
            Reporter: Bengt Rodehav


I accidentally set the name of the context to null. and got the exception below:
\\
\\
{code}
2010-11-17 11:32:34,456 | WARN  | guration Updater | DefaultCamelContext              | e.camel.impl.DefaultCamelContext 1278 | Cannot start lifecycle strategy: org.apache.camel.management.DefaultManagementLifecycleStrategy@1060ee9. This strategy will be removed. Cause: java.lang.NullPointerException
org.apache.camel.RuntimeCamelException: java.lang.NullPointerException
	at org.apache.camel.util.ObjectHelper.wrapRuntimeCamelException(ObjectHelper.java:1140)
	at org.apache.camel.management.DefaultManagementLifecycleStrategy.onContextStart(DefaultManagementLifecycleStrategy.java:161)
	at org.apache.camel.impl.DefaultCamelContext.doStartCamel(DefaultCamelContext.java:1270)
	at org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:1213)
	at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:65)
	at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:52)
	at org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:1191)
	at se.digia.connect.core.service.RouteServiceBase.doStart(RouteServiceBase.java:51)
	at se.digia.connect.core.service.ServiceBase.start(ServiceBase.java:50)
	at se.digia.connect.services.skandia.filetransfer.FileTransferService.__start(FileTransferService.java:63)
	at se.digia.connect.services.skandia.filetransfer.FileTransferService.start(FileTransferService.java)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.6.0_07]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)[:1.6.0_07]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[:1.6.0_07]
	at java.lang.reflect.Method.invoke(Method.java:597)[:1.6.0_07]
	at org.apache.felix.ipojo.util.Callback.call(Callback.java:237)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
	at org.apache.felix.ipojo.util.Callback.call(Callback.java:193)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallback.call(LifecycleCallback.java:86)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallbackHandler.__stateChanged(LifecycleCallbackHandler.java:162)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallbackHandler.stateChanged(LifecycleCallbackHandler.java)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
	at org.apache.felix.ipojo.InstanceManager.setState(InstanceManager.java:441)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
	at org.apache.felix.ipojo.InstanceManager.start(InstanceManager.java:322)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
	at org.apache.felix.ipojo.InstanceManager.reconfigure(InstanceManager.java:1169)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
	at org.apache.felix.ipojo.IPojoFactory.reconfigure(IPojoFactory.java:481)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
	at org.apache.felix.ipojo.IPojoFactory.updated(IPojoFactory.java:648)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
	at org.apache.felix.cm.impl.ConfigurationManager$UpdateConfiguration.run(ConfigurationManager.java:1460)[5:org.apache.felix.configadmin:1.2.4]
	at org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:88)[5:org.apache.felix.configadmin:1.2.4]
Caused by: java.lang.NullPointerException
	at javax.management.ObjectName.quote(ObjectName.java:1846)[:1.6.0_07]
	at org.apache.camel.management.DefaultManagementNamingStrategy.getObjectNameForCamelContext(DefaultManagementNamingStrategy.java:95)
	at org.apache.camel.management.DefaultManagementLifecycleStrategy.onContextStart(DefaultManagementLifecycleStrategy.java:128)
	... 25 more
{code}
\\
The above exception was however caught and not rethrown which fooled me to believe that the context was successfully started while it in fact wasn't.

Immediately after the call to the context's start() method I check if the context is started using the getStatus() method. It is then reported as started despite the fact that it failed (due to the exception above).

I then started jconsole to see via JMX if the context is considered to be started but it's not. Sounds a lot like a bug to me. There should be a safe (and simple) way to find out (after having attempted to start the context) whether the context was successfully started or not.


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


[jira] Updated: (CAMEL-3350) Camel context not started although the start() method succeeded

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/activemq/browse/CAMEL-3350?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Claus Ibsen updated CAMEL-3350:
-------------------------------

    Issue Type: Improvement  (was: Bug)

> Camel context not started although the start() method succeeded
> ---------------------------------------------------------------
>
>                 Key: CAMEL-3350
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-3350
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 2.5.0
>            Reporter: Bengt Rodehav
>            Assignee: Claus Ibsen
>
> I accidentally set the name of the context to null. and got the exception below:
> \\
> \\
> {code}
> 2010-11-17 11:32:34,456 | WARN  | guration Updater | DefaultCamelContext              | e.camel.impl.DefaultCamelContext 1278 | Cannot start lifecycle strategy: org.apache.camel.management.DefaultManagementLifecycleStrategy@1060ee9. This strategy will be removed. Cause: java.lang.NullPointerException
> org.apache.camel.RuntimeCamelException: java.lang.NullPointerException
> 	at org.apache.camel.util.ObjectHelper.wrapRuntimeCamelException(ObjectHelper.java:1140)
> 	at org.apache.camel.management.DefaultManagementLifecycleStrategy.onContextStart(DefaultManagementLifecycleStrategy.java:161)
> 	at org.apache.camel.impl.DefaultCamelContext.doStartCamel(DefaultCamelContext.java:1270)
> 	at org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:1213)
> 	at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:65)
> 	at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:52)
> 	at org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:1191)
> 	at se.digia.connect.core.service.RouteServiceBase.doStart(RouteServiceBase.java:51)
> 	at se.digia.connect.core.service.ServiceBase.start(ServiceBase.java:50)
> 	at se.digia.connect.services.skandia.filetransfer.FileTransferService.__start(FileTransferService.java:63)
> 	at se.digia.connect.services.skandia.filetransfer.FileTransferService.start(FileTransferService.java)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.6.0_07]
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)[:1.6.0_07]
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[:1.6.0_07]
> 	at java.lang.reflect.Method.invoke(Method.java:597)[:1.6.0_07]
> 	at org.apache.felix.ipojo.util.Callback.call(Callback.java:237)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.util.Callback.call(Callback.java:193)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallback.call(LifecycleCallback.java:86)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallbackHandler.__stateChanged(LifecycleCallbackHandler.java:162)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallbackHandler.stateChanged(LifecycleCallbackHandler.java)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.InstanceManager.setState(InstanceManager.java:441)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.InstanceManager.start(InstanceManager.java:322)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.InstanceManager.reconfigure(InstanceManager.java:1169)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.IPojoFactory.reconfigure(IPojoFactory.java:481)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.IPojoFactory.updated(IPojoFactory.java:648)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.cm.impl.ConfigurationManager$UpdateConfiguration.run(ConfigurationManager.java:1460)[5:org.apache.felix.configadmin:1.2.4]
> 	at org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:88)[5:org.apache.felix.configadmin:1.2.4]
> Caused by: java.lang.NullPointerException
> 	at javax.management.ObjectName.quote(ObjectName.java:1846)[:1.6.0_07]
> 	at org.apache.camel.management.DefaultManagementNamingStrategy.getObjectNameForCamelContext(DefaultManagementNamingStrategy.java:95)
> 	at org.apache.camel.management.DefaultManagementLifecycleStrategy.onContextStart(DefaultManagementLifecycleStrategy.java:128)
> 	... 25 more
> {code}
> \\
> The above exception was however caught and not rethrown which fooled me to believe that the context was successfully started while it in fact wasn't.
> Immediately after the call to the context's start() method I check if the context is started using the getStatus() method. It is then reported as started despite the fact that it failed (due to the exception above).
> I then started jconsole to see via JMX if the context is considered to be started but it's not. Sounds a lot like a bug to me. There should be a safe (and simple) way to find out (after having attempted to start the context) whether the context was successfully started or not.

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


[jira] Commented: (CAMEL-3350) Camel context not started although the start() method succeeded

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-3350?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=63459#action_63459 ] 

Claus Ibsen commented on CAMEL-3350:
------------------------------------

Yeah calling start will now fail fast in case any of the lifecycle strategy fails such as the JMX.

> Camel context not started although the start() method succeeded
> ---------------------------------------------------------------
>
>                 Key: CAMEL-3350
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-3350
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 2.5.0
>            Reporter: Bengt Rodehav
>            Assignee: Claus Ibsen
>             Fix For: 2.6.0
>
>
> I accidentally set the name of the context to null. and got the exception below:
> \\
> \\
> {code}
> 2010-11-17 11:32:34,456 | WARN  | guration Updater | DefaultCamelContext              | e.camel.impl.DefaultCamelContext 1278 | Cannot start lifecycle strategy: org.apache.camel.management.DefaultManagementLifecycleStrategy@1060ee9. This strategy will be removed. Cause: java.lang.NullPointerException
> org.apache.camel.RuntimeCamelException: java.lang.NullPointerException
> 	at org.apache.camel.util.ObjectHelper.wrapRuntimeCamelException(ObjectHelper.java:1140)
> 	at org.apache.camel.management.DefaultManagementLifecycleStrategy.onContextStart(DefaultManagementLifecycleStrategy.java:161)
> 	at org.apache.camel.impl.DefaultCamelContext.doStartCamel(DefaultCamelContext.java:1270)
> 	at org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:1213)
> 	at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:65)
> 	at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:52)
> 	at org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:1191)
> 	at se.digia.connect.core.service.RouteServiceBase.doStart(RouteServiceBase.java:51)
> 	at se.digia.connect.core.service.ServiceBase.start(ServiceBase.java:50)
> 	at se.digia.connect.services.skandia.filetransfer.FileTransferService.__start(FileTransferService.java:63)
> 	at se.digia.connect.services.skandia.filetransfer.FileTransferService.start(FileTransferService.java)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.6.0_07]
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)[:1.6.0_07]
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[:1.6.0_07]
> 	at java.lang.reflect.Method.invoke(Method.java:597)[:1.6.0_07]
> 	at org.apache.felix.ipojo.util.Callback.call(Callback.java:237)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.util.Callback.call(Callback.java:193)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallback.call(LifecycleCallback.java:86)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallbackHandler.__stateChanged(LifecycleCallbackHandler.java:162)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallbackHandler.stateChanged(LifecycleCallbackHandler.java)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.InstanceManager.setState(InstanceManager.java:441)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.InstanceManager.start(InstanceManager.java:322)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.InstanceManager.reconfigure(InstanceManager.java:1169)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.IPojoFactory.reconfigure(IPojoFactory.java:481)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.IPojoFactory.updated(IPojoFactory.java:648)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.cm.impl.ConfigurationManager$UpdateConfiguration.run(ConfigurationManager.java:1460)[5:org.apache.felix.configadmin:1.2.4]
> 	at org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:88)[5:org.apache.felix.configadmin:1.2.4]
> Caused by: java.lang.NullPointerException
> 	at javax.management.ObjectName.quote(ObjectName.java:1846)[:1.6.0_07]
> 	at org.apache.camel.management.DefaultManagementNamingStrategy.getObjectNameForCamelContext(DefaultManagementNamingStrategy.java:95)
> 	at org.apache.camel.management.DefaultManagementLifecycleStrategy.onContextStart(DefaultManagementLifecycleStrategy.java:128)
> 	... 25 more
> {code}
> \\
> The above exception was however caught and not rethrown which fooled me to believe that the context was successfully started while it in fact wasn't.
> Immediately after the call to the context's start() method I check if the context is started using the getStatus() method. It is then reported as started despite the fact that it failed (due to the exception above).
> I then started jconsole to see via JMX if the context is considered to be started but it's not. Sounds a lot like a bug to me. There should be a safe (and simple) way to find out (after having attempted to start the context) whether the context was successfully started or not.

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


[jira] Resolved: (CAMEL-3350) Camel context not started although the start() method succeeded

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/activemq/browse/CAMEL-3350?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Claus Ibsen resolved CAMEL-3350.
--------------------------------

       Resolution: Fixed
    Fix Version/s: 2.6.0

trunk: 1037696.

Camel now fails fast instead of WARN logging. 

> Camel context not started although the start() method succeeded
> ---------------------------------------------------------------
>
>                 Key: CAMEL-3350
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-3350
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 2.5.0
>            Reporter: Bengt Rodehav
>            Assignee: Claus Ibsen
>             Fix For: 2.6.0
>
>
> I accidentally set the name of the context to null. and got the exception below:
> \\
> \\
> {code}
> 2010-11-17 11:32:34,456 | WARN  | guration Updater | DefaultCamelContext              | e.camel.impl.DefaultCamelContext 1278 | Cannot start lifecycle strategy: org.apache.camel.management.DefaultManagementLifecycleStrategy@1060ee9. This strategy will be removed. Cause: java.lang.NullPointerException
> org.apache.camel.RuntimeCamelException: java.lang.NullPointerException
> 	at org.apache.camel.util.ObjectHelper.wrapRuntimeCamelException(ObjectHelper.java:1140)
> 	at org.apache.camel.management.DefaultManagementLifecycleStrategy.onContextStart(DefaultManagementLifecycleStrategy.java:161)
> 	at org.apache.camel.impl.DefaultCamelContext.doStartCamel(DefaultCamelContext.java:1270)
> 	at org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:1213)
> 	at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:65)
> 	at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:52)
> 	at org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:1191)
> 	at se.digia.connect.core.service.RouteServiceBase.doStart(RouteServiceBase.java:51)
> 	at se.digia.connect.core.service.ServiceBase.start(ServiceBase.java:50)
> 	at se.digia.connect.services.skandia.filetransfer.FileTransferService.__start(FileTransferService.java:63)
> 	at se.digia.connect.services.skandia.filetransfer.FileTransferService.start(FileTransferService.java)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.6.0_07]
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)[:1.6.0_07]
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[:1.6.0_07]
> 	at java.lang.reflect.Method.invoke(Method.java:597)[:1.6.0_07]
> 	at org.apache.felix.ipojo.util.Callback.call(Callback.java:237)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.util.Callback.call(Callback.java:193)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallback.call(LifecycleCallback.java:86)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallbackHandler.__stateChanged(LifecycleCallbackHandler.java:162)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallbackHandler.stateChanged(LifecycleCallbackHandler.java)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.InstanceManager.setState(InstanceManager.java:441)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.InstanceManager.start(InstanceManager.java:322)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.InstanceManager.reconfigure(InstanceManager.java:1169)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.IPojoFactory.reconfigure(IPojoFactory.java:481)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.IPojoFactory.updated(IPojoFactory.java:648)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.cm.impl.ConfigurationManager$UpdateConfiguration.run(ConfigurationManager.java:1460)[5:org.apache.felix.configadmin:1.2.4]
> 	at org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:88)[5:org.apache.felix.configadmin:1.2.4]
> Caused by: java.lang.NullPointerException
> 	at javax.management.ObjectName.quote(ObjectName.java:1846)[:1.6.0_07]
> 	at org.apache.camel.management.DefaultManagementNamingStrategy.getObjectNameForCamelContext(DefaultManagementNamingStrategy.java:95)
> 	at org.apache.camel.management.DefaultManagementLifecycleStrategy.onContextStart(DefaultManagementLifecycleStrategy.java:128)
> 	... 25 more
> {code}
> \\
> The above exception was however caught and not rethrown which fooled me to believe that the context was successfully started while it in fact wasn't.
> Immediately after the call to the context's start() method I check if the context is started using the getStatus() method. It is then reported as started despite the fact that it failed (due to the exception above).
> I then started jconsole to see via JMX if the context is considered to be started but it's not. Sounds a lot like a bug to me. There should be a safe (and simple) way to find out (after having attempted to start the context) whether the context was successfully started or not.

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


[jira] Commented: (CAMEL-3350) Camel context not started although the start() method succeeded

Posted by "Bengt Rodehav (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-3350?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=63464#action_63464 ] 

Bengt Rodehav commented on CAMEL-3350:
--------------------------------------

Perfect Claus. Then I agree that this issue is indeed fixed.

Thanks!

> Camel context not started although the start() method succeeded
> ---------------------------------------------------------------
>
>                 Key: CAMEL-3350
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-3350
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 2.5.0
>            Reporter: Bengt Rodehav
>            Assignee: Claus Ibsen
>             Fix For: 2.6.0
>
>
> I accidentally set the name of the context to null. and got the exception below:
> \\
> \\
> {code}
> 2010-11-17 11:32:34,456 | WARN  | guration Updater | DefaultCamelContext              | e.camel.impl.DefaultCamelContext 1278 | Cannot start lifecycle strategy: org.apache.camel.management.DefaultManagementLifecycleStrategy@1060ee9. This strategy will be removed. Cause: java.lang.NullPointerException
> org.apache.camel.RuntimeCamelException: java.lang.NullPointerException
> 	at org.apache.camel.util.ObjectHelper.wrapRuntimeCamelException(ObjectHelper.java:1140)
> 	at org.apache.camel.management.DefaultManagementLifecycleStrategy.onContextStart(DefaultManagementLifecycleStrategy.java:161)
> 	at org.apache.camel.impl.DefaultCamelContext.doStartCamel(DefaultCamelContext.java:1270)
> 	at org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:1213)
> 	at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:65)
> 	at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:52)
> 	at org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:1191)
> 	at se.digia.connect.core.service.RouteServiceBase.doStart(RouteServiceBase.java:51)
> 	at se.digia.connect.core.service.ServiceBase.start(ServiceBase.java:50)
> 	at se.digia.connect.services.skandia.filetransfer.FileTransferService.__start(FileTransferService.java:63)
> 	at se.digia.connect.services.skandia.filetransfer.FileTransferService.start(FileTransferService.java)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.6.0_07]
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)[:1.6.0_07]
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[:1.6.0_07]
> 	at java.lang.reflect.Method.invoke(Method.java:597)[:1.6.0_07]
> 	at org.apache.felix.ipojo.util.Callback.call(Callback.java:237)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.util.Callback.call(Callback.java:193)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallback.call(LifecycleCallback.java:86)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallbackHandler.__stateChanged(LifecycleCallbackHandler.java:162)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallbackHandler.stateChanged(LifecycleCallbackHandler.java)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.InstanceManager.setState(InstanceManager.java:441)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.InstanceManager.start(InstanceManager.java:322)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.InstanceManager.reconfigure(InstanceManager.java:1169)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.IPojoFactory.reconfigure(IPojoFactory.java:481)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.IPojoFactory.updated(IPojoFactory.java:648)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.cm.impl.ConfigurationManager$UpdateConfiguration.run(ConfigurationManager.java:1460)[5:org.apache.felix.configadmin:1.2.4]
> 	at org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:88)[5:org.apache.felix.configadmin:1.2.4]
> Caused by: java.lang.NullPointerException
> 	at javax.management.ObjectName.quote(ObjectName.java:1846)[:1.6.0_07]
> 	at org.apache.camel.management.DefaultManagementNamingStrategy.getObjectNameForCamelContext(DefaultManagementNamingStrategy.java:95)
> 	at org.apache.camel.management.DefaultManagementLifecycleStrategy.onContextStart(DefaultManagementLifecycleStrategy.java:128)
> 	... 25 more
> {code}
> \\
> The above exception was however caught and not rethrown which fooled me to believe that the context was successfully started while it in fact wasn't.
> Immediately after the call to the context's start() method I check if the context is started using the getStatus() method. It is then reported as started despite the fact that it failed (due to the exception above).
> I then started jconsole to see via JMX if the context is considered to be started but it's not. Sounds a lot like a bug to me. There should be a safe (and simple) way to find out (after having attempted to start the context) whether the context was successfully started or not.

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


[jira] Commented: (CAMEL-3350) Camel context not started although the start() method succeeded

Posted by "Bengt Rodehav (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/CAMEL-3350?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=63443#action_63443 ] 

Bengt Rodehav commented on CAMEL-3350:
--------------------------------------

Claus, I have now tested your fix in trunc. Yes, setting a name of null now causes an exception to be thrown - in that respect it works.

However, I still need a safe way to know that I succeeded in starting the camel context. Now that you eliminated this problem
(setting the name to null), does that mean that an exception will always be thrown if the context could not be started? Or,
conversely, if a call to CamelContext.start() returns without throwing an exception, does that mean that I managed to start the
context?

Also, it shouldn't be possible for the camel context to report that it is started while JMX does not show the context and
when in fact it didn't succeed. To me it seems like this issue isn't really resolved yet - unless setting the name to null was the only
thing that could possibly cause this situation.



> Camel context not started although the start() method succeeded
> ---------------------------------------------------------------
>
>                 Key: CAMEL-3350
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-3350
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 2.5.0
>            Reporter: Bengt Rodehav
>            Assignee: Claus Ibsen
>             Fix For: 2.6.0
>
>
> I accidentally set the name of the context to null. and got the exception below:
> \\
> \\
> {code}
> 2010-11-17 11:32:34,456 | WARN  | guration Updater | DefaultCamelContext              | e.camel.impl.DefaultCamelContext 1278 | Cannot start lifecycle strategy: org.apache.camel.management.DefaultManagementLifecycleStrategy@1060ee9. This strategy will be removed. Cause: java.lang.NullPointerException
> org.apache.camel.RuntimeCamelException: java.lang.NullPointerException
> 	at org.apache.camel.util.ObjectHelper.wrapRuntimeCamelException(ObjectHelper.java:1140)
> 	at org.apache.camel.management.DefaultManagementLifecycleStrategy.onContextStart(DefaultManagementLifecycleStrategy.java:161)
> 	at org.apache.camel.impl.DefaultCamelContext.doStartCamel(DefaultCamelContext.java:1270)
> 	at org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:1213)
> 	at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:65)
> 	at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:52)
> 	at org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:1191)
> 	at se.digia.connect.core.service.RouteServiceBase.doStart(RouteServiceBase.java:51)
> 	at se.digia.connect.core.service.ServiceBase.start(ServiceBase.java:50)
> 	at se.digia.connect.services.skandia.filetransfer.FileTransferService.__start(FileTransferService.java:63)
> 	at se.digia.connect.services.skandia.filetransfer.FileTransferService.start(FileTransferService.java)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.6.0_07]
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)[:1.6.0_07]
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[:1.6.0_07]
> 	at java.lang.reflect.Method.invoke(Method.java:597)[:1.6.0_07]
> 	at org.apache.felix.ipojo.util.Callback.call(Callback.java:237)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.util.Callback.call(Callback.java:193)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallback.call(LifecycleCallback.java:86)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallbackHandler.__stateChanged(LifecycleCallbackHandler.java:162)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallbackHandler.stateChanged(LifecycleCallbackHandler.java)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.InstanceManager.setState(InstanceManager.java:441)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.InstanceManager.start(InstanceManager.java:322)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.InstanceManager.reconfigure(InstanceManager.java:1169)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.IPojoFactory.reconfigure(IPojoFactory.java:481)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.IPojoFactory.updated(IPojoFactory.java:648)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.cm.impl.ConfigurationManager$UpdateConfiguration.run(ConfigurationManager.java:1460)[5:org.apache.felix.configadmin:1.2.4]
> 	at org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:88)[5:org.apache.felix.configadmin:1.2.4]
> Caused by: java.lang.NullPointerException
> 	at javax.management.ObjectName.quote(ObjectName.java:1846)[:1.6.0_07]
> 	at org.apache.camel.management.DefaultManagementNamingStrategy.getObjectNameForCamelContext(DefaultManagementNamingStrategy.java:95)
> 	at org.apache.camel.management.DefaultManagementLifecycleStrategy.onContextStart(DefaultManagementLifecycleStrategy.java:128)
> 	... 25 more
> {code}
> \\
> The above exception was however caught and not rethrown which fooled me to believe that the context was successfully started while it in fact wasn't.
> Immediately after the call to the context's start() method I check if the context is started using the getStatus() method. It is then reported as started despite the fact that it failed (due to the exception above).
> I then started jconsole to see via JMX if the context is considered to be started but it's not. Sounds a lot like a bug to me. There should be a safe (and simple) way to find out (after having attempted to start the context) whether the context was successfully started or not.

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


[jira] Assigned: (CAMEL-3350) Camel context not started although the start() method succeeded

Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/activemq/browse/CAMEL-3350?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Claus Ibsen reassigned CAMEL-3350:
----------------------------------

    Assignee: Claus Ibsen

> Camel context not started although the start() method succeeded
> ---------------------------------------------------------------
>
>                 Key: CAMEL-3350
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-3350
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-core
>    Affects Versions: 2.5.0
>            Reporter: Bengt Rodehav
>            Assignee: Claus Ibsen
>
> I accidentally set the name of the context to null. and got the exception below:
> \\
> \\
> {code}
> 2010-11-17 11:32:34,456 | WARN  | guration Updater | DefaultCamelContext              | e.camel.impl.DefaultCamelContext 1278 | Cannot start lifecycle strategy: org.apache.camel.management.DefaultManagementLifecycleStrategy@1060ee9. This strategy will be removed. Cause: java.lang.NullPointerException
> org.apache.camel.RuntimeCamelException: java.lang.NullPointerException
> 	at org.apache.camel.util.ObjectHelper.wrapRuntimeCamelException(ObjectHelper.java:1140)
> 	at org.apache.camel.management.DefaultManagementLifecycleStrategy.onContextStart(DefaultManagementLifecycleStrategy.java:161)
> 	at org.apache.camel.impl.DefaultCamelContext.doStartCamel(DefaultCamelContext.java:1270)
> 	at org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:1213)
> 	at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:65)
> 	at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:52)
> 	at org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:1191)
> 	at se.digia.connect.core.service.RouteServiceBase.doStart(RouteServiceBase.java:51)
> 	at se.digia.connect.core.service.ServiceBase.start(ServiceBase.java:50)
> 	at se.digia.connect.services.skandia.filetransfer.FileTransferService.__start(FileTransferService.java:63)
> 	at se.digia.connect.services.skandia.filetransfer.FileTransferService.start(FileTransferService.java)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.6.0_07]
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)[:1.6.0_07]
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[:1.6.0_07]
> 	at java.lang.reflect.Method.invoke(Method.java:597)[:1.6.0_07]
> 	at org.apache.felix.ipojo.util.Callback.call(Callback.java:237)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.util.Callback.call(Callback.java:193)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallback.call(LifecycleCallback.java:86)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallbackHandler.__stateChanged(LifecycleCallbackHandler.java:162)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.handlers.lifecycle.callback.LifecycleCallbackHandler.stateChanged(LifecycleCallbackHandler.java)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.InstanceManager.setState(InstanceManager.java:441)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.InstanceManager.start(InstanceManager.java:322)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.InstanceManager.reconfigure(InstanceManager.java:1169)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.IPojoFactory.reconfigure(IPojoFactory.java:481)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.ipojo.IPojoFactory.updated(IPojoFactory.java:648)[77:org.apache.felix.ipojo:1.7.0.SNAPSHOT]
> 	at org.apache.felix.cm.impl.ConfigurationManager$UpdateConfiguration.run(ConfigurationManager.java:1460)[5:org.apache.felix.configadmin:1.2.4]
> 	at org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:88)[5:org.apache.felix.configadmin:1.2.4]
> Caused by: java.lang.NullPointerException
> 	at javax.management.ObjectName.quote(ObjectName.java:1846)[:1.6.0_07]
> 	at org.apache.camel.management.DefaultManagementNamingStrategy.getObjectNameForCamelContext(DefaultManagementNamingStrategy.java:95)
> 	at org.apache.camel.management.DefaultManagementLifecycleStrategy.onContextStart(DefaultManagementLifecycleStrategy.java:128)
> 	... 25 more
> {code}
> \\
> The above exception was however caught and not rethrown which fooled me to believe that the context was successfully started while it in fact wasn't.
> Immediately after the call to the context's start() method I check if the context is started using the getStatus() method. It is then reported as started despite the fact that it failed (due to the exception above).
> I then started jconsole to see via JMX if the context is considered to be started but it's not. Sounds a lot like a bug to me. There should be a safe (and simple) way to find out (after having attempted to start the context) whether the context was successfully started or not.

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