gpt4 book ai didi

Spring Websocket 和 404 连接状态

转载 作者:行者123 更新时间:2023-12-04 15:11:35 30 4
gpt4 key购买 nike

在 Tomcat 7.0.50 下运行的工作 Spring MVC 4.0.2 项目中,我正在尝试使用简单的代理和 sockjs stomp 端点实现 Spring Websocket,遵循 official reference .因此,在 contextConfigLocation(DistpacherServlet 属性)中,我添加了一个值“websocket-config.xml”,其中包含:

>     <websocket:message-broker application-destination-prefix="/app" >
> <websocket:stomp-endpoint path="/monitor">
> <websocket:sockjs />
> </websocket:stomp-endpoint>
> <websocket:simple-broker prefix="/topic"/>
> </websocket:message-broker>

在 Eclipse 控制台(catalina 日志)中,当我启动 Tomcat 时,出现行

  • Initializing ExecutorService 'clientInboundChannelExecutor'
  • Initializing ExecutorService 'clientOutboundChannelExecutor'
  • Initializing ExecutorService 'messageBrokerSockJsScheduler'
  • Mapped URL path [/monitor/**] onto handler of type [class org.springframework.web.socket.sockjs.support.SockJsHttpRequestHandler]


在jsp页面我把代码

. . . .
var socket = new SockJS("monitor");
var stompClient = Stomp.over(socket); . . . .



不幸的是,当我从 Chrome (v32) 加载 jsp 页面时,出现此错误:

Failed to load resource: the server responded with a status of 404 (Not Found)

http ://localhost:8080/(ProjectName)/monitor/info



显然我是在本地做这个测试,然后所有其他 webapp 资源都可以在 http://localhost/(ProjectName) 正确访问。

怎么了?

**** 2014 年 2 月 20 日更新
我试着关注 this解决了堆栈问题,建议将 Tomcat8 用于 Spring Websocket,不幸的是它不起作用

最佳答案

由于对/monitor/info 的请求,服务器端是否有任何日志输出? DispatcherServlet 本身是如何映射的?我希望从你上面的内容中“/”。

SockJS 端点基本上是在 Spring MVC 中映射的 URL(带有 SimpleUrlHandlerMapping),因此请尝试其他 Spring MVC 映射 Controller 方法。并打开日志记录,是否有过滤器或其他返回 404 的东西?

关于Spring Websocket 和 404 连接状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21883033/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com