Ответ 1
<global-forwards>
Считайте, что вы проверяете пароль пользователя для разных URL-адресов, таких как update.do, insert.do delete.do и т.д. Если это действительный пользователь, вам необходимо выполнить необходимое действие. Если вы не перешли на страницу входа в систему. отображения ниже
<action-mappings>
<action path="/insert" type="controller.Insert">
<forward name="success" path="/insert.jsp"/>
<forward name="failure" path="/login.jsp"/>
</action>
<action path="/update" type="controller.Update">
<forward name="success" path="/update.jsp"/>
<forward name="failure" path="/login.jsp"/>
</action>
<action path="/delete" type="controller.Delete">
<forward name="success" path="/delete.jsp"/>
<forward name="failure" path="/login.jsp"/>
</action>
</action-mappings>
Вместо повторения <forward name="failure" path="/login.jsp"/>
вы можете объявить это в <global-forwards>
, как показано ниже
<global-forwards>
<forward name="failure" path="/login.jsp"/>
</global-forwards>
Теперь вы можете удалить <forward name="failure" path="/login.jsp"/>
в сопоставлениях действий.
<global-exceptions>
Если вы получаете java.Io исключение вместо обработки вручную для каждого, вы можете объявить глобально, как показано ниже.
<global-exceptions>
<exception type="java.io.IOException" path="/pages/error.jsp"/>
</global-exceptions>
Надеюсь, это прояснит вашу проблему.