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.