使用DisplayTag Library Framework通过Struts2进行分页 [英] Pagination through Struts2 using DisplayTag Library Framework
问题描述
我想为我的应用程序的某些类应用分页,其中我使用spring,struts2&冬眠。这里我从welcome.jsp文件调用action类。它有以下代码:
I want to apply pagination for some class of my application, in which i am using spring, struts2 & hibernate. Here i am calling action class from welcome.jsp file. It has following code :
<s:form action="marketing/allCountry.action">
<s:submit value="Click"></s:submit>
</s:form>
现在我的 allCountry.action
java类具有以下代码:
Now my allCountry.action
class of java has following code :
public String executeAction() throws Exception {
try {
countryList = new ArrayList<Country>();
countryList = this.countrySecurityProcessor.findByAll(0, null, null, null, null, false, false, null, null, null, null, 0);
System.out.println("countryList = "+countryList);
return ActionSupport.SUCCESS;
} catch (Exception ex) {
return ActionSupport.ERROR;
}
}
它正确获取数据,我通过打印确认countryList对象。但现在我从 SUCCESS
重定向到 country.jsp
。 country.jsp
的代码是:
It fetches the data properly, that i confirmed by printing countryList object. But now i am redirecting from SUCCESS
to country.jsp
. The code of country.jsp
is :
<display:table list="countryList" requestURI="CountryAllAction" pagesize="3">
<display:column property="id" title="ID" />
<display:column property="name" />
</display:table>
现在,在执行我的应用程序时,我得到运行时错误,如:
Now at the time executing my application i am getting run time error like :
javax.servlet.ServletException:javax.servlet.ServletException:
Exception:[。FindookUtil]在对象类型$ b中查找属性id时出错$ bjava.lang.String。原因:未知属性'id'
javax.servlet.ServletException: javax.servlet.ServletException: Exception: [.LookupUtil] Error looking up property "id" in object type "java.lang.String". Cause: Unknown property 'id'
此类错误的解决方案是什么?
What is the solution to this type of error?
推荐答案
你需要在你的行动中为你的countryList设置一个getter。
You need to have a getter for your countryList in your action.
List<Country> countryList = new ArrayList<Country>();
public String executeAction() throws Exception {
try {
countryList = this.countrySecurityProcessor.findByAll(0, null, null, null, null, false, false, null, null, null, null, 0);
System.out.println("countryList = "+countryList);
return ActionSupport.SUCCESS;
} catch (Exception ex) {
return ActionSupport.ERROR;
}
}
public List<Country> getCountryList() {
return countryList;
}
这篇关于使用DisplayTag Library Framework通过Struts2进行分页的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!