Virgo Jetty Server不会为已部署的.par创建URL

时间:2014-08-28 08:30:08

标签: tomcat jetty par eclipse-virgo

我尝试将我的Web应用程序从Virgo Tomcat服务器移动到Virgo Jetty服务器,以更好地支持websockets。 Web应用程序已成功部署并启动,但我没有在Virgo Tomcat中的相同URL下找到该应用程序。有人遇到过这个问题吗?最后请注意,我的webapp是一个.par存档,所有代码都可以找到here

2 个答案:

答案 0 :(得分:0)

作为Jetty的websocket实现的维护者,您有两个选择。

  • 说服virgo升级到Jetty 9 - 因为Jetty 8.1.3中的WebSocket支持(这是Virgo 3.6.3-RELEASE附带的版本)对于WebSocket实现来说过于陈旧有用。
  • 使用virgo tomcat并跳过使用WebSocket。

一些历史:

  • RFC-6455(WebSocket协议)于2011年12月完成
  • Jetty 8.1.3按规范实施了RFC-6455,但仅限于2012年4月
  • Chrome和Firefox在2013年11月更改了Sec-WebSocket协议验证的规则
  • Jetty 7.x和8.x的所有版本都受到影响(Jetty 7.x和8.x没有修复,因为此时它们的安全和数据损坏维护)
  • 早期版本的Tomcat 8.x也会受到影响。
  • Jetty 9.x已于2013年11月申请修复新的Sec-WebSocket协议规则
  • 由于Sec-WebSocket-Protocol问题导致2014年1月Tomcat 8.0初始发布投票失败,并推迟一周修复它
  • 当前的Tomcat 8.x版本已修复

简而言之,如果您想在浏览器上使用websocket,那么您必须使用最新版本的Tomcat 8.x或Jetty 9.x才能获得成功和稳定。

另外,如果你想使用JSR-356(又名javax.websocket),那么你也必须使用Jetty 9.x(因为它不适用于Jetty 7或Jetty 8)

答案 1 :(得分:0)

我创建了一张票[1]来将Virgo更新为Jetty 9。

[1] https://bugs.eclipse.org/bugs/show_bug.cgi?id=443913