2012-05-15 28 views
2

加入GWT應用程序的問題我有一個GWT應用程序,我想通過一個iFrame嵌入其URL在另一個網頁:在一個iFrame

<iframe src="http://127.0.0.1:8888/myProject.html?gwt.codesvr=127.0.0.1:9997"/> 

但我發現了錯誤。

如果我瀏覽它在firefox

Permission denied to access property 'href'(從螢火蟲控制檯)

如果我在chrome瀏覽它:

彈出一個對話框說:Plugin failed to connect to Development Mode server at 127.0.0.1:9997

我研究了很多,但都是徒勞的。

使用開發模式GWT

任何幫助,將不勝感激。

+1

這是veeery痛苦! – GingerHead

+0

第一件跳出我的明顯事物。這是(我假設eclipse)測試網址。你有內部服務器運行嗎? –

+0

@IanJacobs是的,我通過開發模式運行它,eclipse爲我提供了URL,並且我將它複製/粘貼到iframe標記中的html文件中。 – GingerHead

回答

2

好吧,如果有人曾經來過,因爲 he has the same problem and want to know what happened 我只是總結一下我們得到的。

我不確定,但我認爲這個問題是因爲互聯網瀏覽器不允許網站訪問url不在主頁面域(如果它能夠這樣做,將會發生非常糟糕的事情)除非你讓他們這樣做。

這就是所謂的跨域訪問策略,所以有2個選項來處理它

  1. 最簡單單的GWT和外部HTML必須具有相同的主機。
  2. 讓gwt插件從外部html上下文運行,它被描述爲herehere,但由於某些原因,它不起作用。我們仍然不知道爲什麼。
+0

在沒有任何結果給出任何結果之後,我改變了主意 – GingerHead

0

我的解決方法(Ubuntu的,GWT 2.5.1)是取代:

__gwt_HostedModePlugin -> parent.__gwt_HostedModePlugin 
window.top -> window.parent 

在hosted.html