I created a qualifier annotation called Asynchronous and reference it in an inject:
@Inject @Asynchronous Foo bar;
then I deleted the Asynchrounous class and the above error becomes a compile error ( that is expected )
but all CDI validation now reported nothing was correct (alot of EL validation errors not related to bar reference) and
the following was logged in errors:
Java Model Exception: Java Model Status [Asynhronous.java [in org.jboss.weld.examples.pastecode.session [in src/main/java [in weld-jsf-pastecode]]] does not exist]
at org.eclipse.jdt.internal.core.JavaElement.newJavaModelException(JavaElement.java:502)
at org.eclipse.jdt.internal.core.Openable.generateInfos(Openable.java:246)
at org.eclipse.jdt.internal.core.SourceRefElement.generateInfos(SourceRefElement.java:107)
at org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:515)
at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:252)
at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:238)
at org.eclipse.jdt.internal.core.SourceType.getAnnotations(SourceType.java:191)
at org.jboss.tools.cdi.internal.core.impl.definition.AbstractMemberDefinition.init(AbstractMemberDefinition.java:66)
at org.jboss.tools.cdi.internal.core.impl.definition.AbstractTypeDefinition.init(AbstractTypeDefinition.java:60)
at org.jboss.tools.cdi.internal.core.impl.definition.AnnotationDefinition.init(AnnotationDefinition.java:60)
at org.jboss.tools.cdi.internal.core.impl.definition.AbstractMemberDefinition.setAnnotatable(AbstractMemberDefinition.java:50)
at org.jboss.tools.cdi.internal.core.impl.definition.AbstractTypeDefinition.setType(AbstractTypeDefinition.java:54)
at org.jboss.tools.cdi.internal.core.impl.definition.DefinitionContext.createAnnotation(DefinitionContext.java:232)
at org.jboss.tools.cdi.internal.core.impl.definition.DefinitionContext.getAnnotationKind(DefinitionContext.java:226)
at org.jboss.tools.cdi.internal.core.impl.AbstractBeanElement.getQualifierDeclarations(AbstractBeanElement.java:172)
at org.jboss.tools.cdi.internal.core.impl.AbstractBeanElement.getQualifierDeclarations(AbstractBeanElement.java:165)
at org.jboss.tools.cdi.internal.core.impl.CDIProject.getBeans(CDIProject.java:307)
at org.jboss.tools.cdi.internal.core.validation.CDICoreValidator.validateInjectionPoint(CDICoreValidator.java:1349)
at org.jboss.tools.cdi.internal.core.validation.CDICoreValidator.validateBean(CDICoreValidator.java:465)
at org.jboss.tools.cdi.internal.core.validation.CDICoreValidator.validateResource(CDICoreValidator.java:366)
at org.jboss.tools.cdi.internal.core.validation.CDICoreValidator.validate(CDICoreValidator.java:270)
at org.jboss.tools.jst.web.kb.internal.validation.ValidatorManager.validate(ValidatorManager.java:113)
at org.jboss.tools.jst.web.kb.internal.validation.ValidatorManager.validateInJob(ValidatorManager.java:84)
at org.eclipse.wst.validation.internal.operations.ValidatorJob.run(ValidatorJob.java:78)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Missing classes should not stop our validator since that is a common scenario so not sure what is going on ? Some stale model references maybe?
- is related to
-
JBIDE-9021 CDI builder should be declared before WST validation builder in .project.
- Closed
- relates to
-
JBIDE-9028 Validator framework should create a problem marker w/ a quick fix if some required builder is registered in project after validator builder
- Closed