You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lu...@apache.org on 2011/07/26 19:12:29 UTC
svn commit: r1151174 -
/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/AjaxHandler.java
Author: lu4242
Date: Tue Jul 26 17:12:28 2011
New Revision: 1151174
URL: http://svn.apache.org/viewvc?rev=1151174&view=rev
Log:
MYFACES-3225 myfaces 2.1.1 AjaxHandler$AjaxBehaviorListenerImpl
Modified:
myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/AjaxHandler.java
Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/AjaxHandler.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/AjaxHandler.java?rev=1151174&r1=1151173&r2=1151174&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/AjaxHandler.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/core/AjaxHandler.java Tue Jul 26 17:12:28 2011
@@ -24,7 +24,7 @@ import java.util.List;
import java.util.Map;
import javax.el.MethodExpression;
-import javax.faces.component.StateHolder;
+import javax.faces.component.PartialStateHolder;
import javax.faces.component.UIComponent;
import javax.faces.component.UniqueIdVendor;
import javax.faces.component.behavior.AjaxBehavior;
@@ -458,10 +458,11 @@ public class AjaxHandler extends TagHand
* Wraps a method expression in a AjaxBehaviorListener
*/
public final static class AjaxBehaviorListenerImpl implements
- AjaxBehaviorListener, StateHolder
+ AjaxBehaviorListener, PartialStateHolder
{
private MethodExpression _expr;
private boolean _transient;
+ private boolean _initialStateMarked;
public AjaxBehaviorListenerImpl ()
{
@@ -486,10 +487,18 @@ public class AjaxHandler extends TagHand
public void restoreState(FacesContext context, Object state)
{
+ if (state == null)
+ {
+ return;
+ }
_expr = (MethodExpression) state;
}
public Object saveState(FacesContext context) {
+ if (initialStateMarked())
+ {
+ return null;
+ }
return _expr;
}
@@ -497,5 +506,20 @@ public class AjaxHandler extends TagHand
{
_transient = newTransientValue;
}
+
+ public void clearInitialState()
+ {
+ _initialStateMarked = false;
+ }
+
+ public boolean initialStateMarked()
+ {
+ return _initialStateMarked;
+ }
+
+ public void markInitialState()
+ {
+ _initialStateMarked = true;
+ }
}
}