У меня есть глобальный результат, который возвращает ошибку 404 пользователю. У меня также есть действие по умолчанию, которое я хотел бы сделать то же самое.Как удалить дублирующее тело результата в struts2
Я бы хотел, чтобы мой успех привел к действию по умолчанию для расширения моего глобального результата notfound
, но я не вижу, как это сделать. Я что-то упускаю?
<default-action-ref name="notfound" />
<global-results>
<result name="notfound" type="httpheader">
<param name="error">404</param>
<param name="errorMessage">Oh No You Didn't</param>
</result>
</global-results>
<global-exception-mappings>
<exception-mapping exception="com.me.s2ui.AccessException" result="notfound" />
</global-exception-mappings>
<action name="notfound">
<result type="httpheader">
<param name="error">404</param>
<param name="errorMessage">Oh No You Didn't</param>
</result>
</action>
Когда/Как вы используете это действие? Почему бы просто не вернуть «notfound» в результате действия? –
@AleksandrM У меня есть notfound, настроенный как действие по умолчанию, чтобы поймать любой случайный url, входящий в мое приложение. У меня нет кода реализации, с помощью которого можно вернуть неподтвержденный результат. Я просто использую поведение по умолчанию. – Aaron
No * прямой * способ. Но вы можете просто создать простой класс действий и вернуть свой результат из него. Вы также можете использовать неизвестные обработчики для обработки неизвестных действий. –