最近在用pager-taglib做分页,能正常分页,但控制台总是会报错误,ognl.OgnlException: target is null for setProperty(null, "offset", [Ljava.lang.String;@1667f3c)。网上找的方法说在action中没写get、set方法,试过了还是不行,仔细分析了一下报错信息,发现错误地方已经给出了,只是自己没注意到而已。
由于在action中用到了request.getParameter("pager.offset"),是其中的pager没有进行get、set,现在就好办了。代码如下:
在PageModel中定义offset,并get、set:
public class PageModel {
int offset = 0;
int pagesize = 10;
private int total;
private List datas;
public PageModel(){
}
public List getDatas() {
return datas;
}
public void setDatas(List datas) {
this.datas = datas;
}
public int getTotal() {
return total;
}
public void setTotal(int total) {
this.total = total;
}
public int getOffset() {
return offset;
}
public void setOffset(int offset) {
this.offset = offset;
}
public int getPagesize() {
return pagesize;
}
public void setPageSize(int pagesize) {
this.pagesize = pagesize;
}
}
在action中定义PageModel的对象,并get、set即可。
public PageModel pager=new PageModel();
public PageModel getPager() {
return pager;
}
public void setPager(PageModel pager) {
this.pager = pager;
}