Обновление от Struts2 2.1 до 2.5

Я пытаюсь сделать redirectAction в другой класс, и вызвать конкретный метод в этом классе.
По сути, когда пользователь нажимает ссылку "Изменить" в ячейке таблицы, мы получаем этот объект и помещаем его в сеанс, а затем вызываем класс Editor, вызывая метод, который извлекает этот объект из сеанса, чтобы он мог отображается в редакторе.

Именно так мои предшественники писали систему давно, и я бы предпочел внести как можно меньше структурных изменений.

Обновление до 2.5 ломает все это.
Мы сузили это до method параметр:

<result name="editSingle" type="redirectAction">
    <param name="actionName">productEdit</param>
    <param name="method">getFromSession</param>
</result>

Когда мы запускаем это, мы получаем

"Действие не нанесено на карту..."

сообщение.
Когда мы закомментируем <param name="method"> Это больше не дает сбоя, но, очевидно, он никогда не попадет в метод, который мы больше не определяем. Документы для redirectAction перечислите несколько параметров, но method не среди них. Итак, мои вопросы, я полагаю, имеют два аспекта:

1) Это действительно было удалено где-нибудь в пути миграции 2.1 -> 2.5?

2) Как люди справляются с этим удалением? Мы не можем быть единственными, кто столкнулся с этим.

1 ответ

1) Это действительно было удалено где-нибудь в пути миграции 2.1 -> 2.5?

Нет, я сравнил Struts 2.5 ServletActionRedirectResult.java со Struts 2.1 ServletActionRedirectResult.java, и оба параметра совпадают method!

Другие вопросы по тегам