[
https://issues.jboss.org/browse/JBIDE-15504?page=com.atlassian.jira.plugi...
]
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