GemFire Management Console 500 Server Internal Error with NPE exceptions:
java.lang.NullPointerException: null
at java.base/sun.nio.fs.UnixPath.normalizeAndCheck(UnixPath.java:75) ~[na:na]
at java.base/sun.nio.fs.UnixPath.<init>(UnixPath.java:69) ~[na:na]
at java.base/sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:279) ~[na:na]
at java.base/java.nio.file.Path.of(Path.java:147) ~[na:na]
at java.base/java.nio.file.Paths.get(Paths.java:69) ~[na:na]
at com.vmware.gemfire.gmc.services.KerberosService.reloadKerberosSecurityConfPath(KerberosService.java:118) ~[classes!/:na]
at com.vmware.gemfire.gmc.services.KerberosService.getAuthConfig(KerberosService.java:45) ~[classes!/:na]
at com.vmware.gemfire.gmc.configurations.KerberosAuthManager.authenticate(KerberosAuthManager.java:30) ~[classes!/:na]
at org.springframework.security.kerberos.web.authentication.SpnegoAuthenticationProcessingFilter.doFilter(SpnegoAuthenticationProcessingFilter.java:145) ~[spring-security-kerberos-web-1.0.1.RELEASE.ja
r!/:1.0.1.RELEASE]
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:350) ~[spring-security-web-5.8.21.jar!/:5.8.21]
at org.springframework.security.web.session.ConcurrentSessionFilter.doFilter(ConcurrentSessionFilter.java:140) ~[spring-security-web-5.8.21.jar!/:5.8.21]
at org.springframework.security.web.session.ConcurrentSessionFilter.doFilter(ConcurrentSessionFilter.java:118) ~[spring-security-web-5.8.21.jar!/:5.8.21]
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:350) ~[spring-security-web-5.8.21.jar!/:5.8.21]
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:216) ~[spring-security-web-5.8.21.jar!/:5.8.21]
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:210) ~[spring-security-web-5.8.21.jar!/:5.8.21]
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:350) ~[spring-security-web-5.8.21.jar!/:5.8.21]
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:216) ~[spring-security-web-5.8.21.jar!/:5.8.21]
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:210) ~[spring-security-web-5.8.21.jar!/:5.8.21]
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:350) ~[spring-security-web-5.8.21.jar!/:5.8.21]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:91) ~[spring-web-5.3.45.jar!/:5.3.45]
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:350) ~[spring-security-web-5.8.21.jar!/:5.8.21]
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:216) ~[spring-security-web-5.8.21.jar!/:5.8.21]
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:210) ~[spring-security-web-5.8.21.jar!/:5.8.21]
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:350) ~[spring-security-web-5.8.21.jar!/:5.8.21]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:91) ~[spring-web-5.3.45.jar!/:5.3.45]
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:350) ~[spring-security-web-5.8.21.jar!/:5.8.21]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:91) ~[spring-web-5.3.45.jar!/:5.3.45]
The exception is really misleading and the stack would look like product issue.
In the meantime, browser returns below, and also looks like server side issue:
Browsers on Windows platforms.
Any GemFire Management Console.
It is due to the behavior of the browsers in Windows platform. When user uses any random URL such as: */dashboard/clusters, the browser won't redirect the URL to *index.html -> *login page, directly try to auth itself.
Then the server will return 500 Server Internal Error and prints the NPE exceptions in the logs. The NPE exception is the result and symptom of this issue, not the cause.
Browsers on Mac platform are fine, did not observe such symptom.
1. If you see below pop up, please do not input Username and Password, then click on Cancel:
2. If no popup at all and directly return 500 Internal Server Error, please use */index.html instead of any other URL on Windows platform browsers.
For example: http://<ip or hostname>:8080/index.html