Вопрос

Я сталкиваюсь со странной проблемой при сеансе с использованием GXT 2.1 и серверной части Grails 1.2.Я создаю два FormPanels, panelA и panelB, которые подчиняются action1 и action2 в Граалях соответственно.В action1 я устанавливаю жестко закодированную переменную сеанса и извлекаю ее в action2, но она всегда возвращает null!Если я вручную перейду к action1, а затем перейду к action2 в браузере, это будет работать точно так, как ожидалось.Я пробовал работать как в Firefox, так и в Safari в режиме разработки и получаю одинаковый результат в обоих.Есть какие-нибудь идеи о том, на что мне следует обратить внимание?Некоторые релевантные фрагменты:

В формате GXT:

final FormPanel panelA = new FormPanel();
panelA.setVisible(false);
panelA.setAction(action1);
panelA.setMethod(Method.POST);
RootPanel.get().add(panelA);
panelA.submit();

В Граалях:

def a1 = {
  session.a1 = "Hello A1"
  println "Set A1 to $session.a1"
  render "Set A1 to $session.a1"
}

def a2 = {
  println "From A2, A1 is set to: $session.a1"
  render "From A2, A1 is set to: $session.a1"
}
Это было полезно?

Решение

В итоге я использовал комбинацию записей в междоменной форме и JSON-P в качестве решения, это отличный обходной путь, поскольку я могу просто опубликовать форму (с идентификатором транзакции), сохранить любые отзывы / результаты в сеансе, а затем извлечь эти данные с помощью вызова JSON-P.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top