Struts 2 Web 应用程序中的 HTTP 状态 404 和结果 JSP

问题描述 投票:0回答:1

这是我的设置:

规格:

雄猫7.0.109 jdk1.8.0_11 IDEA20232.5

当我输入此操作的“test5_5”方法时,它将重定向到404页面。

        if(NumberUtils.notNullEquals(result.getResult(), 0)){//登录失败
            return LOGIN;
        }

对应的配置文件

        <action name="test" class="test" method="test5_5">
            <result name="login">${page}</result>
            <result name="reg">${page}</result>
            <result name="doreg" type="chain">
                <param name="namespace">/irdUser/login/opac</param>
                <param name="actionName">opacRegist</param>
            </result>
            <result name="backurl" type="redirect">${backurl}</result>
            <result type="redirect">${page}</result>
        </action>

1.我尝试硬编码页面的路径,但没有帮助。

        if(NumberUtils.notNullEquals(result.getResult(), 0)){//登录失败
            page = "/fixpage/schools/user/login/opacLogin_irdxc.jsp";
            return LOGIN;
        }

2.我尝试重定向,但没有成功。

if(NumberUtils.notNullEquals(result.getResult(), 0)){//登录失败
            return "ceshi";
        }
configuration struts2 actionresult
1个回答
0
投票

登录页面只是应用程序中的一个,您不应该使用从在代码中硬编码了location

的操作返回的动态结果。 
${page}
 中应该有一个参数的 getter。比如

public String getPage() { return page; }
JSP文件应该包含在Web应用程序文件夹中,在war文件解压到服务器后,可供Web应用程序使用并位于Web内容文件夹中。指定位置时,不应使用硬盘驱动器中的

absolute路径。部署应用程序后,位置将使用上下文根路径中的绝对位置。

因此将您的 JSP 放入 Web 内容文件夹并使用那里的绝对路径。如果您重定向到登录页面,则会自动添加上下文路径。

所有操作共有的结果可以全局配置。

<global-results> <result name="login" type="redirect">/opacLogin_irdxc.jsp</result> </global-results>
如果您阅读

Struts配置文件中定义的不同包的全局结果,您可以了解更多信息。

© www.soinside.com 2019 - 2024. All rights reserved.