How stable is this release? I'm a little concerned with the fact that the
release that is recommended on the web site is 3.2.1 and it doesn't handle a
simple update of a SA.  Is servicmix stable enough for a production
environment?


I will try version 3.3.

I'm assuming since 3.3 is not the recommended release, it's not stable?

Thank you for the input.


gnodet wrote:
> 
> I've already seen this error, but it usually happen when there is a
> previous deployment problem.
> In this case, I'm not sure what happen exactly, but the problem should
> be gone with ServiceMix 3.3 already (because of some internal changes
> which got rid of xbean-kernel which is causing this issue).
> Could you grab a 3.3-SNAPSHOT distribution and see what it gives when
> you repeat the same steps ?
> 
> Another deployment option is to copy the SA to the deploy dir, and, to
> deploy a new version, just overwrite the file.
> 
> On Thu, Jul 3, 2008 at 6:51 PM, aknapp <[EMAIL PROTECTED]> wrote:
>>
>> Using the latest version of servicemix:
>> Apache ServiceMix 3.2.1 in a Linux environment.
>>
>> I'm following the tutorial #3 (
>> http://servicemix.apache.org/3-beginner-using-apache-camel-inside-servicemix.html
>> Beginner - Using Apache Camel inside ServiceMix ) step by step and was
>> able
>> to successfully deploy the SA without any issues.
>>
>> tutorial-camel-sa]# mvn jbi:projectDeploy -DforceUpdate=true
>>
>> This is great and works!
>>
>> ServiceMixLog:
>> ----------------
>> INFO  - ComponentMBeanImpl             - Starting component:
>> servicemix-jms
>> INFO  - ComponentMBeanImpl             - Starting component:
>> servicemix-camel
>>
>> INFO  - tutorial                       - Exchange[Message: Hello World!]
>> INFO  - tutorial                       - Exchange[Message: Hello World!]
>> INFO  - tutorial                       - Exchange[Message: Hello World!]
>> .
>> .
>> .
>>
>>
>> My problem occurs when I redploy this SA. I would like to think that in a
>> production environment, we can redoply SAs without stopping service mix.
>> Hence the '-DforceUpdate=true' variable. An exception is thrown stating
>> that
>> 'A kernel is already registered with the name
>> servicemix-camel/tutorial-camel-su'.
>> Can someone please inform me of what I'm doing wrong or how to resolve
>> this
>> issue?
>>
>> Any advice would be much appreciated.
>>
>>
>> Below is a trace of the service mix log after redeploying the SA again.
>>
>> tutorial-camel-sa]# mvn jbi:projectDeploy -DforceUpdate=true
>>
>>
>> ServiceMixLog on a Redeploy:
>> ---------------------------
>>
>> INFO  - ServiceAssemblyLifeCycle       - Stopping service assembly:
>> tutorial-sa
>> INFO  - ServiceUnitLifeCycle           - Stopping service unit:
>> tutorial-file-su
>> INFO  - ServiceUnitLifeCycle           - Stopping service unit:
>> tutorial-camel
>> INFO  - ServiceUnitLifeCycle           - Stopping service unit:
>> tutorial-jms
>> INFO  - ServiceAssemblyLifeCycle       - Shutting down service assembly:
>> tutorial-sa
>> INFO  - ServiceUnitLifeCycle           - Shutting down service unit:
>> tutorial-file-su
>> INFO  - ServiceUnitLifeCycle           - Shutting down service unit:
>> tutorial-camel
>> INFO  - ServiceUnitLifeCycle           - Shutting down service unit:
>> tutorial-jms
>> INFO  - JBIContainer                   - Deactivating component
>> servicemix-jms
>> INFO  - EnvironmentContext             - Removed directory structure for
>> component [version]: servicemix-jms [servicemix-jms]
>> INFO  - ComponentMBeanImpl             - Starting component:
>> servicemix-jms
>> INFO  - ComponentMBeanImpl             - Initializing component:
>> servicemix-jms
>> INFO  - ServiceAssemblyLifeCycle       - Starting service assembly:
>> tutorial-sa
>> INFO  - ServiceUnitLifeCycle           - Initializing service unit:
>> tutorial-file-su
>> INFO  - ServiceUnitLifeCycle           - Initializing service unit:
>> tutorial-camel
>> INFO  - ServiceUnitLifeCycle           - Initializing service unit:
>> tutorial-jms
>> INFO  - ServiceUnitLifeCycle           - Starting service unit:
>> tutorial-file-su
>> INFO  - ServiceUnitLifeCycle           - Starting service unit:
>> tutorial-camel
>> INFO  - StatisticsService              - Unable to unregister endpoint
>> statistics MBean: null
>> INFO  - JBIContainer                   - Deactivating component
>> servicemix-camel
>> INFO  - EnvironmentContext             - Removed directory structure for
>> component [version]: servicemix-camel [servicemix-camel]
>> INFO  - ComponentMBeanImpl             - Starting component:
>> servicemix-camel
>> INFO  - ComponentMBeanImpl             - Initializing component:
>> servicemix-camel
>> INFO  - ServiceUnitLifeCycle           - Starting service unit:
>> tutorial-jms
>> INFO  - DeploymentService              - UnDeployed ServiceUnit
>> tutorial-camel-jms-su from Component: servicemix-jms
>> ERROR - AutoDeploymentService          - Failed to update Service
>> Assembly:
>> tutorial-camel-sa
>> java.lang.Exception: <?xml version="1.0" encoding="UTF-8"?>
>> <jbi-task xmlns="http://java.sun.com/xml/ns/jbi/management-message";
>> version="1.0">
>> <jbi-task-result>
>> <frmwk-task-result>
>> <frmwk-task-result-details>
>> <task-result-details>
>> <task-id>deploy</task-id>
>> <task-result>FAILED</task-result>
>> <message-type>ERROR</message-type>
>> </task-result-details>
>> </frmwk-task-result-details>
>> </frmwk-task-result>
>> <component-task-result
>> xmlns="http://java.sun.com/xml/ns/jbi/management-message";>
>>        <component-name>servicemix-camel</component-name>
>>        <component-task-result-details>
>>                <task-result-details>
>>                        <task-id>deploy</task-id>
>>                        <task-result>FAILED</task-result>
>>                        <message-type>ERROR</message-type>
>>                        <task-status-msg>
>> <msg-loc-info>
>> <loc-token/>
>> <loc-message>Unable to deploy service unit</loc-message>
>> </msg-loc-info>
>> </task-status-msg>
>>                        <exception-info>
>>                                <nesting-level>1</nesting-level>
>>                                <msg-loc-info>
>>                                        <loc-token/>
>>                                        <loc-message>A kernel is already
>> registered with the name servicemix-camel/tutorial-camel-su</loc-message>
>>
>> <stack-trace><![CDATA[org.apache.xbean.kernel.KernelAlreadyExistsException:
>> A kernel is already registered with the name
>> servicemix-camel/tutorial-camel-su
>>        at
>> org.apache.xbean.kernel.KernelFactory.createKernel(KernelFactory.java:175)
>>        at
>> org.apache.servicemix.common.xbean.AbstractXBeanDeployer.deploy(AbstractXBeanDeployer.java:65)
>>        at
>> org.apache.servicemix.camel.CamelSpringDeployer.deploy(CamelSpringDeployer.java:79)
>>        at
>> org.apache.servicemix.common.BaseServiceUnitManager.doDeploy(BaseServiceUnitManager.java:88)
>>        at
>> org.apache.servicemix.common.BaseServiceUnitManager.deploy(BaseServiceUnitManager.java:69)
>>        at
>> org.apache.servicemix.jbi.framework.DeploymentService.deployServiceAssembly(DeploymentService.java:508)
>>        at
>> org.apache.servicemix.jbi.framework.AutoDeploymentService.updateServiceAssembly(AutoDeploymentService.java:350)
>>        at
>> org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:253)
>>        at
>> org.apache.servicemix.jbi.framework.AutoDeploymentService.updateExternalArchive(AutoDeploymentService.java:201)
>>        at
>> org.apache.servicemix.jbi.container.JBIContainer.updateExternalArchive(JBIContainer.java:476)
>>        at
>> org.apache.servicemix.jbi.container.JBIContainer.updateExternalArchive(JBIContainer.java:486)
>>        at
>> org.apache.servicemix.jbi.framework.AdminCommandsService.deployServiceAssembly(AdminCommandsService.java:209)
>>        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
>> org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.java:216)
>>        at
>> org.apache.servicemix.jbi.management.BaseStandardMBean.invoke(BaseStandardMBean.java:323)
>>        at
>> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
>>        at
>> com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
>>        at
>> javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
>>        at
>> javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
>>        at
>> javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
>>        at java.security.AccessController.doPrivileged(Native Method)
>>        at
>> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366)
>>        at
>> javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
>>        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
>> sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
>>        at sun.rmi.transport.Transport$1.run(Transport.java:159)
>>        at java.security.AccessController.doPrivileged(Native Method)
>>        at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>>        at
>> sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
>>        at
>> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
>>        at
>> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
>>        at
>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>>        at
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>>        at java.lang.Thread.run(Thread.java:619)
>> ]]></stack-trace>
>>                                </msg-loc-info>
>>                        </exception-info>
>>                </task-result-details>
>>        </component-task-result-details>
>> </component-task-result>
>> <component-task-result
>> xmlns="http://java.sun.com/xml/ns/jbi/management-message";>
>>        <component-name>servicemix-jms</component-name>
>>        <component-task-result-details>
>>                <task-result-details>
>>                        <task-id>deploy</task-id>
>>                        <task-result>SUCCESS</task-result>
>>                </task-result-details>
>>        </component-task-result-details>
>> </component-task-result>
>> </jbi-task-result>
>> </jbi-task>
>>
>>        at
>> org.apache.servicemix.jbi.framework.ManagementSupport.failure(ManagementSupport.java:125)
>>        at
>> org.apache.servicemix.jbi.framework.ManagementSupport.failure(ManagementSupport.java:111)
>>        at
>> org.apache.servicemix.jbi.framework.DeploymentService.deployServiceAssembly(DeploymentService.java:543)
>>        at
>> org.apache.servicemix.jbi.framework.AutoDeploymentService.updateServiceAssembly(AutoDeploymentService.java:350)
>>        at
>> org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:253)
>>        at
>> org.apache.servicemix.jbi.framework.AutoDeploymentService.updateExternalArchive(AutoDeploymentService.java:201)
>>        at
>> org.apache.servicemix.jbi.container.JBIContainer.updateExternalArchive(JBIContainer.java:476)
>>        at
>> org.apache.servicemix.jbi.container.JBIContainer.updateExternalArchive(JBIContainer.java:486)
>>        at
>> org.apache.servicemix.jbi.framework.AdminCommandsService.deployServiceAssembly(AdminCommandsService.java:209)
>>        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
>> org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.java:216)
>>        at
>> org.apache.servicemix.jbi.management.BaseStandardMBean.invoke(BaseStandardMBean.java:323)
>>        at
>> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
>>        at
>> com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
>>        at
>> javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
>>        at
>> javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
>>        at
>> javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
>>        at java.security.AccessController.doPrivileged(Native Method)
>>        at
>> javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366)
>>        at
>> javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
>>        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
>> sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
>>        at sun.rmi.transport.Transport$1.run(Transport.java:159)
>>        at java.security.AccessController.doPrivileged(Native Method)
>>        at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>>        at
>> sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
>>        at
>> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
>>        at
>> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
>>        at
>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>>        at
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>>        at java.lang.Thread.run(Thread.java:619)
>>
>> --
>> View this message in context:
>> http://www.nabble.com/Tutorial--3---Camel---Redeploying-SA-Causes-%27kernel-already-registered%27-exception-tp18263771p18263771.html
>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>
>>
> 
> 
> 
> -- 
> Cheers,
> Guillaume Nodet
> ------------------------
> Blog: http://gnodet.blogspot.com/
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Tutorial--3---Camel---Redeploying-SA-Causes-%27kernel-already-registered%27-exception-tp18263771p18321628.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to