我試着將cometd(spring-jquery-jetty7)與appfuse spring MVC項目集成。cometd spring請求方法'POST'不支持/ cometd/handshake
我的web.xml是
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>/app/*</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>cometd</servlet-name>
<servlet-class>org.cometd.server.CometdServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>cometd</servlet-name>
<url-pattern>/cometd/*</url-pattern>
</servlet-mapping>
並沒有像彈簧jQuery的jetty7例如所有其他配置,當我嘗試從腳本cometd.handshake(),它的失敗,從日誌就像遇到錯誤如下:
WARN [http-8080-6] PageNotFound.handleHttpRequestMethodNotSupported(183)|不支持請求方法'POST' 115117 [http-8080-6] WARN org.springframework.web.servlet.PageNotFound - 請求方法POST'不支持
任何人都會遇到這種情況嗎?希望調度程序servlet處理請求而不是cometd servlet,我不知道這裏有什麼錯誤,對此的建議很受歡迎。 謝謝
我在cometd servlet上看不到啓動順序。我認爲它必須先加載,然後是Spring。另外,從錯誤消息中看起來像URL是無效的......它用於發佈的完整URL是什麼?我希望它會從發佈的web.xml中的'/ cometd /'開始。 – CodeChimp
Hi @CodeChimp感謝您的回覆,我通過更改servlet命令(如cometd servlet第一個和調度程序servlet第二個)來解決此問題。謝謝 – mathi