如何从GWT页面外部链接到动态内容

时间:2011-09-30 02:06:35

标签: ajax gwt hyperlink

我有一个用纯GWT编写的webapp example.com。显然是webapp 有动态链接,例如example.com/#/link1

我想从我的网站外部访问example.com/#/link1。例如。我想在facebook.com上发布example.com/#/link1链接,以便我的朋友可以看到它。但是,当有人点击该链接时,即使我的EntryPoint中有valueChangeHandler,也会将他带到example.com,而不是example.com/#/link1

所以我的问题是,如何从我的GWT页面外部访问动态链接。

编辑:找到答案:

在EntryPoint中执行以下操作

public void onModuleLoad() {
     String initState = History.getToken(); 
    //This is your initial token for your gwt ap
    System.out.println(initState);

    //Do any stuff you want to here, like init some stuff in your app, and finally:
    History.newItem(initState);
    //That las line calls the initial state of your app. This worked for me because I
    //changed the history state in between, so I had to save initialState, do stuff and then
    //fire inistial state.
}

1 个答案:

答案 0 :(得分:1)

在我看来,您需要使用“活动和地点”来处理浏览器历史记录。这将通过插入/解析URL位置标记在应用程序中的位置/状态/页面与浏览器中的URL之间创建链接。请查看此Google Dev page的内容。

你应该能够通过history处理来做你想做的事。您定义了一组标记,用于描述应用程序中的位置/页面/任何状态。您的应用会解析URL中的令牌并重定向到相应的页面/视图。