Struts2 - пересылка по аннотации с динамическим параметром

1

Я пытаюсь передать результат действия другому действию с динамическим параметром. Переданный параметр для второго действия имеет значение "".

@Result(name = "success", 
    location = "edit_service_subscribers", 
        type = "redirect", 
      params = {"selectedServiceId", "%{serviceId}"}
)

Я объявил private String serviceId; с геттером и сеттером в первом действии, а private String selectedServiceId; с геттером и сеттер во втором действии.

Проблема заключается в заполнении значения параметра. Но где?

Как передать значение глобальной переменной в класс действия перенаправленному параметру?

Теги:
dynamic
struts2
parameters
annotations

3 ответа

2
Лучший ответ
  1. используйте RedirectAction для перенаправления на другое действие.
    Результат Redirect используется для перенаправления на URL без действия (например, внешние URL-адреса).

  2. Это не OGNL: вместо

    "%{serviceId}"
    

    использование

    "${serviceId}"
    
  • 0
    Есть другая проблема. Я согласен, следует использовать redirectAction, но мой второй ACTION "edit_service_subscribeers" запущен, а параметр selectedServiceId пуст. Я думаю, что проблема в первом ДЕЙСТВИИ, где я заполняю значение параметра. Можно ли объявить глобальную переменную и заполнить значение?
  • 0
    Проблема описана в пункте n. 2 из моего ответа
2

Я уже решил это. Я не знаю, как, но там исчез GETer... Сколько времени тратят на это...

Мой фактический код:

})
@Results({
    @Result(name = "success", type = "redirectAction",params = {"namespace", "/", "selectedServiceId", "${serviceId}", "actionName", "edit_service_subscribers"})
})

Он работает нормально.

0

Замените свою линию на эту

@Result(name = "success", location = "/department.jsp",
        type="redirect", params={"yourkey", "${passingvalue}"})

Ещё вопросы

Сообщество Overcoder
Наверх
Меню