[ 
https://issues.apache.org/jira/browse/TOMEE-2919?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17526015#comment-17526015
 ] 

Geeth Narayanan commented on TOMEE-2919:
----------------------------------------

We faced the same issue:

In openejb-core within org.apache.openejb.assembler.classic.Assembler

 

                for (final Entry<Object, Object> entry : 
appContext.getProperties().entrySet()) {
                    if (Module.class.isInstance(entry.getValue())) {
                        appContext.getProperties().remove(entry.getKey());
                    }
                }

This remove causes concurrent modification exception.

Whereas in 7.1 or 8.x, it does this:

                for (final Entry<Object, Object> entry : 
appInfo.properties.entrySet()) {
                    if (! Module.class.isInstance(entry.getValue())) {
                        appContext.getProperties().put(entry.getKey(), 
entry.getValue());
                    }
                }

> java.util.ConcurrentModificationException error deploying ear in TomEE Plus 
> 7.1.4
> ---------------------------------------------------------------------------------
>
>                 Key: TOMEE-2919
>                 URL: https://issues.apache.org/jira/browse/TOMEE-2919
>             Project: TomEE
>          Issue Type: Bug
>          Components: TomEE Core Server
>    Affects Versions: 7.1.4
>            Reporter: Michelle Solon
>            Priority: Blocker
>
> This issue appears in Tomee 7.1.4 and is a blocker for our project to upgrade 
> to 7.1.4.  In the openejb-core-7.1.4 jar, some code that was in 
> org.apache.open.ejb.assembler.classic.Assembler that is causing the ear file 
> in the apps folder to fail on deployment.  
> If i replace the openejb-core-7.1.4 jar with openejb-core-7.1.1 jar, I do not 
> get the error.   
> Here is the stacktrace on startup.
> Nov 04, 2020 6:46:58 PM org.apache.openejb.assembler.classic.Assembler 
> buildContainerSystemNov 04, 2020 6:46:58 PM 
> org.apache.openejb.assembler.classic.Assembler buildContainerSystemSEVERE: 
> Application could not be deployed:  
> /apps/our/application/applicationearNov112020
> org.apache.openejb.OpenEJBException: Creating application failed: 
> /apps/our/application/applicationearNov112020: null at 
> org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:1101)
>  at 
> org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:755)
>  at 
> org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:633)
>  at org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:485) 
> at org.apache.openejb.OpenEJB$Instance.<init>(OpenEJB.java:150) at 
> org.apache.openejb.OpenEJB.init(OpenEJB.java:307) at 
> org.apache.tomee.catalina.TomcatLoader.initialize(TomcatLoader.java:247) at 
> org.apache.tomee.catalina.ServerListener.lifecycleEvent(ServerListener.java:168)
>  at 
> org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
>  at 
> org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423)
>  at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:137) at 
> org.apache.catalina.startup.Catalina.load(Catalina.java:639) at 
> org.apache.catalina.startup.Catalina.load(Catalina.java:662) 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:498) at 
> org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:302) at 
> org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:472)Caused by: 
> java.util.ConcurrentModificationException at 
> java.util.LinkedHashMap$LinkedHashIterator.nextNode(LinkedHashMap.java:719) 
> at java.util.LinkedHashMap$LinkedEntryIterator.next(LinkedHashMap.java:752) 
> at java.util.LinkedHashMap$LinkedEntryIterator.next(LinkedHashMap.java:750) 
> at java.util.Collections$UnmodifiableCollection$1.next(Collections.java:1042) 
> at 
> org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:829)
>  ... 18 more



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to