[Help]datascroller does not wokk
xmkevinchen May 27, 2008 9:04 PMI am using richfaces-3.2.0SR1 + jsf1.2+spring+hibernate
I saw the online demo about the <rich:datascroller>,and try to write a example by myself.Unfortunally, it doesn't work.
web page code Code:
<?xml version="1.0" encoding="UTF-8" ?> <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xmlns:rich="http://richfaces.org/rich"> <ui:composition> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>title(replace some chinese character)</title> </head> <body> <f:view> <rich:panel header="(replace some chinese character)"> <div id=""></div> <h:form> <rich:dataTable id="expenseList" width="95%" border="0" value="#{expenseBeanAction.expenses}" var="expense" rows="10" onRowMouseOver="this.style.backgroundColor='#F1F1F1'" onRowMouseOut="this.style.backgroundColor='#{a4jSkin.tableBackgroundColor}'"> <f:facet name="header"> <rich:columnGroup> <rich:column width="10px"> <h:selectBooleanCheckbox value="" /> </rich:column> <rich:column> <h:outputText value="(replace some chinese character)"></h:outputText> </rich:column> <rich:column> <h:outputText value="(replace some chinese character)"></h:outputText> </rich:column> <rich:column> <h:outputText value="(replace some chinese character)"></h:outputText> </rich:column> <rich:column> <h:outputText value="(replace some chinese character)"></h:outputText> </rich:column> <rich:column> <h:outputText value="(replace some chinese character)"></h:outputText> </rich:column> </rich:columnGroup> </f:facet> <rich:column> <h:selectBooleanCheckbox value="" /> </rich:column> <rich:column> <h:outputText value="#{expense.expenseTime}"></h:outputText> </rich:column> <rich:column> <h:outputText value="#{expense.expenseType}"></h:outputText> </rich:column> <rich:column> <h:outputText value="#{expense.amountOfMoney}"></h:outputText> </rich:column> <rich:column> <h:outputText value="#{expense.location}"></h:outputText> </rich:column> <rich:column> <h:outputText value="#{expense.description}"></h:outputText> </rich:column> <f:facet name="footer"> <rich:datascroller align="right" for="expenseList"> </rich:datascroller> </f:facet> </rich:dataTable> </h:form> </rich:panel> </f:view> </body> </html> </ui:composition> </jsp:root>
my backingBean code, the expenseService is registerd in spring bean.xml file.
And I am sure that the expenseService works fine.
package orz.kevin.money.finance.action; import java.util.ArrayList; public class ExpenseBeanAction { private static Log log = LogFactory.getLog(ExpenseBeanAction.class); private Expense expense; private List<Expense> expenses = new ArrayList<Expense>(); private IExpenseService expenseService; public String expenseManager() { expenses = expenseService.getList(); return "expenseManager"; } public Expense getExpense() { return expense; } public void setExpense(Expense expense) { this.expense = expense; } public List<Expense> getExpenses() { return expenses; } public void setExpenses(List<Expense> expenses) { this.expenses = expenses; } public void setExpenseService(IExpenseService expenseService) { this.expenseService = expenseService; } }
and my web.xml file Code:
<?xml version="1.0" encoding="utf-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="money" version="2.5">
<display-name>money</display-name>
<!-- RichFaces Configuration -->
<context-param>
<param-name>org.richfaces.SKIN</param-name>
<param-value>blueSky</param-value>
</context-param>
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>server</param-value>
</context-param>
<context-param>
<param-name>javax.faces.DEFAULT_SUFFIX</param-name>
<param-value>.jspx</param-value>
</context-param>
<!-- Spring Configuration -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/classes/applicationContext-properties.xml
/WEB-INF/classes/applicationContext-dao.xml
/WEB-INF/classes/applicationContext-dataSource.xml
/WEB-INF/classes/applicationContext-quartzBase.xml
/WEB-INF/classes/applicationContext-quartzDao.xml
/WEB-INF/classes/applicationContext-service.xml
</param-value>
</context-param>
<context-param>
<param-name>webAppRootKey</param-name>
<param-value>money</param-value>
</context-param>
<!-- setup log4j configuration -->
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>/WEB-INF/classes/log4j.properties</param-value>
</context-param>
<!-- RichFaces Configuration -->
<display-name>RichFaces Filter</display-name>
<filter-name>richfaces</filter-name>
<filter-class>org.ajax4jsf.Filter</filter-class>
<filter-mapping>
<filter-name>richfaces</filter-name>
<servlet-name>Faces Servlet</servlet-name>
REQUEST
FORWARD
INCLUDE
</filter-mapping>
<!-- Quartz -->
<display-name>Quartz Initialzer Servlet</display-name>
<servlet-name>QuartzInitializer</servlet-name>
<servlet-class>
org.quartz.ee.servlet.QuartzInitializerServlet
</servlet-class>
<init-param>
<param-name>config-file</param-name>
<param-value>quartz.properties</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
<!-- JSF Configuration -->
<listener-class>
com.sun.faces.config.ConfigureListener
</listener-class>
<!-- Spring Configuration -->
<listener-class>
org.springframework.web.util.IntrospectorCleanupListener
</listener-class>
<listener-class>
org.springframework.web.util.Log4jConfigListener
</listener-class>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
<!-- setup encoding configuration -->
<filter-name>encodingFilter</filter-name>
<filter-class>
org.springframework.web.filter.CharacterEncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
<!-- Spring-Hibernate Configuration -->
<filter-name>hibernateFilter</filter-name>
<filter-class>
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
</filter-class>
<!-- Faces Servlet -->
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
<!-- Quartz -->
<display-name>Quartz Initialzer Servlet</display-name>
<servlet-name>QuartzInitializer</servlet-name>
<servlet-class>
org.quartz.ee.servlet.QuartzInitializerServlet
</servlet-class>
<init-param>
<param-name>config-file</param-name>
<param-value>quartz.properties</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
<!-- Faces Servlet Mapping -->
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
<login-config>
<auth-method>BASIC</auth-method>
</login-config>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>