Configuration 如何删除struts2中的重复结果体

Configuration 如何删除struts2中的重复结果体,configuration,struts2,Configuration,Struts2,我有一个全局结果,它向用户返回404错误。 我还有一个默认操作,我想做同样的事情 我希望我的成功结果在默认操作中扩展我的全局notfound结果,但我不知道如何扩展。我错过什么了吗 404 哦,不,你没有 404 哦,不,你没有 正如和在评论中所述,我想要的是不可能的。发布问题后,我意识到我想要登录默认操作,因此我最终编写了一个类 @org.apache.struts2.convention.annotation.Action(“未找到”) 公共类DefaultAction实现操作,Servl

我有一个全局结果,它向用户返回404错误。 我还有一个默认操作,我想做同样的事情

我希望我的成功结果在默认操作中扩展我的全局
notfound
结果,但我不知道如何扩展。我错过什么了吗


404
哦,不,你没有
404
哦,不,你没有
正如和在评论中所述,我想要的是不可能的。发布问题后,我意识到我想要登录默认操作,因此我最终编写了一个类

@org.apache.struts2.convention.annotation.Action(“未找到”)
公共类DefaultAction实现操作,ServletRequestAware
{
私有静态记录器Logger=LogManager.getLogger(DefaultAction.class);
私有HttpServletRequest;
@凌驾
公共字符串execute()引发异常
{
logger.warn(“未知目标”+request.getRequestURI());
返回“securityerror”;
}
@凌驾
公共无效setServletRequest(HttpServletRequest请求)
{
这个.request=req;
}
}
Struts.xml


${request.loginUrl}
用户
404
哦,不,你没有

您何时/如何使用此操作?为什么不作为操作的结果返回
notfound
?@AleksandrM我将notfound配置为默认操作,以捕获任何进入我的应用程序的随机url。我没有任何用于返回notfound结果的实现代码。我只是使用默认行为。没有直接的方法。但您可以创建简单的action类并从中返回结果。您还可以使用未知处理程序来处理未知操作。@Struts2中没有扩展结果这样的东西,您可以扩展结果类型类。创建一个拦截器,如果操作名是
notfound
:),它将返回
notfound
结果。我在前面的评论中几乎键入了“也许你也想做一些日志记录”+感谢你回答自己的问题并接受它。