jsp页面java代码中如何获取struts2的返回值

2024-12-03 05:22:53
推荐回答(5个)
回答1:

清楚action的SUCCESS,ERROR这些返回值的作用不?这些是给struts自己用的,不会传到jsp里。如果你要传到jsp里就只能在action里自己加个String的变量,然后在jsp对这个变量进行判断。比如:
String var;
execute(){
if(){
this.var=SUCCESS
}else{
this.var=ERROR
}
return this.var
}

回答2:

首先。你的action有问题。
list不应该是方法体里的变量,list需要有get set 方法。这样jsp页面会取不到值。改成下面这样(我就不写get set方法了。你自己加):

public class A extends ActionSupport
{
Private String username;
Private String password;
Private List list ;
username与password相应的get set方法;

public String execute()
{

list = 这里调用了一个java类,到了一LIST类的
//
//请教这里面应该怎么写才能把在上面得到的list类传到jsp页面上去
//成功转到yes.jsp
}
}

在JSP页面的<@page>标签下面加一个
<@ taglib prefix="s" uri="/struts-tags" >标签包(关于这个标签包的配置和使用建议到网上搜索看看),然后
yes.jsp写法。




这里面item对应着list里的每个元素。
如果item 是对象(如是People对象且People有一个name属性)则可以写成下这样。



回答3:

jsp页面java代码总获取struts2的返回值的方式如下:
1.
<%@ page language="java" import="com.opensymphony.xwork2.util.*"%>
ValueStack vs=(ValueStack)request.getAttribute("struts.valueStack");
类型 propertyValue=(类型)vs.findValue("propertyName");
2.
String ww = (String)request.getAttribute("propertyName");

回答4:

我建议你不要在jsp内嵌java代码,这是很不好的习惯。用struts2的标签。
假设action中属性名为propertyname1;
在jsp中这么判断:

提示


提示

回答5:

EL表达式可以 OGNL也行