You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by Travis Reeder <tr...@gmail.com> on 2005/11/18 02:06:37 UTC
Fwd: svn commit: r344383 - /myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/ajax/api/AjaxPhaseListener.java
Hi Sean,
What was this checkin fixing? Seems strange to override the default
findComponent() method in here?
Travis
---------- Forwarded message ----------
From: schof@apache.org <sc...@apache.org>
Date: Nov 15, 2005 7:56 AM
Subject: svn commit: r344383 -
/myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/ajax/api/AjaxPhaseListener.java
To: commits@myfaces.apache.org
Author: schof
Date: Tue Nov 15 07:55:57 2005
New Revision: 344383
URL: http://svn.apache.org/viewcvs?rev=344383&view=rev
Log:
Fixes MYFACES-692 (patch by Chris Barlow.)
Modified:
myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/ajax/api/AjaxPhaseListener.java
Modified: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/ajax/api/AjaxPhaseListener.java
URL: http://svn.apache.org/viewcvs/myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/ajax/api/AjaxPhaseListener.java?rev=344383&r1=344382&r2=344383&view=diff
==============================================================================
--- myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/ajax/api/AjaxPhaseListener.java
(original)
+++ myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/ajax/api/AjaxPhaseListener.java
Tue Nov 15 07:55:57 2005
@@ -80,18 +80,33 @@
}
}
+ public UIComponent findComponent(FacesContext context,
UIComponent root, String clientId)
+ {
+ UIComponent component = null;
+ for(int i = 0; i < root.getChildCount() && component == null; i++)
+ {
+ UIComponent child = (UIComponent)root.getChildren().get(i);
+ component = findComponent(context, child, clientId);
+ }
+
+ if(component == null && root.getClientId(context).equals(clientId))
+ {
+ component = root;
+ }
+ return component;
+ }
+
public void afterPhase(PhaseEvent event)
{
log.debug("In AjaxPhaseListener afterPhase");
FacesContext context = event.getFacesContext();
if (context.getExternalContext().getRequestParameterMap().containsKey("affectedAjaxComponent"))
- {
- UIViewRoot root = context.getViewRoot();
-
- UIComponent ajaxComponent = root.findComponent((String)
context.getExternalContext().getRequestParameterMap().get("affectedAjaxComponent"));
-
+ {
+ String clientId =
(String)context.getExternalContext().getRequestParameterMap().get("affectedAjaxComponent");
+ UIComponent ajaxComponent = findComponent(context,
context.getViewRoot(), clientId);
log.debug("affectedAjaxComponent: " + ajaxComponent + " -
" + ajaxComponent.getId());
+
if (ajaxComponent instanceof AjaxComponent)
{
Re: svn commit: r344383 - /myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/ajax/api/AjaxPhaseListener.java
Posted by Sean Schofield <se...@gmail.com>.
MYFACES-692 (see SVN note.) Before the patch you could not use forceId.
sean
On 11/17/05, Travis Reeder <tr...@gmail.com> wrote:
> Hi Sean,
>
> What was this checkin fixing? Seems strange to override the default
> findComponent() method in here?
>
> Travis
>
> ---------- Forwarded message ----------
> From: schof@apache.org <sc...@apache.org>
> Date: Nov 15, 2005 7:56 AM
> Subject: svn commit: r344383 -
> /myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/ajax/api/AjaxPhaseListener.java
> To: commits@myfaces.apache.org
>
>
> Author: schof
> Date: Tue Nov 15 07:55:57 2005
> New Revision: 344383
>
> URL: http://svn.apache.org/viewcvs?rev=344383&view=rev
> Log:
> Fixes MYFACES-692 (patch by Chris Barlow.)
>
> Modified:
> myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/ajax/api/AjaxPhaseListener.java
>
> Modified: myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/ajax/api/AjaxPhaseListener.java
> URL: http://svn.apache.org/viewcvs/myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/ajax/api/AjaxPhaseListener.java?rev=344383&r1=344382&r2=344383&view=diff
> ==============================================================================
> --- myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/ajax/api/AjaxPhaseListener.java
> (original)
> +++ myfaces/sandbox/trunk/src/java/org/apache/myfaces/custom/ajax/api/AjaxPhaseListener.java
> Tue Nov 15 07:55:57 2005
> @@ -80,18 +80,33 @@
> }
> }
>
> + public UIComponent findComponent(FacesContext context,
> UIComponent root, String clientId)
> + {
> + UIComponent component = null;
> + for(int i = 0; i < root.getChildCount() && component == null; i++)
> + {
> + UIComponent child = (UIComponent)root.getChildren().get(i);
> + component = findComponent(context, child, clientId);
> + }
> +
> + if(component == null && root.getClientId(context).equals(clientId))
> + {
> + component = root;
> + }
> + return component;
> + }
> +
> public void afterPhase(PhaseEvent event)
> {
> log.debug("In AjaxPhaseListener afterPhase");
> FacesContext context = event.getFacesContext();
>
> if (context.getExternalContext().getRequestParameterMap().containsKey("affectedAjaxComponent"))
> - {
> - UIViewRoot root = context.getViewRoot();
> -
> - UIComponent ajaxComponent = root.findComponent((String)
> context.getExternalContext().getRequestParameterMap().get("affectedAjaxComponent"));
> -
> + {
> + String clientId =
> (String)context.getExternalContext().getRequestParameterMap().get("affectedAjaxComponent");
> + UIComponent ajaxComponent = findComponent(context,
> context.getViewRoot(), clientId);
> log.debug("affectedAjaxComponent: " + ajaxComponent + " -
> " + ajaxComponent.getId());
> +
> if (ajaxComponent instanceof AjaxComponent)
> {
>