The following code with 5.3.6 ran OK when properties.getAllowedOrigins()
returned null.
@Override
public void registerStompEndpoints(StompEndpointRegistry registry)
{
registry.addEndpoint(properties.getEndpoint())
.setAllowedOrigins(properties.getAllowedOrigins())
.withSockJS();
}
With 5.3.7 we get a NPE
Caused by: java.lang.NullPointerException
at org.springframework.web.cors.CorsConfiguration.trimTrailingSlash(CorsConfiguration.java:146)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1654)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578)
at org.springframework.web.cors.CorsConfiguration.setAllowedOrigins(CorsConfiguration.java:142)
at org.springframework.web.socket.server.support.OriginHandshakeInterceptor.setAllowedOrigins(OriginHandshakeInterceptor.java:91)
at org.springframework.web.socket.server.support.OriginHandshakeInterceptor.<init>(OriginHandshakeInterceptor.java:65)
at org.springframework.web.socket.config.annotation.WebMvcStompWebSocketEndpointRegistration.getInterceptors(WebMvcStompWebSocketEndpointRegistration.java:135)
at org.springframework.web.socket.config.annotation.WebMvcStompWebSocketEndpointRegistration.withSockJS(WebMvcStompWebSocketEndpointRegistration.java:115)
at com.ge.lfc.ui.backend.data.websocket.WebSocketConfiguration.registerStompEndpoints(WebSocketConfiguration.java:48)
at org.springframework.web.socket.config.annotation.DelegatingWebSocketMessageBrokerConfiguration.registerStompEndpoints(DelegatingWebSocketMessageBrokerConfiguration.java:60)
at org.springframework.web.socket.config.annotation.WebSocketMessageBrokerConfigurationSupport.stompWebSocketHandlerMapping(WebSocketMessageBrokerConfigurationSupport.java:91)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154)
Comment From: rstoyanchev
I presume you mean that the list contains null elements or at least that's what I gather from the stacktrace but you can give 5.3.8-SNAPSHOT a try.