我需要向用戶顯示註冊用戶,這裏使用的是Struts2,我很新。但我知道如何在不使用Struts2的情況下檢索元素,我將使用collection設置集合中的所有元素,並且將它放在請求範圍中並轉發到JSP頁面,我將使用JSTL標記檢索所有元素,但我不會「知道如何做到這一點在Struts中2如何使用OGNL從Struts 2中檢索數據
package com.uttara.reg;
import java.util.List;
import java.util.Map;
import org.apache.struts2.interceptor.SessionAware;
import com.opensymphony.xwork2.ActionSupport;
public class FetchRegisterdUserAction extends ActionSupport implements SessionAware{
/**
*
*/
private static final long serialVersionUID = 1L;
private RegBean bean;
private Map session;
private List<RegBean> registerdUsers;
public String execute() throws Exception {
System.out.println("inside execute of FA excut");
Model m = new Model();
registerdUsers= m.getRegisterdUsers();
if(registerdUsers!=null){
setRegisterdUsers(registerdUsers);
System.out.println("inside success");
return SUCCESS;
}
else{
System.out.println("inside failure");
return "failure";
}
}
@Override
public void validate() {
System.out.println("inside validate of LA");
}
public void setSession(Map session) {
// TODO Auto-generated method stub
System.out.println("inside setSession");
this.session = session;
}
public List<RegBean> getRegisterdUsers() {
return registerdUsers;
}
public void setRegisterdUsers(List<RegBean> registerdUsers) {
this.registerdUsers = registerdUsers;
}
}
這是我的JSP代碼中我要去獲取單個元素,但它不工作
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<h1>Registered Users</h1>
<s:iterator value="registerdUsers">
<s:property value="#{registerdUsers.uname}"/>
</s:iterator>
什麼你不能在JSTL需要使用Struts2的OGNL與做? –
我不知道在哪裏存儲集合以轉發到struts 2中的jsp – user2838630
'valueStack'是您正在尋找的地方。 –