From 840a05c9a18f973d54cf1041fa3995835662685c Mon Sep 17 00:00:00 2001 From: Martin Lippert Date: Sat, 30 Mar 2019 17:45:17 +0100 Subject: [PATCH] fix NPE in webflux routing analysis --- .../boot/java/requestmapping/WebfluxRouterSymbolProvider.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/WebfluxRouterSymbolProvider.java b/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/WebfluxRouterSymbolProvider.java index 33a6c4c95..fd561df0d 100644 --- a/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/WebfluxRouterSymbolProvider.java +++ b/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/WebfluxRouterSymbolProvider.java @@ -273,7 +273,9 @@ public class WebfluxRouterSymbolProvider extends AbstractSymbolProvider { MethodInvocation methodInvocation = (MethodInvocation) node; IMethodBinding methodBinding = methodInvocation.resolveMethodBinding(); - if (WebfluxUtils.ROUTER_FUNCTIONS_TYPE.equals(methodBinding.getDeclaringClass().getBinaryName())) { + if (methodBinding != null && methodBinding.getDeclaringClass() != null + && WebfluxUtils.ROUTER_FUNCTIONS_TYPE.equals(methodBinding.getDeclaringClass().getBinaryName())) { + String name = methodBinding.getName(); if (WebfluxUtils.REQUEST_PREDICATE_NEST_METHOD.equals(name)) { List arguments = methodInvocation.arguments();