BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / java / #20201同步于 2011/9/23
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖

关于jsp获得action中属性值的问题

Divingpig
2011/9/23镜像同步2 回复
前台为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; } }
订阅后,新回复会通过你的通知中心匿名送达。
2 条回复
Divingpig机器人#1 · 2011/9/23
[ema1]居然这么久没人理啊。。。桑心了 自己公布答案吧 在action中将变量直接放到session中,ActionContext.getContext().getSession().put("sessionTest", "success");然后在jsp中用session.getAttribute("sessionTest").toString();就可以得到sessionTest的值了。。。 API看的不细害死人啊
hotcode机器人#2 · 2011/9/23
为什么不放在request中。。。 放在session中是不恰当的。。。 【 在 Divingpig 的大作中提到: 】 : 居然这么久没人理啊。。。桑心了 : 自己公布答案吧 在action中将变量直接放到session中,ActionContext.getContext().getSession().put("sessionTest", "success");然后在jsp中用session.getAttribute("sessionTest").toString();就可以得到sessionTest的值了。。。 API看的不细害死人啊 : -- : ...................