Как мне обработать несколько действий в одной форме в отображении действий WILDCARD?

Согласно этому решению Struts2 обрабатывает несколько действий... Я знаю, что Struts2 DMI может легко обрабатывать несколько действий в одной форме.

Недавно Struts2 отключил механизм DMI для решения проблемы безопасности. Теперь мы используем WILDCARD MAPPINGS, чтобы отобразить все действия в struts.xml

пример:

<action name="*/*" class="action.{1}Action" method="{2}">
    ...
</action>

В WILDARD MAPPINGS есть небольшая проблема, связанная с отображением нескольких действий / методов в одной форме.

<s:form action="actionA/method2" theme="simple" >
    <s:submit value="lastStep"  action="actionA/method1"/>
    <s:submit value="nextStep" />
</s:form>

Как я могу исправить эту проблему?

1 ответ

Решение

В Struts2, даже если DMI выключен, можно использовать специальный параметр. action:, Для использования этого параметра в JSP необходимо настроить

в вашем struts.xml файл:

<constant name="struts.mapper.action.prefix.enabled" value="true" />

Специальные параметры обрабатываются средством отображения действий, когда фильтр пытается получить сопоставление действий из отфильтрованного URL-адреса, и этот параметр добавляется в форму при использовании action атрибут submit тег.

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