完整的Demo请自行下载,spring涉及的包都在项目总的pom.xml下。 下载路径:点击下载 这里主要讲下自己遇到的问题: spring websocket 调用时出现404的问题, 排查: 1.检查是否成功注册dispatcherHandler,随便发起一个请求,断点检查handlerMappings中是否存在你配置的路径;
/** * Return the HandlerExecutionChain for this request. * <p>Tries all handler mappings in order. * @param request current HTTP request * @return the HandlerExecutionChain, or {@code null} if no handler could be found */ protected HandlerExecutionChain getHandler(HttpServletRequest request) throws Exception { for (HandlerMapping hm : this.handlerMappings) { if (logger.isTraceEnabled()) { logger.trace( "Testing handler map [" + hm + "] in DispatcherServlet with name '" + getServletName() + "'"); } HandlerExecutionChain handler = hm.getHandler(request); if (handler != null) { return handler; } } return null; }2.如果handler注册成功那么就是请求的问题了,如拦截器等,注意web.xml中Dispatcher映射配置
<!-- spring mvc 请求后缀 --> <servlet-mapping> <servlet-name>Dispatcher</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping>