[richfaces-svn-commits] JBoss Rich Faces SVN: r11759 - in trunk/samples/tree-demo/src/main: java/org/richfaces/rf4196 and 2 other directories.
richfaces-svn-commits at lists.jboss.org
richfaces-svn-commits at lists.jboss.org
Sun Dec 14 13:11:01 EST 2008
Author: nbelaevski
Date: 2008-12-14 13:11:00 -0500 (Sun, 14 Dec 2008)
New Revision: 11759
Added:
trunk/samples/tree-demo/src/main/java/org/richfaces/rf4196/
trunk/samples/tree-demo/src/main/java/org/richfaces/rf4196/Bean.java
trunk/samples/tree-demo/src/main/webapp/pages/rf-4196.jsp
Modified:
trunk/samples/tree-demo/src/main/java/org/richfaces/Bean.java
trunk/samples/tree-demo/src/main/webapp/WEB-INF/faces-config.xml
Log:
https://jira.jboss.org/jira/browse/RF-4196
Modified: trunk/samples/tree-demo/src/main/java/org/richfaces/Bean.java
===================================================================
--- trunk/samples/tree-demo/src/main/java/org/richfaces/Bean.java 2008-12-14 18:07:10 UTC (rev 11758)
+++ trunk/samples/tree-demo/src/main/java/org/richfaces/Bean.java 2008-12-14 18:11:00 UTC (rev 11759)
@@ -31,8 +31,11 @@
import javax.faces.FacesException;
import javax.faces.application.Application;
+import javax.faces.application.FacesMessage;
import javax.faces.component.UIComponent;
+import javax.faces.context.ExternalContext;
import javax.faces.context.FacesContext;
+import javax.faces.event.AbortProcessingException;
import javax.faces.event.ActionEvent;
import org.ajax4jsf.context.AjaxContext;
@@ -91,6 +94,8 @@
private int counter2 = 0;
+ private int requestCounter = 0;
+
public String getIcon() {
return icon;
}
@@ -482,4 +487,20 @@
System.out.println("Bean.action() " +
event.getComponent().getClientId(FacesContext.getCurrentInstance()));
}
+
+ private static final String REQUEST_COUNTER_ATTRIBUTE = Bean.class.getName() + ":requestCounter";
+
+ public int getRequestCounter() {
+ FacesContext facesContext = FacesContext.getCurrentInstance();
+ ExternalContext externalContext = facesContext.getExternalContext();
+ Map<String, Object> requestMap = externalContext.getRequestMap();
+
+ if (requestMap.get(REQUEST_COUNTER_ATTRIBUTE) == null) {
+ requestMap.put(REQUEST_COUNTER_ATTRIBUTE, Boolean.TRUE);
+
+ requestCounter++;
+ }
+
+ return requestCounter;
+ }
}
\ No newline at end of file
Added: trunk/samples/tree-demo/src/main/java/org/richfaces/rf4196/Bean.java
===================================================================
--- trunk/samples/tree-demo/src/main/java/org/richfaces/rf4196/Bean.java (rev 0)
+++ trunk/samples/tree-demo/src/main/java/org/richfaces/rf4196/Bean.java 2008-12-14 18:11:00 UTC (rev 11759)
@@ -0,0 +1,32 @@
+package org.richfaces.rf4196;
+
+import org.richfaces.component.UITree;
+import org.richfaces.event.NodeSelectedEvent;
+
+public class Bean {
+ private UITree tree;
+
+ public UITree getTree() {
+ return tree;
+ }
+
+ public void setTree(UITree tree) {
+ this.tree = tree;
+ }
+
+ public void rerenderNode() {
+ tree.addNodeRequestKey(tree.getRowKey());
+ }
+
+ public void rerenderSubtree() {
+ tree.addRequestKey(tree.getRowKey());
+ }
+
+ public void rerenderRoot() {
+ tree.addRequestKey(null);
+ }
+
+ public void select(NodeSelectedEvent event) {
+ tree.addNodeRequestKey(tree.getRowKey());
+ }
+}
Modified: trunk/samples/tree-demo/src/main/webapp/WEB-INF/faces-config.xml
===================================================================
--- trunk/samples/tree-demo/src/main/webapp/WEB-INF/faces-config.xml 2008-12-14 18:07:10 UTC (rev 11758)
+++ trunk/samples/tree-demo/src/main/webapp/WEB-INF/faces-config.xml 2008-12-14 18:11:00 UTC (rev 11759)
@@ -30,4 +30,10 @@
<managed-bean-class>org.richfaces.rf3899.Bean</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
+
+ <managed-bean>
+ <managed-bean-name>rf4196</managed-bean-name>
+ <managed-bean-class>org.richfaces.rf4196.Bean</managed-bean-class>
+ <managed-bean-scope>request</managed-bean-scope>
+ </managed-bean>
</faces-config>
Added: trunk/samples/tree-demo/src/main/webapp/pages/rf-4196.jsp
===================================================================
--- trunk/samples/tree-demo/src/main/webapp/pages/rf-4196.jsp (rev 0)
+++ trunk/samples/tree-demo/src/main/webapp/pages/rf-4196.jsp 2008-12-14 18:11:00 UTC (rev 11759)
@@ -0,0 +1,26 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://richfaces.org/a4j" prefix="a4j" %>
+<%@ taglib uri="http://labs.jboss.com/jbossrichfaces/ui/tree" prefix="rich"%>
+<html>
+ <head>
+ <title></title>
+ </head>
+ <body>
+ <f:view>
+ <a4j:status startText="...start..." stopText="stopped" />
+
+ <h:form>
+ <rich:tree ajaxSubmitSelection="true" nodeSelectListener="#{rf4196.select}" ajaxKeys="#{null}" binding="#{rf4196.tree}" value="#{bean.data}" var="item" switchType="ajax">
+ <rich:treeNode>
+ <h:outputText escape="false" value="#{item} <b style='color: red;'>#{bean.requestCounter}</b> Re-render: " />
+ <a4j:commandLink value="Node" action="#{rf4196.rerenderNode}" /> /
+ <a4j:commandLink value="Subtree" action="#{rf4196.rerenderSubtree}" />
+ </rich:treeNode>
+ </rich:tree>
+
+ <a4j:commandLink value="Re-render tree root node" action="#{rf4196.rerenderRoot}" />
+ </h:form>
+ </f:view>
+ </body>
+</html>
More information about the richfaces-svn-commits
mailing list