js-graphql-intellij-plugin icon indicating copy to clipboard operation
js-graphql-intellij-plugin copied to clipboard

Exception: java.lang.IllegalArgumentException: Argument for @NotNull parameter 'locations' of com/intellij/lang/jsgraphql/ide/introspection/GraphQLIntrospectionResultToSchema.createDirectiveLocations must not be null

Open BoD opened this issue 3 years ago • 2 comments

Description

Stacktrace

Please paste the full stacktrace from the IDEA error popup.

java.lang.IllegalArgumentException: Argument for @NotNull parameter 'locations' of com/intellij/lang/jsgraphql/ide/introspection/GraphQLIntrospectionResultToSchema.createDirectiveLocations must not be null
	at com.intellij.lang.jsgraphql.ide.introspection.GraphQLIntrospectionResultToSchema.$$$reportNull$$$0(GraphQLIntrospectionResultToSchema.java)
	at com.intellij.lang.jsgraphql.ide.introspection.GraphQLIntrospectionResultToSchema.createDirectiveLocations(GraphQLIntrospectionResultToSchema.java)
	at com.intellij.lang.jsgraphql.ide.introspection.GraphQLIntrospectionResultToSchema.createDirectiveDefinition(GraphQLIntrospectionResultToSchema.java:337)
	at com.intellij.lang.jsgraphql.ide.introspection.GraphQLIntrospectionResultToSchema.createSchemaDefinition(GraphQLIntrospectionResultToSchema.java:89)
	at com.intellij.lang.jsgraphql.ide.introspection.GraphQLIntrospectionService.printIntrospectionAsGraphQL(GraphQLIntrospectionService.java:328)
	at com.intellij.lang.jsgraphql.ide.introspection.GraphQLIntrospectionService.printIntrospectionAsGraphQL(GraphQLIntrospectionService.java:305)
	at com.intellij.lang.jsgraphql.ide.introspection.GraphQLIntrospectionFilesManager.lambda$getOrCreateIntrospectionSDL$0(GraphQLIntrospectionFilesManager.java:32)
	at com.intellij.psi.util.CachedValuesManager$1.compute(CachedValuesManager.java:158)
	at com.intellij.psi.impl.PsiCachedValueImpl.doCompute(PsiCachedValueImpl.java:39)
	at com.intellij.util.CachedValueBase.lambda$getValueWithLock$3(CachedValueBase.java:227)
	at com.intellij.util.CachedValueBase.computeData(CachedValueBase.java:42)
	at com.intellij.util.CachedValueBase.lambda$getValueWithLock$4(CachedValueBase.java:227)
	at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:114)
	at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:44)
	at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
	at com.intellij.util.CachedValueBase.getValueWithLock(CachedValueBase.java:228)
	at com.intellij.psi.impl.PsiCachedValueImpl.getValue(PsiCachedValueImpl.java:28)
	at com.intellij.util.CachedValuesManagerImpl.getCachedValue(CachedValuesManagerImpl.java:72)
	at com.intellij.psi.util.CachedValuesManager.getCachedValue(CachedValuesManager.java:155)
	at com.intellij.lang.jsgraphql.ide.introspection.GraphQLIntrospectionFilesManager.getOrCreateIntrospectionSDL(GraphQLIntrospectionFilesManager.java:27)
	at com.intellij.lang.jsgraphql.ide.search.GraphQLPsiSearchHelper$4.visitElement(GraphQLPsiSearchHelper.java:271)
	at com.intellij.psi.impl.PsiElementBase.accept(PsiElementBase.java:273)
	at com.intellij.json.psi.impl.JsonLiteralImpl.accept(JsonLiteralImpl.java:26)
	at com.intellij.json.psi.impl.JsonStringLiteralImpl.accept(JsonStringLiteralImpl.java:28)
	at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
	at com.intellij.psi.PsiRecursiveElementVisitor.visitElement(PsiRecursiveElementVisitor.java:41)
	at com.intellij.lang.jsgraphql.ide.search.GraphQLPsiSearchHelper$4.visitElement(GraphQLPsiSearchHelper.java:282)
	at com.intellij.psi.impl.PsiElementBase.accept(PsiElementBase.java:273)
	at com.intellij.json.psi.impl.JsonPropertyImpl.accept(JsonPropertyImpl.java:27)
	at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
	at com.intellij.psi.PsiRecursiveElementVisitor.visitElement(PsiRecursiveElementVisitor.java:41)
	at com.intellij.lang.jsgraphql.ide.search.GraphQLPsiSearchHelper$4.visitElement(GraphQLPsiSearchHelper.java:282)
	at com.intellij.psi.impl.PsiElementBase.accept(PsiElementBase.java:273)
	at com.intellij.json.psi.impl.JsonValueImpl.accept(JsonValueImpl.java:26)
	at com.intellij.json.psi.impl.JsonContainerImpl.accept(JsonContainerImpl.java:27)
	at com.intellij.json.psi.impl.JsonObjectImpl.accept(JsonObjectImpl.java:27)
	at com.intellij.psi.impl.source.tree.SharedImplUtil.acceptChildren(SharedImplUtil.java:185)
	at com.intellij.psi.impl.source.PsiFileImpl.acceptChildren(PsiFileImpl.java:754)
	at com.intellij.psi.PsiRecursiveElementVisitor.visitElement(PsiRecursiveElementVisitor.java:41)
	at com.intellij.lang.jsgraphql.ide.search.GraphQLPsiSearchHelper$4.visitElement(GraphQLPsiSearchHelper.java:282)
	at com.intellij.psi.PsiElementVisitor.visitFile(PsiElementVisitor.java:35)
	at com.intellij.psi.PsiRecursiveElementVisitor.visitFile(PsiRecursiveElementVisitor.java:60)
	at com.intellij.extapi.psi.PsiFileBase.accept(PsiFileBase.java:60)
	at com.intellij.lang.jsgraphql.ide.search.GraphQLPsiSearchHelper.lambda$processElementsWithWordUsingIdentifierIndex$3(GraphQLPsiSearchHelper.java:286)
	at com.intellij.util.indexing.FileBasedIndexEx.processVirtualFiles(FileBasedIndexEx.java:522)
	at com.intellij.util.indexing.FileBasedIndexEx.processFilesContainingAllKeys(FileBasedIndexEx.java:362)
	at com.intellij.util.indexing.FileBasedIndexEx.getFilesWithKey(FileBasedIndexEx.java:433)
	at com.intellij.lang.jsgraphql.ide.search.GraphQLPsiSearch...

Version and Environment Details

Operation system: macOS 12.0.1 IDE version: IC-213.5744.223 Plugin version: 3.1.0

BoD avatar Dec 10 '21 11:12 BoD

Hi! It shouldn't happen anymore in the released 3.1.2 version, but still it's interesting to find what exactly caused this. Do you have any GraphQL schemas in JSON format in your project?

vepanimas avatar Dec 11 '21 02:12 vepanimas

Hi! To be honest it's a weird project (I'm working on the Apollo Android library)which has tons of schemas, including json ones, all over the place for test cases. Not a regular use case for your plugin.

BoD avatar Dec 11 '21 10:12 BoD