У меня есть приложение Google Web Toolkit (GWT), и когда я связываюсь с ним, я хочу передать некоторые аргументы / параметры, которые оно может использовать для динамического извлечения данных. Например. если бы это было приложение биржевой диаграммы, я бы хотел, чтобы моя ссылка содержала символ, а затем приложение GWT прочитало его и сделало запрос в какую-нибудь биржевую службу. Например. http://myapp/gwt/StockChart?symbol=GOOG будет ссылкой на мой StockChart GWT app, и оно отправит запрос в мою веб-службу информации о акциях на акции GOOG.
До сих пор я использовал серверный код для добавления переменных Javascript на страницу, а затем я прочитал эти переменные с помощью JSNI (собственный интерфейс JavaScript).
Например:
В HTML-коде хоста:
<script type="text/javascript">
var stockSymbol = '<%= request.getParameter("symbol") %>';
</script>
В коде GWT:
public static native String getSymbol() /*-{
return $wnd.stockSymbol;
}-*/;
(Хотя этот код основан на реальном коде, который работает, я изменил его для этого вопроса, поэтому я, возможно, где-то пошутил)
Однако это не всегда хорошо работает в режиме хоста (особенно с массивами), и поскольку JSNI не было в версии 1.4 и более ранних, я предполагаю, что есть другой / лучший способ.