Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从Struts1迁移到Struts2_Java_Struts2_Migration_Struts 1 - Fatal编程技术网

Java 从Struts1迁移到Struts2

Java 从Struts1迁移到Struts2,java,struts2,migration,struts-1,Java,Struts2,Migration,Struts 1,我正在将一个应用程序从Struts 1迁移到Struts 2。我遇到了以下代码段。请告诉我如何替换Struts 2中的代码段 受保护的ActionForward getActionForward(FilterContext ctx、字符串键、布尔重定向){ HashMap filterForwards=ctx.getFilterForwards(); String forwardPage=(字符串)filterForwards.get(键); 如果(forwardPage==null) 返回nu

我正在将一个应用程序从Struts 1迁移到Struts 2。我遇到了以下代码段。请告诉我如何替换Struts 2中的代码段

受保护的ActionForward getActionForward(FilterContext ctx、字符串键、布尔重定向){
HashMap filterForwards=ctx.getFilterForwards();
String forwardPage=(字符串)filterForwards.get(键);
如果(forwardPage==null)
返回null;
返回新的ActionForward(转发页面,重定向);
}
另一段代码如下所示:-

protectedvoid setError(HttpServletRequest-req,字符串msg){
ActionMessages错误=新建ActionMessages();
添加(“异常”,新操作消息(MSG_KEY,MSG));
请求setAttribute(Globals.ERROR\u键,错误);
}

如果我用Struts 1中的
addActionError(msg)

替换上述代码,您应该从
execute
方法返回
ActionForward
。Struts 2返回类型为
String
的结果代码。因此,应该用结果代码替换预期为
ActionForward
的代码。操作结果应该以与Struts 1中配置转发相同的方式配置为操作

创建两个结果配置:一个是
重定向操作
结果类型,另一个是
调度程序
结果类型。像这样

${forwardPage}
${forwardPage}
该代码应替换为

私有字符串转发页面;
公共字符串getForwardPage(){return forwardPage;}
公共无效setForwardPage(字符串forwardPage){
this.forwardPage=forwardPage;
} 
受保护的字符串getActionForward(FilterContext ctx、字符串键、布尔重定向){
HashMap filterForwards=ctx.getFilterForwards();
String forwardPage=(字符串)filterForwards.get(键);
如果(forwardPage==null)
不返回任何值;
如果(重定向){
设置forwardPage(forwardPage);
返回“重定向”;
}否则{
setForwardPage(forwardPage)
回归成功;
}
}
错误由操作应继承的
ActionSupport
类提供。然后您可以使用代码

protectedvoid setError(字符串msg){
addActionError(getText(“异常”,新对象[]{msg}));
}
在JSP中,您可以使用



您可以发布完整的代码吗。通过这段代码,我们猜不出您想要实现什么?很难发布整个代码。但在第一种情况下,该函数用于页面重定向。在第二种情况下,代码用于设置全局操作错误。我希望有帮助。