返回信息流前台为flex,通过httpservice将信息转到后台jsp上,然后用struts2调用action进行判断验证工作,现在我的遇到的问题是:jsp如何才能获得action中的属性,假设action中有一个String message,在后台处理时对message进行了赋值,然后我想在jsp中获得这个message的值,用request.getAttribute()得到的是一个空对象,不知道问题出在了哪里,求指导啊,谢谢~~~~~~~
jsp代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<%
String userName = request.getParameter("username");
String password = request.getParameter("password");
%>
<s:action name="Login" executeResult="true">
<s:param name="adminUserName"><%=userName %></s:param>
<s:param name="adminUserPassword"><%=password%></s:param>
</s:action>
<%
response.setContentType("text/xml");
out.println("<?xml version=\"1.0\" encoding=\"utf-8\"?>");
String a=(String)request.getAttribute("message");
String loginResult = "<loginResult>";
String b="<aaa>";
b+=a;
b+="</aaa>";
if (a=="success") {
loginResult += "yes";
} else if(a=="fail"){
loginResult += "no";
}
else if(a==null){
loginResult += "error";
}
loginResult += "</loginResult>";
out.println(loginResult);
out.print(b);
%>
action代码如下:
import com.opensymphony.xwork2.ActionSupport;
public class LoginAction extends ActionSupport{
public String adminUserName;
public String adminUserPassword;
public String message;
public LoginBusiness log;
public String execute() throws Exception{
if(log.certUser(adminUserName, adminUserPassword))
{
message="success";
}
else{
message="fail";
}
return NONE;
}
public String getAdminUserName() {
return adminUserName;
}
public void setAdminUserName(String adminUserName) {
this.adminUserName = adminUserName;
}
public String getAdminUserPassword() {
return adminUserPassword;
}
public void setAdminUserPassword(String adminUserPassword) {
this.adminUserPassword = adminUserPassword;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public LoginBusiness getLog() {
return log;
}
public void setLog(LoginBusiness log) {
this.log = log;
}
}
这是一条镜像帖。来源:北邮人论坛 / java / #20201同步于 2011/9/23
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖
关于jsp获得action中属性值的问题
Divingpig
2011/9/23镜像同步2 回复
订阅后,新回复会通过你的通知中心匿名送达。
2 条回复
[ema1]居然这么久没人理啊。。。桑心了
自己公布答案吧 在action中将变量直接放到session中,ActionContext.getContext().getSession().put("sessionTest", "success");然后在jsp中用session.getAttribute("sessionTest").toString();就可以得到sessionTest的值了。。。 API看的不细害死人啊
为什么不放在request中。。。
放在session中是不恰当的。。。
【 在 Divingpig 的大作中提到: 】
: 居然这么久没人理啊。。。桑心了
: 自己公布答案吧 在action中将变量直接放到session中,ActionContext.getContext().getSession().put("sessionTest", "success");然后在jsp中用session.getAttribute("sessionTest").toString();就可以得到sessionTest的值了。。。 API看的不细害死人啊
: --
: ...................