Sure, will do the pull/request.
-----Original Message----- From: Romain Manni-Bucau [mailto:rmannibu...@gmail.com] Sent: July-25-16 12:00 PM To: users@tomee.apache.org Subject: Re: tomee:undeploy is not clean after long timeout since the last deployment suspect it will need a try/finally on https://github.com/apache/tomee/blob/master/container/openejb-core/src/main/java/org/apache/openejb/assembler/DeployerEjb.java#L408 do you want to give it a go with a pull/request? You can use tomee github proxy: https://github.com/apache/tomee Romain Manni-Bucau @rmannibucau <https://twitter.com/rmannibucau> | Blog <https://blog-rmannibucau.rhcloud.com> | Old Wordpress Blog <http://rmannibucau.wordpress.com> | Github <https://github.com/rmannibucau> | LinkedIn <https://www.linkedin.com/in/rmannibucau> | Tomitriber <http://www.tomitribe.com> | JavaEE Factory <https://javaeefactory-rmannibucau.rhcloud.com> 2016-07-25 20:02 GMT+02:00 dimas <dmitry_shu...@kaltire.com>: > Hi, > > I'm using tomee maven plugin to undeploy/deploy my war to the remote > server and It works pretty well when deployments are executed often, > but when there is long a timeout (10 hours for example) it fails to > cleanly undeploy the app. > > There are no logged exceptions in the app log file and in the > catalina.out during undeploy, only this one is logged in the > localhost.2016-07-25.log: > > 25-Jul-2016 11:27:23.760 SEVERE [http-nio-7080-exec-9] > org.apache.catalina.core.StandardContext.listenerStop Exception > sending context destroyed event to listener instan ce of class > org.apache.myfaces.webapp.StartupServletContextListener > javax.enterprise.inject.UnsatisfiedResolutionException: Api type > [javax.enterprise.inject.spi.BeanManager] is not found with the > qualifiers > Qualifiers: [@javax.enterprise.inject.Default()] > for injection into Method Injection Point, method name : > camelBeansPostProcessor, Bean Owner : [CdiCamelExtension, > WebBeansType:EXTENSION, Name:null, API Types:[java.la > > ng.Object,org.apache.camel.cdi.CdiCamelExtension,javax.enterprise.inje > ct.spi.Extension], > Qualifiers:[javax.enterprise.inject.Default,javax.enterprise.inject.Any]] > at > > org.apache.webbeans.util.InjectionExceptionUtil.throwUnsatisfiedResolutionException(InjectionExceptionUtil.java:65) > at > > org.apache.webbeans.container.InjectionResolver.getInjectionPointBean(InjectionResolver.java:279) > at > > org.apache.webbeans.event.ObserverMethodImpl.getMethodArguments(ObserverMethodImpl.java:369) > at > > org.apache.webbeans.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:215) > at > > org.apache.webbeans.event.NotificationManager.fireEvent(NotificationManager.java:676) > at > > org.apache.webbeans.container.BeanManagerImpl.fireEvent(BeanManagerImpl.java:485) > at > > org.apache.webbeans.container.BeanManagerImpl.fireEvent(BeanManagerImpl.java:459) > at > > org.apache.webbeans.util.WebBeansUtil.fireProcessInjectionTargetEvent(WebBeansUtil.java:1035) > at > > org.apache.webbeans.util.WebBeansUtil.fireProcessInjectionTargetEvent(WebBeansUtil.java:1029) > at > > org.apache.webbeans.container.BeanManagerImpl.createInjectionTarget(BeanManagerImpl.java:1236) > at > > org.apache.myfaces.cdi.impl.CDIAnnotationInjectionProvider.preDestroy(CDIAnnotationInjectionProvider.java:70) > at > > org.apache.myfaces.spi.impl.CDIAnnotationDelegateInjectionProvider.preDestroy(CDIAnnotationDelegateInjectionProvider.java:78) > at > > org.apache.myfaces.webapp.AbstractFacesInitializer._callPreDestroyOnInjectedJSFArtifacts(AbstractFacesInitializer.java:713) > at > > org.apache.myfaces.webapp.AbstractFacesInitializer.destroyFaces(AbstractFacesInitializer.java:366) > at > > org.apache.myfaces.webapp.StartupServletContextListener.contextDestroyed(StartupServletContextListener.java:167) > at > > org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4778) > at > > org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5417) > at > org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:229) > at > org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:817) > at > > org.apache.tomee.catalina.TomcatWebAppBuilder.undeploy(TomcatWebAppBuilder.java:1583) > at > > org.apache.tomee.catalina.TomcatWebAppBuilder.undeploy(TomcatWebAppBuilder.java:1554) > at > > org.apache.tomee.catalina.TomcatWebAppBuilder.undeployWebApps(TomcatWebAppBuilder.java:754) > at > > org.apache.openejb.assembler.classic.Assembler.destroyApplication(Assembler.java:2217) > at > org.apache.openejb.assembler.DeployerEjb.undeploy(DeployerEjb.java:420) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:497) > at > > org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:205) > at > > org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:186) > at > > org.apache.openejb.security.internal.InternalSecurityInterceptor.invoke(InternalSecurityInterceptor.java:35) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:497) > at > > org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:205) > at > > org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:186) > at > > org.apache.openejb.monitoring.StatsInterceptor.record(StatsInterceptor.java:181) > at > > org.apache.openejb.monitoring.StatsInterceptor.invoke(StatsInterceptor.java:100) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.j > ava:62) > > One side effect of this exception (i believe it is related) is that > the deployment record in the deployments.xml is not removed, so when > tomee:deploy is invoked another (duplicate) record is created. It > means it won't start up when TomEE is restarted. > > What can be done to make sure the deployments.xml is clean after undeploy? > > Cheers, > Dmitry > > > > > -- > View this message in context: > http://tomee-openejb.979440.n4.nabble.com/tomee-undeploy-is-not-clean- > after-long-timeout-since-the-last-deployment-tp4679481.html > Sent from the TomEE Users mailing list archive at Nabble.com. >