From 079fb2db737c830da62e57a02102bf0e9d70d6cb Mon Sep 17 00:00:00 2001 From: Rossen Stoyanchev Date: Mon, 2 Dec 2013 13:59:17 -0500 Subject: [PATCH] Add assert AbstractStandardRequestUpgradeStrategy --- .../server/support/AbstractStandardUpgradeStrategy.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/spring-websocket/src/main/java/org/springframework/web/socket/server/support/AbstractStandardUpgradeStrategy.java b/spring-websocket/src/main/java/org/springframework/web/socket/server/support/AbstractStandardUpgradeStrategy.java index 2bbcec5f4a8..09c7e0184bf 100644 --- a/spring-websocket/src/main/java/org/springframework/web/socket/server/support/AbstractStandardUpgradeStrategy.java +++ b/spring-websocket/src/main/java/org/springframework/web/socket/server/support/AbstractStandardUpgradeStrategy.java @@ -32,6 +32,7 @@ import org.springframework.http.HttpHeaders; import org.springframework.http.server.ServerHttpRequest; import org.springframework.http.server.ServerHttpResponse; import org.springframework.http.server.ServletServerHttpRequest; +import org.springframework.util.Assert; import org.springframework.web.socket.support.WebSocketExtension; import org.springframework.web.socket.WebSocketHandler; import org.springframework.web.socket.adapter.StandardWebSocketHandlerAdapter; @@ -64,7 +65,11 @@ public abstract class AbstractStandardUpgradeStrategy implements RequestUpgradeS protected ServerContainer getContainer(HttpServletRequest request) { ServletContext servletContext = request.getServletContext(); - return (ServerContainer) servletContext.getAttribute("javax.websocket.server.ServerContainer"); + String attrName = "javax.websocket.server.ServerContainer"; + ServerContainer container = (ServerContainer) servletContext.getAttribute(attrName); + Assert.notNull(container, "No 'javax.websocket.server.ServerContainer' ServletContext attribute. " + + "Are you running in a Servlet container that supports JSR-356?"); + return container; } protected List getInstalledExtensions(WebSocketContainer container) {