这是我的设置:
规格:
雄猫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";
}
登录页面只是应用程序中的一个,您不应该使用从在代码中硬编码了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配置文件中定义的不同包的全局结果,您可以了解更多信息。