2012-01-12 36 views
0

我有2個項目,一個GWT/GAE和一個GAE。兩者都實施適當的Restlet jar。GWT客戶端在Restlet調用期間接收空表示

當我從我的junit測試用例(使用Java SE restlet客戶端)調用它時,或者當我從瀏覽器調用它時,服務器返回預期的JSON表示,但當我從我的GWT應用程序調用它時,工作。調用看起來是這樣的:

 itemSuggestProxy.getClientResource().setReference(WebSrvcConnectionMethods.getItemSuggestionURL() + queryString.trim()); 

    try{ 
     itemSuggestProxy.suggestByString(new Result<Representation>(){ 
      public void onFailure(Throwable caught) { 

      } 
      public void onSuccess(Representation rep) { 
        .... 
      } 

的表示代表被返回爲空,當我調試在服務器上的服務器的方法suggestByString()永遠不會打(這是,如果我使用的瀏覽器)

我把它們放在同一臺服務器上(都在本地主機上[不同的端口上])不應該解決同源問題?這使我堅信,它不會拋出任何異常,它只是返回null。

回答

1

如果你正在使用你確實有相同的起源政策問題(因爲同源策略應用於端口以及主機)不同的端口

+0

哦,這是一個痛苦。我想我必須將它們合併成一個項目。謝謝! – 2012-01-12 08:27:29

+1

你也可以在gwt項目中使用proxyservlet來重定向請求,一個很好的例子請看這裏:http://ars-codia.raphaelbauer.com/2011/02/proxy-servlet-for-gwt-environment .html – 2012-01-12 09:54:34

+0

有趣的是,我必須將Jetty和Maven添加到我的項目中嗎? – 2012-01-12 17:23:41