隨着從「yo jhipster」生成並以「mvn spring-boot:run」和「grunt server」開始的新腳手架應用程序,我可以加載應用程序並執行操作,如登錄,查看指標,請參閱會話,設置,日誌和審覈。但是,每當我查看「用戶跟蹤器」頁面時,我什麼都看不到?JHipster Atmosphere websocket無法連接
我相信這部分應該演示Atmosphere websocket/AngularJS集成嗎?縱觀瀏覽器控制檯日誌,我看到以下內容:
Websocket failed. Downgrading to Comet and resending atmosphere.js:2866
GET http://0.0.0.0:9000/websocket/activity?X-Atmosphere-tracking-id=0&X-Atmosph…true&X-Cache-Date=0application%2Fjson&X-atmo-protocol=true&_=1393276976964 404 (Not Found)
看來,一個WebSocket連接嘗試,但最終超時和回退長輪詢不起作用?我正在使用最新的Chrome瀏覽器(也試用過最新版本的Firefox和Safari)。
我是否缺少一些簡單的東西?
- 更新1 -
部署它作爲一個WAR到Tomcat 7.0.50顯示數據從用戶跟蹤頁面大氣回來,但它不斷循環試圖獲得一個WebSocket連接(HTTP狀態代碼101:切換協議),以便用戶數據週期性出現和消失。我見過這樣在Chrome中的錯誤:
No suspended connection available. Make sure atmosphere.subscribe has been called and request.onOpen invoked before invoking this method
Tomcat的日誌顯示如下:
[WARN] org.atmosphere.cpr.DefaultAnnotationProcessor - Unable to detect annotations. Application may fail to deploy.
- 更新2 -
部署它作爲一個WAR到碼頭8.1 .14.v20131031(Jetty 9.1.1.v20140108引發錯誤)並使用Chrome 32.0.1700.107進行測試似乎適用於長輪詢的後備傳輸。但是,到WebSockets的初始連接失敗,因爲Atmosphere出於某種原因認爲servlet容器是Tomcat?再次
java.lang.ClassCastException: org.eclipse.jetty.server.Request cannot be cast to org.apache.catalina.connector.RequestFacade
at org.atmosphere.container.TomcatWebSocketUtil.doService(TomcatWebSocketUtil.java:141)
at org.atmosphere.container.Tomcat7Servlet30SupportWithWebSocket.service(Tomcat7Servlet30SupportWithWebSocket.java:62)
感謝您的幫助 - 絕對進取:)
- 更新3 -
概括一切:在服務器日誌,它會引發以下問題:
- 目前「MVN春天啓動:運行」和「咕嚕服務器」不在一起的WebSockets或長輪詢 工作
如果部署JHipster WAR(MVN包)到碼頭8.1.14.v20131031那麼它的工作原理,但你需要從JHipster的pom.xml或者消除大氣中以下依賴將不提供的WebSocket支持:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </dependency>
- Argh。虛驚一場 - 我有它運行使用流,而不是WebSockets的,所以的WebSockets仍然有來自UPDATE2
感謝您的快速響應!我嘗試構建一個WAR(開發模式)並將其部署到Tomcat 7.0.50,它顯示用戶跟蹤器頁面中的數據,但它在Chrome的控制檯中引發了一堆錯誤(我更新了上面的錯誤信息),因此連接不會似乎不太可靠。 –
我相應地更新了我的答案:-) –
我在上面添加了 - 更新2 - 。 Jetty8似乎適用於長輪詢的後備傳輸,但最初的WebSocket連接失敗,因爲Atmosphere認爲servlet容器是Tomcat出於某種原因 –