users@glassfish.java.net

Re: A strange NameAlreadyBoundException at deployment since V2b19

From: Hong Zhang <Hong.Zhang_at_Sun.COM>
Date: Fri, 13 Oct 2006 09:39:37 -0400

Hi, Antonio
   From the error message, seems things might not be cleaned up properly
when we unload the old version of the application from the ejb
container. So when we try to load the newer version to the ejb
container, there is a jndi name collision.
   However, when I tried to redeploy a simple application (which
contains a stateless bean and a servlet) to the latest build, everything
worked fine for me. So this might be something that's specific to your
application (or environment). Can you share with us your application so
we can take a look? Thanks.

- Hong
   

Antonio Goncalves wrote:

> Instead of using the deploy command I've tried autodeploying my ear
> file (copying in autodeploy directory) but I still have the same
> exception.
>
> 2006/10/13, Antonio Goncalves <antonio.mailing_at_gmail.com
> <mailto:antonio.mailing_at_gmail.com>>:
>
> I've upgrade to V2b21 but I still have the same problem ?!?!
>
> 2006/10/13, Antonio Goncalves <antonio.mailing_at_gmail.com
> <mailto:antonio.mailing_at_gmail.com>>:
>
> Hi,
>
> I've upgraded Glassfish to V2b19 and since then I have a
> strange exception when I deploy my application. Imagine the
> scenario : I start Glassfish and I deploy my application with
> the following command :
>
> deploy --secure=false --user admin --terse=false --target
> server --echo=true --upload=true --port 8282
> --interactive=true --passwordfile passwordfile
> --availabilityenabled=false --enabled=true
> --generatermistubs=false --host localhost
> --precompilejsp=false --force=true --verify=false
> ./build/petstore.ear
>
> It works fine and I can run my application. Good. Then, I
> redeploy my application with the same command line and this is
> what I get :
>
> deploy --secure=false --user admin --terse=false --target
> server --echo=true --upload=true --port 8282
> --interactive=true --passwordfile passwordfile
> --availabilityenabled=false --enabled=true
> --generatermistubs=false --host localhost
> --precompilejsp=false --force=true --verify=false
> ./build/petstore.ear
> com.sun.enterprise.deployment.backend.IASDeploymentException:
> Error while loading application [petstore]. Please refer to
> the server log for more details.
>
> Server Logs:
>
> [#|2006-10-13T09:22:44.218+0200|SEVERE|sun-appserver-pe9.1|javax.enterprise.system.container.ejb|_ThreadID=13;_ThreadName=httpWorkerThread-8282-0;javax.naming.NameAlreadyBoundException
> [Root exception is
> org.omg.CosNaming.NamingContextPackage.AlreadyBound :
> IDL:omg.org/CosNaming/NamingContext/AlreadyBound:1.0];_RequestID=6c5f5c2c-d7d7-4ede-9eb9-cf070a6510f8;|EJB5090
> <http://omg.org/CosNaming/NamingContext/AlreadyBound:1.0%5D;_RequestID=6c5f5c2c-d7d7-4ede-9eb9-cf070a6510f8;%7CEJB5090>:
> Exception in creating EJB container
> [javax.naming.NameAlreadyBoundException [Root exception is
> org.omg.CosNaming.NamingContextPackage.AlreadyBound: IDL:
> omg.org/CosNaming/NamingContext/AlreadyBound:1.0]]|#
> <http://omg.org/CosNaming/NamingContext/AlreadyBound:1.0%5D%5D%7C#>]
>
> [#|2006-10-13T09:22:44.218+0200|SEVERE|sun-appserver-pe9.1|javax.enterprise.system.container.ejb|_ThreadID=13;_ThreadName=httpWorkerThread-8282-0;_RequestID=6c5f5c2c-d7d7-4ede-9eb9-cf070a6510f8;|appId=petstore
> moduleName=ejbs_jar ejbName=CatalogBean|#]
>
> [#|2006-10-13T09:22:44.218+0200|SEVERE|sun-appserver-pe9.1|javax.enterprise.system.core.classloading|_ThreadID=13;_ThreadName=httpWorkerThread-8282-0;petstore;com.yaps.petstore.service.catalog.CatalogRemote;CatalogBean;_RequestID=6c5f5c2c-d7d7-4ede-9eb9-cf070a6510f8;|LDR5012:
> Jndi name conflict found in [petstore]. Jndi name [
> com.yaps.petstore.service.catalog.CatalogRemote] for bean
> [CatalogBean] is already in use.|#]
>
> [#|2006-10-13T09:22:44.218+0200|SEVERE|sun-appserver-pe9.1|javax.enterprise.system.core.classloading|_ThreadID=13;_ThreadName=httpWorkerThread-8282-0;_RequestID=6c5f5c2c-d7d7-4ede-9eb9-cf070a6510f8;|LDR5013:
> Naming exception while creating EJB container:
> javax.naming.NameAlreadyBoundException [Root exception is
> org.omg.CosNaming.NamingContextPackage.AlreadyBound: IDL:
> omg.org/CosNaming/NamingContext/AlreadyBound:1.0
> <http://omg.org/CosNaming/NamingContext/AlreadyBound:1.0>]
> at
> com.sun.jndi.cosnaming.ExceptionMapper.mapException(ExceptionMapper.java:74)
> at com.sun.jndi.cosnaming.CNCtx.callBindOrRebind(CNCtx.java:563)
> at com.sun.jndi.cosnaming.CNCtx.bind (CNCtx.java:588)
> at javax.naming.InitialContext.bind(InitialContext.java:363)
> at
> com.sun.enterprise.naming.NamingManagerImpl.publishObject(NamingManagerImpl.java:198)
> at com.sun.enterprise.naming.NamingManagerImpl.publishObject
> (NamingManagerImpl.java :168)
> at
> com.sun.ejb.containers.BaseContainer.initializeHome(BaseContainer.java:962)
> at
> com.sun.ejb.containers.StatelessSessionContainer.initializeHome(StatelessSessionContainer.java:220)
> at
> com.sun.ejb.containers.ContainerFactoryImpl.createContainer
> (ContainerFactoryImpl.java:667)
> at
> com.sun.enterprise.server.AbstractLoader.loadEjbs(AbstractLoader.java:486)
> at com.sun.enterprise.server.ApplicationLoader.load
> (ApplicationLoader.java:183)
> at com.sun.enterprise.server.TomcatApplicationLoader.load
> (TomcatApplicationLoader.java:113)
> at
> com.sun.enterprise.server.ApplicationManager.applicationDeployed(ApplicationManager.java
> :322)
> at
> com.sun.enterprise.server.ApplicationManager.applicationDeployed(ApplicationManager.java
> :196)
> at
> com.sun.enterprise.server.ApplicationManager.applicationDeployed(ApplicationManager.java:633)
> at
> com.sun.enterprise.admin.event.AdminEventMulticaster.invokeApplicationDeployEventListener
> (AdminEventMulticaster.java :902)
> at
> com.sun.enterprise.admin.event.AdminEventMulticaster.handleApplicationDeployEvent(AdminEventMulticaster.java:886)
> at
> com.sun.enterprise.admin.event.AdminEventMulticaster.processEvent
> (AdminEventMulticaster.java :445)
> at
> com.sun.enterprise.admin.event.AdminEventMulticaster.multicastEvent(AdminEventMulticaster.java:160)
> at
> com.sun.enterprise.admin.server.core.DeploymentNotificationHelper.multicastEvent
> (DeploymentNotificationHelper.java :295)
> at
> com.sun.enterprise.deployment.phasing.DeploymentServiceUtils.multicastEvent(DeploymentServiceUtils.java:204)
> at
> com.sun.enterprise.deployment.phasing.ServerDeploymentTarget.sendStartEvent
> (ServerDeploymentTarget.java :285)
> at
> com.sun.enterprise.deployment.phasing.ApplicationStartPhase.runPhase(ApplicationStartPhase.java:119)
> at
> com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java
> :95)
> at
> com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases
> (PEDeploymentService.java:871)
> at
> com.sun.enterprise.deployment.phasing.PEDeploymentService.start(PEDeploymentService.java:541)
> at
> com.sun.enterprise.deployment.phasing.PEDeploymentService.start(PEDeploymentService.java
> :585)
> at
> com.sun.enterprise.admin.mbeans.ApplicationsConfigMBean.start(ApplicationsConfigMBean.java:719)
> 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:585)
> at com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean
> (MBeanHelper.java:353)
> at
> com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:336)
> at com.sun.enterprise.admin.config.BaseConfigMBean.invoke
> (BaseConfigMBean.java:448)
> at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke
> (DynamicMetaDataImpl.java:213)
> at
> com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:220)
> at
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke
> (DefaultMBeanServerInterceptor.java:815)
> at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke
> (JmxMBeanServer.java:784)
> at sun.reflect.GeneratedMethodAccessor19.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke
> (DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke (Method.java:585)
> at
> com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:77)
> at $Proxy1.invoke(Unknown Source)
> at
> com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(SunoneInterceptor.java
> :297)
> at
> com.sun.enterprise.admin.jmx.remote.server.callers.InvokeCaller.call(InvokeCaller.java:56)
> at
> com.sun.enterprise.admin.jmx.remote.server.MBeanServerRequestHandler.handle
> (MBeanServerRequestHandler.java:142)
> at
> com.sun.enterprise.admin.jmx.remote.server.servlet.RemoteJmxConnectorServlet.processRequest(RemoteJmxConnectorServlet.java:109)
> at
> com.sun.enterprise.admin.jmx.remote.server.servlet.RemoteJmxConnectorServlet.doPost
> (RemoteJmxConnectorServlet.java:180)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
> at
> org.apache.catalina.core.ApplicationFilterChain.servletService
> (ApplicationFilterChain.java:397)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:276)
> at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586)
> at org.apache.catalina.core.StandardPipeline.invoke
> (StandardPipeline.java:556)
> at
> org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:246)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185)
> at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586)
> at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:73)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
> :182)
> at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586)
> at
> com.sun.enterprise.web.VirtualServerPipeline.invoke(VirtualServerPipeline.java:120)
> at org.apache.catalina.core.ContainerBase.invoke
> (ContainerBase.java:939)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:137)
> at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586)
> at org.apache.catalina.core.StandardPipeline.invoke
> (StandardPipeline.java:556)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939)
> at
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:239)
> at
> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter
> (DefaultProcessorTask.java:618)
> at
> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.processNonBlocked(DefaultProcessorTask.java:549)
> at
> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process
> (DefaultProcessorTask.java:789)
> at
> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:328)
> at
> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java
> :251)
> at
> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:205)
> at
> com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:252)
> at
> com.sun.enterprise.web.connector.grizzly.WorkerThreadImpl.run
> (WorkerThreadImpl.java:103)
> Caused by:
> org.omg.CosNaming.NamingContextPackage.AlreadyBound: IDL:
> omg.org/CosNaming/NamingContext/AlreadyBound:1.0
> <http://omg.org/CosNaming/NamingContext/AlreadyBound:1.0>
> at
> org.omg.CosNaming.NamingContextPackage.AlreadyBoundHelper.read(AlreadyBoundHelper.java:60)
> at
> org.omg.CosNaming._NamingContextStub.bind(_NamingContextStub.java:67)
>
> at com.sun.jndi.cosnaming.CNCtx.callBindOrRebind (CNCtx.java:552)
> ... 74 more
>
> Then if I undeploy and try to deploy again, I have the same
> exception. I have to undeploy, stop Glassfish and deploy my
> application to make it work again.
>
> Any idea . Never had this pb with V2b13 and it is the same
> application.
>
> Thanks,
>
> Antonio
>
>
>
>
>
>