2013-02-03 176 views
0

此問題似乎特定於JRuby ajax請求的路由。我的頁面發送一個ajax GET,在rails開發模式下工作正常。當通過鶯移動到tomcat時,請求被正確生成,但tomcat響應404錯誤。JRuby/tomcat錯誤404中的錯誤GET

換句話說,route.rb get '/sector/method'中的行已足夠,http://localhost:3000/sector/method由Webrick處理,但是如果將端口更改爲8080(tomcat),我會得到一個HTTP status 404 The requested resource (/sector/method) is not available

顯然tomcat需要被告知可以處理GET,即使沒有找到相應的文件。對?修復?

謝謝。

+0

routes.rb中的我的路由規則的格式爲'get'sector/page'',它在tomcat中工作,但成爲'appname/sector/page'自動。 ajax網址在javascript中被編碼爲'sector/methodname',它可以與rails服務器一起使用,但與常規視圖相對應的路由不同,它不會在調用時自動添加appname,因此是404。是否有一種優雅的方法來修復這個?一個醜陋的雜食是添加另一條路線。 – user1418493

+0

什麼讓我(tomcat新手)麻煩在這裏是使用tomcat管理器本地部署,它創建了appname子目錄。在我的真實服務器上,我將.war轉換爲ROOT,我認爲這將消除URL的問題,所以我一直在爲自己製造麻煩。 – user1418493

回答

1

你確定你的請求指向正確的地址嗎?如果應用程序有效,那麼GETs就沒有辦法。請嘗試將請求直接放入瀏覽器並檢查...

+0

你是正確的,它是如何構建URL的問題。 rails server的工作URL是'http:// sector/method',而tomcat需要URL http:// appname/sector/method'。謝謝。我應該能夠從這裏解決問題。 – user1418493

+0

gr8。請將答案標爲正確:)。 – MiGro