Эквивалент серверной части Window.Location.getParameter () в GWT - PullRequest
0 голосов
/ 26 января 2011

На стороне клиента я могу получить параметры URL в GWT по

String parameterName = Window.Location.getParameter("parameterName");

Выполнение той же серверной части дает мне следующее исключение:

[...]
threw an unexpected exception: java.lang.ExceptionInInitializerError
[...]
Caused by: java.lang.ExceptionInInitializerError
at com.google.gwt.user.client.Window$Location.getQueryString(Window.java:262)
at com.google.gwt.user.client.Window$Location.ensureParameterMap(Window.java:321)
at com.google.gwt.user.client.Window$Location.getParameter(Window.java:211)
at com.icada.idea.server.CurrentUser.getUser(CurrentUser.java:31)

Где строка 31 в CurrentUser читает:

String noLogin= Window.Location.getParameter("nologin");

Итак, как мне получить параметры сервера на стороне сервера? Или это единственный способ передать в качестве параметра метод, который я вызываю?

1 Ответ

1 голос
/ 26 января 2011

На стороне сервера у вас нет окна.Все, что вы получаете от клиента, это запрос - и этот запрос может содержать параметры (параметры GET или параметры POST).

Вы можете получить их, используя

request.getParameter("parameterName");

Запрос доступен вСервлеты, например, в методах doGet(HttpServletRequest request, HttpServletResponse response) и doPost(HttpServletRequest request, HttpServletResponse response).

Если вы используете GWTRPC, вы можете использовать getThreadLocalRequest(), но, как правило, вы не публикуете параметры окна в качестве параметров POST сВызов GWTRPC, было бы более естественно передать параметры, которые вам требуются, в качестве параметров метода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...