我用的是Struts2 在Action中定义了一个变量,想要在JSP中获取Action中定义的那个变量的值 怎么获取?
packagecn.classiclink.web.action;importjava.util.ArrayList;importjava.util.List;impor...
package cn.classiclink.web.action;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts2.ServletActionContext;
import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.convention.annotation.Results;
import org.igfay.jfig.JFig;
import com.sun.java_cup.internal.internal_error;
import cn.classiclink.serviceclient.AdverService;
import cn.classiclink.serviceclient.CommonService;
import cn.classiclink.serviceclient.CouponService;
import cn.classiclink.serviceclient.DealerService;
import cn.classiclink.serviceclient.bean.Image;
import cn.classiclink.serviceclient.bean.PagedList;
import cn.classiclink.serviceclient.bean.Plate;
import cn.classiclink.util.ComponentFactory;
import cn.classiclink.web.model.Pagination;
@Results({
@Result(name="default", location="/page/probeDealer.jsp"),
})
public class ProbeDealer extends BaseAction {
private CouponService cs;
private DealerService ds;
private CommonService cns;
private AdverService as;
private Pagination pagination;
private int pageNow = 1 ; //初始化为1,默认从第一页开始显示
private int pageSize = 15 ; //每页显示5条记录
public int getPageNow() {
return pageNow;
}
public void setPageNow(int pageNow) {
this.pageNow = pageNow;
}
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public Pagination getPagination() {
return pagination;
}
public void setPagination(Pagination pagination) {
this.pagination = pagination;
}
/**
* 构造
*/
public ProbeDealer(){
cs=(CouponService)ComponentFactory.getInstance().getComponent("couponService");
ds=(DealerService)ComponentFactory.getInstance().getComponent("dealerService");
cns=(CommonService)ComponentFactory.getInstance().getComponent("commonService");
as=(AdverService)ComponentFactory.getInstance().getComponent("adverService");
}
@Action("probeDealer")
public String home() {
return "default";
}
/**
* 小编探商家 标题列表
* @return
*/
public List<Plate> getXiBianList(){
HttpServletRequest request=ServletActionContext.getRequest();
PagedList<Plate> list=cns.getAdPlates(110, 120);
List<Plate> list2=new ArrayList<Plate>();
int totalpage=list.getCount()/15==0?list.getCount()/15:list.getCount()/15+1;
if(pageNow>=totalpage){
pageNow=totalpage;
}
if(pageNow<=1){
pageNow=1;
}
int pageCount=pageNow*10;
if(pageCount>=list.getCount()){
pageCount=list.getCount();
}
for(int i=pageNow*10-10;i<pageCount;i++){
Plate plate=(Plate)list.get(i);
list2.add(plate);
}
return list2;
}
}
页面获取值<s:property value ="pageNow"/>但是不显示 展开
import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts2.ServletActionContext;
import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.convention.annotation.Results;
import org.igfay.jfig.JFig;
import com.sun.java_cup.internal.internal_error;
import cn.classiclink.serviceclient.AdverService;
import cn.classiclink.serviceclient.CommonService;
import cn.classiclink.serviceclient.CouponService;
import cn.classiclink.serviceclient.DealerService;
import cn.classiclink.serviceclient.bean.Image;
import cn.classiclink.serviceclient.bean.PagedList;
import cn.classiclink.serviceclient.bean.Plate;
import cn.classiclink.util.ComponentFactory;
import cn.classiclink.web.model.Pagination;
@Results({
@Result(name="default", location="/page/probeDealer.jsp"),
})
public class ProbeDealer extends BaseAction {
private CouponService cs;
private DealerService ds;
private CommonService cns;
private AdverService as;
private Pagination pagination;
private int pageNow = 1 ; //初始化为1,默认从第一页开始显示
private int pageSize = 15 ; //每页显示5条记录
public int getPageNow() {
return pageNow;
}
public void setPageNow(int pageNow) {
this.pageNow = pageNow;
}
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public Pagination getPagination() {
return pagination;
}
public void setPagination(Pagination pagination) {
this.pagination = pagination;
}
/**
* 构造
*/
public ProbeDealer(){
cs=(CouponService)ComponentFactory.getInstance().getComponent("couponService");
ds=(DealerService)ComponentFactory.getInstance().getComponent("dealerService");
cns=(CommonService)ComponentFactory.getInstance().getComponent("commonService");
as=(AdverService)ComponentFactory.getInstance().getComponent("adverService");
}
@Action("probeDealer")
public String home() {
return "default";
}
/**
* 小编探商家 标题列表
* @return
*/
public List<Plate> getXiBianList(){
HttpServletRequest request=ServletActionContext.getRequest();
PagedList<Plate> list=cns.getAdPlates(110, 120);
List<Plate> list2=new ArrayList<Plate>();
int totalpage=list.getCount()/15==0?list.getCount()/15:list.getCount()/15+1;
if(pageNow>=totalpage){
pageNow=totalpage;
}
if(pageNow<=1){
pageNow=1;
}
int pageCount=pageNow*10;
if(pageCount>=list.getCount()){
pageCount=list.getCount();
}
for(int i=pageNow*10-10;i<pageCount;i++){
Plate plate=(Plate)list.get(i);
list2.add(plate);
}
return list2;
}
}
页面获取值<s:property value ="pageNow"/>但是不显示 展开
5个回答
展开全部
首先明确下,你这里对pageNow属性 设置了getter setter方法
在值栈中看有没有这个属性,属性值是多少?
没有证明你的action调用有问题。根本不是这个action
如果有,看值是多少?页面上用<s:debug></s:debug>
在值栈中看有没有这个属性,属性值是多少?
没有证明你的action调用有问题。根本不是这个action
如果有,看值是多少?页面上用<s:debug></s:debug>
追问
我本地不能测试 公司端口都连不上 会不会是value不能获取int属性的值的 只能获取String和Integer这种类型的?
追答
不存在这个问题,给你个现成的分页代码,s2sh的,你自己看下,其实都差不多。
展开全部
可以先在action中用request.getSession.setAttribute("var",value)
然后再惊悚片页面里就用<% String s = request.getSession.getAttribute("var")%>
然后再惊悚片页面里就用<% String s = request.getSession.getAttribute("var")%>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这说明你的这个pageNow没有值呗,你自己到值栈里面去看下吧!<s:debug></s:debug>
追问
private int pageNow = 1 ; //初始化为1,默认从第一页开始显示
我在action中定义的时候已经初始化了 怎么可能没有值呢?这种需不需要写个JAVABEAN的?
还有 BaseAction 这个action就是集成actionSupport的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
请问你是否用了 Spring啊~?如果没用的话 就没有IOC依赖注入...就需要将 pageNow 用 setAttribute 或者 setParamater传值给页面...
更多追问追答
追问
用了
追答
别的属性都有么...是不是没有注入~?还是属性名的问题呢...
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Action implements RarameterAware
Map parameters ;get set 方法;
this.parameters.getParamter(页面定义);
Map parameters ;get set 方法;
this.parameters.getParamter(页面定义);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询