[jbosstools-issues] [JBoss JIRA] (JBIDE-10111) ConcurrentModificationException after closing Seam War project

Viacheslav Kabanovich (Commented) (JIRA) jira-events at lists.jboss.org
Tue Nov 8 14:22:45 EST 2011


    [ https://issues.jboss.org/browse/JBIDE-10111?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12641186#comment-12641186 ] 

Viacheslav Kabanovich commented on JBIDE-10111:
-----------------------------------------------

The cause of concurrent modification exception is a mistake in synchronization block so that it is readily fixable. 

Concerning accessing closed resources, there is an easier way to generate more of them:
EXECUTE: Create several CDI and/or Seam and/or JSF projects.
EXECUTE: Select them all and run Clean/Build.
EXECUTE: Wait for a couple of seconds for a progress to show the build on its way, and invoke 'Close Project' on the entire selection.
EXECUTE: After a couple of seconds invoke 'Open Project'; this two steps may be repeated until the log is full enough of the catch.


                
> ConcurrentModificationException after closing Seam War project
> --------------------------------------------------------------
>
>                 Key: JBIDE-10111
>                 URL: https://issues.jboss.org/browse/JBIDE-10111
>             Project: Tools (JBoss Tools)
>          Issue Type: Bug
>          Components: common/jst/core
>    Affects Versions: 3.3.0.Beta1
>            Reporter: Denis Golovin
>            Assignee: Viacheslav Kabanovich
>             Fix For: 3.3.0.Beta1
>
>
> Now Test case in steps to reproduce fails on last step with bunch of exceptions. First is throws exception
> {noformat}org.eclipse.core.internal.resources.ResourceException: Resource '/seam22hib' is not open.
> 	at org.eclipse.core.internal.resources.Project.checkAccessible(Project.java:150)
> 	at org.eclipse.core.internal.resources.Resource.findMarkers(Resource.java:1007)
> 	at org.jboss.tools.jst.web.kb.internal.validation.KBValidator.findBuilderOrderMarker(KBValidator.java:129)
> 	at org.jboss.tools.jst.web.kb.internal.validation.KBValidator.validateBuilderOrder(KBValidator.java:89)
> 	at org.jboss.tools.jst.web.kb.internal.validation.ELValidator.validateBuilderOrder(ELValidator.java:482)
> 	at org.jboss.tools.jst.web.kb.internal.validation.ELValidator.shouldValidate(ELValidator.java:468)
> 	at org.jboss.tools.common.validation.ValidationContext.init(ValidationContext.java:86)
> 	at org.jboss.tools.common.validation.ValidationContext.<init>(ValidationContext.java:42)
> 	at org.jboss.tools.common.validation.ContextValidationHelper.getValidationContextManager(ContextValidationHelper.java:161)
> 	at org.jboss.tools.common.validation.ContextValidationHelper.getValidationContextManager(ContextValidationHelper.java:153)
> 	at org.jboss.tools.common.validation.ValidatorManager.validateInJob(ValidatorManager.java:65)
> 	at org.eclipse.wst.validation.internal.operations.ValidatorJob.run(ValidatorJob.java:78)
> 	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54){noformat}
> then
> {noformat}java.util.ConcurrentModificationException
> 	at java.util.HashMap$HashIterator.nextEntry(HashMap.java:810)
> 	at java.util.HashMap$KeyIterator.next(HashMap.java:845)
> 	at org.jboss.tools.common.model.project.ext.AbstractClassPathMonitor.syncProcessedPaths(AbstractClassPathMonitor.java:110)
> 	at org.jboss.tools.seam.internal.core.scanner.lib.ClassPath.process(ClassPath.java:73)
> 	at org.jboss.tools.seam.internal.core.scanner.lib.ClassPath.build(ClassPath.java:178)
> 	at org.jboss.tools.seam.internal.core.SeamProject.build(SeamProject.java:371)
> 	at org.jboss.tools.seam.core.SeamCoreBuilder.build(SeamCoreBuilder.java:50)
> 	at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:728)
> 	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
> 	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:199)
> 	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:239)
> 	at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:292)
> 	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
> 	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:295)
> 	at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:351)
> 	at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:374)
> 	at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:143)
> 	at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:241)
> 	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54){noformat}
> and finally 
> {noformat}java.util.ConcurrentModificationException
> 	at java.util.HashMap$HashIterator.nextEntry(HashMap.java:810)
> 	at java.util.HashMap$KeyIterator.next(HashMap.java:845)
> 	at org.jboss.tools.common.model.project.ext.AbstractClassPathMonitor.syncProcessedPaths(AbstractClassPathMonitor.java:110)
> 	at org.jboss.tools.seam.internal.core.scanner.lib.ClassPath.process(ClassPath.java:73)
> 	at org.jboss.tools.seam.internal.core.scanner.lib.ClassPath.build(ClassPath.java:178)
> 	at org.jboss.tools.seam.internal.core.SeamProject.build(SeamProject.java:371)
> 	at org.jboss.tools.seam.core.SeamCoreBuilder.build(SeamCoreBuilder.java:50)
> 	at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:728)
> 	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
> 	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:199)
> 	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:239)
> 	at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:292)
> 	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
> 	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:295)
> 	at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:351)
> 	at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:374)
> 	at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:143)
> 	at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:241)
> 	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54){noformat}
> here is related part of my .log file
> {noformat}
> !ENTRY org.eclipse.jst.jsp.core 4 4 2011-11-07 12:22:59.680
> !MESSAGE A workspace crash was detected. The previous session did not exit normally. Not using saved taglib indexes.
> !ENTRY org.jboss.tools.jst.web.kb 4 0 2011-11-07 12:24:00.831
> !MESSAGE Resource '/seam22hib' is not open.
> !STACK 1
> org.eclipse.core.internal.resources.ResourceException: Resource '/seam22hib' is not open.
> 	at org.eclipse.core.internal.resources.Project.checkAccessible(Project.java:150)
> 	at org.eclipse.core.internal.resources.Resource.findMarkers(Resource.java:1007)
> 	at org.jboss.tools.jst.web.kb.internal.validation.KBValidator.findBuilderOrderMarker(KBValidator.java:129)
> 	at org.jboss.tools.jst.web.kb.internal.validation.KBValidator.validateBuilderOrder(KBValidator.java:89)
> 	at org.jboss.tools.jst.web.kb.internal.validation.ELValidator.validateBuilderOrder(ELValidator.java:482)
> 	at org.jboss.tools.jst.web.kb.internal.validation.ELValidator.shouldValidate(ELValidator.java:468)
> 	at org.jboss.tools.common.validation.ValidationContext.init(ValidationContext.java:86)
> 	at org.jboss.tools.common.validation.ValidationContext.<init>(ValidationContext.java:42)
> 	at org.jboss.tools.common.validation.ContextValidationHelper.getValidationContextManager(ContextValidationHelper.java:161)
> 	at org.jboss.tools.common.validation.ContextValidationHelper.getValidationContextManager(ContextValidationHelper.java:153)
> 	at org.jboss.tools.common.validation.ValidatorManager.validateInJob(ValidatorManager.java:65)
> 	at org.eclipse.wst.validation.internal.operations.ValidatorJob.run(ValidatorJob.java:78)
> 	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
> !SUBENTRY 1 org.eclipse.core.resources 4 372 2011-11-07 12:24:00.839
> !MESSAGE Resource '/seam22hib' is not open.
> !ENTRY org.eclipse.core.resources 4 2 2011-11-07 12:24:03.211
> !MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.core.resources".
> !STACK 0
> java.util.ConcurrentModificationException
> 	at java.util.HashMap$HashIterator.nextEntry(HashMap.java:810)
> 	at java.util.HashMap$KeyIterator.next(HashMap.java:845)
> 	at org.jboss.tools.common.model.project.ext.AbstractClassPathMonitor.syncProcessedPaths(AbstractClassPathMonitor.java:110)
> 	at org.jboss.tools.seam.internal.core.scanner.lib.ClassPath.process(ClassPath.java:73)
> 	at org.jboss.tools.seam.internal.core.scanner.lib.ClassPath.build(ClassPath.java:178)
> 	at org.jboss.tools.seam.internal.core.SeamProject.build(SeamProject.java:371)
> 	at org.jboss.tools.seam.core.SeamCoreBuilder.build(SeamCoreBuilder.java:50)
> 	at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:728)
> 	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
> 	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:199)
> 	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:239)
> 	at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:292)
> 	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
> 	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:295)
> 	at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:351)
> 	at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:374)
> 	at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:143)
> 	at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:241)
> 	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
> !ENTRY org.eclipse.core.resources 4 75 2011-11-07 12:24:21.210
> !MESSAGE Errors occurred during the build.
> !SUBENTRY 1 org.jboss.tools.seam.core 4 75 2011-11-07 12:24:21.210
> !MESSAGE Errors running builder 'Seam Builder' on project 'seam2hib'.
> !STACK 0
> java.util.ConcurrentModificationException
> 	at java.util.HashMap$HashIterator.nextEntry(HashMap.java:810)
> 	at java.util.HashMap$KeyIterator.next(HashMap.java:845)
> 	at org.jboss.tools.common.model.project.ext.AbstractClassPathMonitor.syncProcessedPaths(AbstractClassPathMonitor.java:110)
> 	at org.jboss.tools.seam.internal.core.scanner.lib.ClassPath.process(ClassPath.java:73)
> 	at org.jboss.tools.seam.internal.core.scanner.lib.ClassPath.build(ClassPath.java:178)
> 	at org.jboss.tools.seam.internal.core.SeamProject.build(SeamProject.java:371)
> 	at org.jboss.tools.seam.core.SeamCoreBuilder.build(SeamCoreBuilder.java:50)
> 	at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:728)
> 	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
> 	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:199)
> 	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:239)
> 	at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:292)
> 	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
> 	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:295)
> 	at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:351)
> 	at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:374)
> 	at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:143)
> 	at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:241)
> 	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54){noformat}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jbosstools-issues mailing list