eclipse-viatra / org.eclipse.viatra

Main components of the VIATRA framework
https://eclipse.dev/viatra
Eclipse Public License 2.0
0 stars 1 forks source link

NPE when ClassType unresolvable #174

Closed bergmanngabor closed 3 weeks ago

bergmanngabor commented 3 weeks ago

Stack trace:

java.lang.NullPointerException: null
    at org.eclipse.viatra.query.patternlanguage.emf.types.EMFTypeSystem.classifierToInputKey(EMFTypeSystem.java:262) ~[?:?]
    at org.eclipse.viatra.query.patternlanguage.emf.types.EMFTypeSystem.extractTypeDescriptor(EMFTypeSystem.java:172) ~[?:?]
    at java.util.Optional.map(Optional.java:265) ~[?:?]
    at org.eclipse.viatra.query.patternlanguage.emf.validation.EMFPatternLanguageValidator.checkForWrongLiteralAndComputationValuesInPathExpressionConstraints(EMFPatternLanguageValidator.java:737) ~[?:?]
    at jdk.internal.reflect.GeneratedMethodAccessor96.invoke(Unknown Source) ~[?:?]
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
    at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
    at org.eclipse.xtext.validation.AbstractDeclarativeValidator$MethodWrapper.invoke(AbstractDeclarativeValidator.java:129) ~[?:?]
    at org.eclipse.xtext.validation.AbstractDeclarativeValidator.internalValidate(AbstractDeclarativeValidator.java:337) ~[?:?]
    at org.eclipse.xtext.validation.AbstractInjectableValidator.validate(AbstractInjectableValidator.java:72) ~[?:?]
    at org.eclipse.xtext.validation.CompositeEValidator.validate(CompositeEValidator.java:151) ~[?:?]
    at org.eclipse.emf.ecore.util.Diagnostician.doValidate(Diagnostician.java:171) ~[org.eclipse.emf.ecore-2.13.0.v20170609-0707.jar:?]
    at org.eclipse.emf.ecore.util.Diagnostician.validate(Diagnostician.java:158) ~[org.eclipse.emf.ecore-2.13.0.v20170609-0707.jar:?]
    at org.eclipse.xtext.validation.CancelableDiagnostician.validate(CancelableDiagnostician.java:41) ~[?:?]
    at org.eclipse.xtext.xbase.validation.XbaseDiagnostician.validate(XbaseDiagnostician.java:43) ~[?:?]
    at org.eclipse.emf.ecore.util.Diagnostician.validate(Diagnostician.java:137) ~[org.eclipse.emf.ecore-2.13.0.v20170609-0707.jar:?]
    at org.eclipse.emf.ecore.util.Diagnostician.doValidateContents(Diagnostician.java:181) ~[org.eclipse.emf.ecore-2.13.0.v20170609-0707.jar:?]
    at org.eclipse.emf.ecore.util.Diagnostician.validate(Diagnostician.java:161) ~[org.eclipse.emf.ecore-2.13.0.v20170609-0707.jar:?]
    at org.eclipse.xtext.validation.CancelableDiagnostician.validate(CancelableDiagnostician.java:41) ~[?:?]
    at org.eclipse.xtext.xbase.validation.XbaseDiagnostician.validate(XbaseDiagnostician.java:43) ~[?:?]
    at org.eclipse.emf.ecore.util.Diagnostician.validate(Diagnostician.java:137) ~[org.eclipse.emf.ecore-2.13.0.v20170609-0707.jar:?]
    at org.eclipse.emf.ecore.util.Diagnostician.doValidateContents(Diagnostician.java:185) ~[org.eclipse.emf.ecore-2.13.0.v20170609-0707.jar:?]
    at org.eclipse.emf.ecore.util.Diagnostician.validate(Diagnostician.java:161) ~[org.eclipse.emf.ecore-2.13.0.v20170609-0707.jar:?]
    at org.eclipse.xtext.validation.CancelableDiagnostician.validate(CancelableDiagnostician.java:41) ~[?:?]
    at org.eclipse.xtext.xbase.validation.XbaseDiagnostician.validate(XbaseDiagnostician.java:43) ~[?:?]
    at org.eclipse.emf.ecore.util.Diagnostician.validate(Diagnostician.java:137) ~[org.eclipse.emf.ecore-2.13.0.v20170609-0707.jar:?]
    at org.eclipse.emf.ecore.util.Diagnostician.doValidateContents(Diagnostician.java:185) ~[org.eclipse.emf.ecore-2.13.0.v20170609-0707.jar:?]
    at org.eclipse.emf.ecore.util.Diagnostician.validate(Diagnostician.java:161) ~[org.eclipse.emf.ecore-2.13.0.v20170609-0707.jar:?]
    at org.eclipse.xtext.validation.CancelableDiagnostician.validate(CancelableDiagnostician.java:41) ~[?:?]
    at org.eclipse.xtext.xbase.validation.XbaseDiagnostician.validate(XbaseDiagnostician.java:43) ~[?:?]
    at org.eclipse.emf.ecore.util.Diagnostician.validate(Diagnostician.java:137) ~[org.eclipse.emf.ecore-2.13.0.v20170609-0707.jar:?]
    at org.eclipse.emf.ecore.util.Diagnostician.validate(Diagnostician.java:120) ~[org.eclipse.emf.ecore-2.13.0.v20170609-0707.jar:?]
    at org.eclipse.xtext.validation.ResourceValidatorImpl.validate(ResourceValidatorImpl.java:147) ~[?:?]
    at org.eclipse.xtext.xbase.annotations.validation.DerivedStateAwareResourceValidator.validate(DerivedStateAwareResourceValidator.java:33) ~[?:?]
    at org.eclipse.xtext.validation.ResourceValidatorImpl.validate(ResourceValidatorImpl.java:91) ~[?:?]
    at org.eclipse.viatra.query.patternlanguage.emf.validation.PatternSetValidator.validate(PatternSetValidator.java:39) ~[?:?]
    at org.eclipse.viatra.query.patternlanguage.emf.util.AdvancedPatternParser.parseBatch(AdvancedPatternParser.java:417) ~[?:?]
    at org.eclipse.viatra.query.patternlanguage.emf.util.AdvancedPatternParser.addPatterns(AdvancedPatternParser.java:310) ~[?:?]
    at org.eclipse.viatra.query.patternlanguage.emf.util.AdvancedPatternParser.addSpecifications(AdvancedPatternParser.java:90) ~[?:?]
    at org.eclipse.viatra.query.patternlanguage.emf.util.AdvancedPatternParser.addSpecifications(AdvancedPatternParser.java:182) ~[?:?]

Culprit: ClassType.getClassname() returns null in not fully resolved Pattern.