[jboss-cvs] jboss-seam/src/ui/org/jboss/seam/ui ...
Gavin King
gavin.king at jboss.com
Sun Oct 1 21:00:12 EDT 2006
User: gavin
Date: 06/10/01 21:00:12
Modified: src/ui/org/jboss/seam/ui UICache.java
Log:
fix bug in UICache state saving
Revision Changes Path
1.4 +19 -27 jboss-seam/src/ui/org/jboss/seam/ui/UICache.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: UICache.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/src/ui/org/jboss/seam/ui/UICache.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- UICache.java 14 Jul 2006 16:43:37 -0000 1.3
+++ UICache.java 2 Oct 2006 01:00:12 -0000 1.4
@@ -2,9 +2,7 @@
import java.io.IOException;
import java.io.StringWriter;
-import java.util.List;
-import javax.faces.component.UIComponent;
import javax.faces.component.UIComponentBase;
import javax.faces.context.FacesContext;
import javax.faces.context.ResponseWriter;
@@ -59,7 +57,7 @@
StringWriter stringWriter = new StringWriter();
ResponseWriter cachingResponseWriter = response.cloneWithWriter(stringWriter);
facesContext.setResponseWriter(cachingResponseWriter);
- renderChildren(facesContext, this);
+ JSF.renderChildren(facesContext, this);
facesContext.setResponseWriter(response);
String output = stringWriter.getBuffer().toString();
response.write(output);
@@ -77,7 +75,7 @@
}
else
{
- renderChildren(facesContext, this);
+ JSF.renderChildren(facesContext, this);
}
}
@@ -112,29 +110,6 @@
return true;
}
- private static void renderChildren(FacesContext facesContext, UIComponent component)
- throws IOException
- {
- List children = component.getChildren();
- for (int j = 0, size = component.getChildCount(); j < size; j++)
- {
- UIComponent child = (UIComponent) children.get(j);
- if (child.isRendered())
- {
- child.encodeBegin(facesContext);
- if (child.getRendersChildren())
- {
- child.encodeChildren(facesContext);
- }
- else
- {
- renderChildren(facesContext, child);
- }
- child.encodeEnd(facesContext);
- }
- }
- }
-
public String getKey()
{
return key;
@@ -155,4 +130,21 @@
this.region = region;
}
+ @Override
+ public void restoreState(FacesContext context, Object state) {
+ Object[] values = (Object[]) state;
+ super.restoreState(context, values[0]);
+ key = (String) values[1];
+ region = (String) values[1];
+ }
+
+ @Override
+ public Object saveState(FacesContext context) {
+ Object[] values = new Object[3];
+ values[0] = super.saveState(context);
+ values[1] = key;
+ values[2] = region;
+ return values;
+ }
+
}
More information about the jboss-cvs-commits
mailing list