2011-08-30 22 views
0

gwt編譯器如何在gwtModule中找到gwt_servlet?GWT完成者如何找到gwt_servlets?

現在我收到異常「請求的資源(/ finalWar/GWTAPPS/gwtmainmodule/GWTServlet)不可用。」

/finalWar/GWTAPPS/gwtmainmodule/GWTServlet =/warFileName/GWTAPPS/myGwtModuleName/GWTServletName

<servlet> 
    <servlet-name>GWTServlet</servlet-name> 
    <servlet-class>.ui.gwtmainmodule.server.GWTServletImpl</servlet-class> 
    </servlet> 


<servlet-mapping > 
    <servlet-name>GWTServlet</servlet-name> 
    <url-pattern>/GWTServlet</url-pattern> 
</servlet-mapping> 

我手動添加編譯gwt_servlet類在GWT模塊仍然同樣的問題。 : - |

我想知道GWT編譯器如何找到gwtServlets(RemoteServiceServlet)?

在這個問題上的任何幫助或指導,將不勝感激

回答

0

路徑在web.xml中是相對於Web應用程序的根目錄(其中必須包含你的web.xml一個WEB-INF子文件夾的文件夾)。

因此,您必須將web.xml中的路徑調整爲客戶端調用的路徑(GWTAPPS/gwtmainmodule/GWTServletgwtmainmodule/GWTServlet,很難從您的描述中分辨出來),或者調整客戶端代碼使用的路徑(無論是使用@RemoteServiceRelativePath - 注意,這個路徑是相對於你的模塊,所以很可能在你的情況gwtmainmodule,而不是HTML頁面加載nocache.js,也被稱爲的主機頁面,請注意,您可以使用../走路建立文件夾層次結構 - 或將RPC服務轉換爲ServiceDefTarget並致電setServiceEntryPoint)。所有這些都是在運行時,是關於URL,而不是文件(並且要記住你有通過網絡以HTTP方式對話的客戶端和服務器端)

這與GWT編譯器完全沒有關係,或者甚至開發模式。

+0

我在RemoteServiceRelativePath中添加了../../GWTServlet,即@RemoteServiceRelativePath(「../../ GWTServlet」)It Works。謝謝。 – StackOverFlow