[jbosstools-issues] [JBoss JIRA] (JBIDE-15504) cdi spits out hundreds of exceptions if you have deleted a project in eclipse

Viacheslav Kabanovich (JIRA) jira-events at lists.jboss.org
Mon Sep 23 20:08:45 EDT 2013


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

Viacheslav Kabanovich commented on JBIDE-15504:
-----------------------------------------------

After project jboss-as-kitchensink-ear-ejb is deleted, for all other projects IJavaProject.findType(String) returns IType object that has exists() == true, but its parent project is the deleted project (i.e. getJavaProject().exists() == false). 

That should never happen as documentation to IJavaElement.exists() says "...it is always the case that if the element exists, then its parent also exists... It is therefore possible to navigated to any existing Java element from the root of the Java model along a chain of existing Java elements."

We cannot repair this situation in any other way than replace exception by another that reports this problem.

I tried to reproduce it with a set of Java projects, but could not - JDT always returned IType object from correct project. There must be something specific in kitchensink project set that creates this effect.
                
> cdi spits out hundreds of exceptions if you have deleted a project in eclipse
> -----------------------------------------------------------------------------
>
>                 Key: JBIDE-15504
>                 URL: https://issues.jboss.org/browse/JBIDE-15504
>             Project: Tools (JBoss Tools)
>          Issue Type: Bug
>          Components: cdi
>    Affects Versions: 4.1.0.Alpha1
>            Reporter: Max Rydahl Andersen
>            Assignee: Viacheslav Kabanovich
>             Fix For: 4.1.1.Alpha2, 4.2.0.Alpha1
>
>
> Had imported a bunch of kitchensinks samples, delete a project and now on save/validation I get a bunch of these errors:
> Java Model Exception: Java Model Status [jboss-as-kitchensink-angularjs-topcoat does not exist]
> 	at org.eclipse.jdt.internal.core.JavaElement.newJavaModelException(JavaElement.java:508)
> 	at org.eclipse.jdt.internal.core.Openable.generateInfos(Openable.java:246)
> 	at org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:521)
> 	at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:258)
> 	at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:244)
> 	at org.eclipse.jdt.internal.core.JavaProject.getJavaProjectElementInfo(JavaProject.java:1641)
> 	at org.eclipse.jdt.internal.core.JavaProject.newNameLookup(JavaProject.java:2328)
> 	at org.eclipse.jdt.internal.core.JavaProject.newNameLookup(JavaProject.java:2338)
> 	at org.eclipse.jdt.internal.core.JavaProject.findType(JavaProject.java:1356)
> 	at org.eclipse.jdt.internal.core.JavaProject.findType(JavaProject.java:1263)
> 	at org.jboss.tools.common.util.EclipseJavaUtil.findType(EclipseJavaUtil.java:115)
> 	at org.jboss.tools.common.java.ParametedTypeFactory.getParametedType(ParametedTypeFactory.java:128)
> 	at org.jboss.tools.common.java.ParametedTypeFactory.getParametedType(ParametedTypeFactory.java:80)
> 	at org.jboss.tools.cdi.internal.core.impl.definition.ParameterDefinition.init(ParameterDefinition.java:43)
> 	at org.jboss.tools.cdi.internal.core.impl.definition.AbstractMemberDefinition.setAnnotatable(AbstractMemberDefinition.java:64)
> 	at org.jboss.tools.cdi.internal.core.impl.definition.ParameterDefinition.setLocalVariable(ParameterDefinition.java:37)
> 	at org.jboss.tools.cdi.internal.core.impl.definition.MethodDefinition.loadParamDefinitions(MethodDefinition.java:87)
> 	at org.jboss.tools.cdi.internal.core.impl.definition.MethodDefinition.init(MethodDefinition.java:63)
> 	at org.jboss.tools.cdi.internal.core.impl.definition.AbstractMemberDefinition.setAnnotatable(AbstractMemberDefinition.java:64)
> 	at org.jboss.tools.cdi.internal.core.impl.definition.MethodDefinition.setMethod(MethodDefinition.java:48)
> 	at org.jboss.tools.cdi.internal.core.impl.definition.TypeDefinition.init(TypeDefinition.java:70)
> 	at org.jboss.tools.cdi.internal.core.impl.definition.AbstractMemberDefinition.setAnnotatable(AbstractMemberDefinition.java:64)
> 	at org.jboss.tools.cdi.internal.core.impl.definition.AbstractTypeDefinition.setType(AbstractTypeDefinition.java:69)
> 	at org.jboss.tools.cdi.internal.core.impl.CDIProject.rebuildBeans(CDIProject.java:1259)
> 	at org.jboss.tools.cdi.internal.core.impl.CDIProject.update(CDIProject.java:1123)
> 	at org.jboss.tools.cdi.core.CDICoreNature.clean(CDICoreNature.java:427)
> 	at org.jboss.tools.cdi.core.CDICoreBuilder.clean(CDICoreBuilder.java:349)
> 	at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:735)
> 	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
> 	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:206)
> 	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:246)
> 	at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:299)
> 	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
> 	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:302)
> 	at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:358)
> 	at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:381)
> 	at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:514)
> 	at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:423)
> 	at org.eclipse.ui.internal.ide.dialogs.CleanDialog.doClean(CleanDialog.java:313)
> 	at org.eclipse.ui.internal.ide.dialogs.CleanDialog$1.runInWorkspace(CleanDialog.java:151)
> 	at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
> 	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
> And this is even when the projects had on connection before.
> Expected: No errors when a project is deleted

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the jbosstools-issues mailing list