[richfaces-svn-commits] JBoss Rich Faces SVN: r2457 - in trunk: framework/impl/src/main/java/org/ajax4jsf/webapp and 1 other directories.

richfaces-svn-commits at lists.jboss.org richfaces-svn-commits at lists.jboss.org
Thu Aug 23 17:51:36 EDT 2007


Author: alexsmirnov
Date: 2007-08-23 17:51:36 -0400 (Thu, 23 Aug 2007)
New Revision: 2457

Modified:
   trunk/framework/impl/src/main/java/org/ajax4jsf/component/UIDataAdaptor.java
   trunk/framework/impl/src/main/java/org/ajax4jsf/webapp/FilterServletResponseWrapper.java
   trunk/ui/core/src/main/java/org/ajax4jsf/renderkit/AjaxCommandRendererBase.java
Log:
Some fixes related to http://jira.jboss.com/jira/browse/RF-652

Modified: trunk/framework/impl/src/main/java/org/ajax4jsf/component/UIDataAdaptor.java
===================================================================
--- trunk/framework/impl/src/main/java/org/ajax4jsf/component/UIDataAdaptor.java	2007-08-23 18:53:34 UTC (rev 2456)
+++ trunk/framework/impl/src/main/java/org/ajax4jsf/component/UIDataAdaptor.java	2007-08-23 21:51:36 UTC (rev 2457)
@@ -52,6 +52,8 @@
 import org.ajax4jsf.model.ExtendedDataModel;
 import org.ajax4jsf.model.SerializableDataModel;
 import org.ajax4jsf.renderkit.AjaxChildrenRenderer;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
 
 /**
  * Base class for iterable components, like dataTable, Tomahawk dataList,
@@ -70,6 +72,8 @@
 
 	public final static DataModel EMPTY_MODEL = new ListDataModel(
 			Collections.EMPTY_LIST);
+	
+	private static final Log _log = LogFactory.getLog(UIDataAdaptor.class);
 
 	/**
 	 * Base class for visit data model at phases decode, validation and update
@@ -361,10 +365,16 @@
 		Renderer renderer = getRenderer(context);
 		if (null != renderer && renderer instanceof AjaxChildrenRenderer) {
 			// If renderer support partial encoding - call them.
+			if(_log.isDebugEnabled()){
+				_log.debug("Component "+getClientId(context)+" has delegated Encode children components by AjaxChildrenRenderer for path "+path);
+			}
 			AjaxChildrenRenderer childrenRenderer = (AjaxChildrenRenderer) renderer;
 			childrenRenderer.encodeAjaxChildren(context, this, path, ids,
 					renderedAreas);
 		} else {
+			if(_log.isDebugEnabled()){
+				_log.debug("Component "+getClientId(context)+"  do Encode children components  for path "+path);
+			}
 			// Use simple ajax children encoding for iterate other keys.
 			final AjaxChildrenRenderer childrenRenderer = getChildrenRenderer();
 			final String childrenPath = path + getId()
@@ -380,6 +390,9 @@
 			};
 			Set ajaxKeys = getAjaxKeys();
 			if (null != ajaxKeys) {
+				if(_log.isDebugEnabled()){
+					_log.debug("Component "+getClientId(context)+"  Encode children components for a keys "+ajaxKeys);
+				}
 				captureOrigValue();
 				Object savedKey = getRowKey();
 				setRowKey(context, null);
@@ -395,6 +408,9 @@
 				setRowKey(savedKey);
 				restoreOrigValue();
 			} else {
+				if(_log.isDebugEnabled()){
+					_log.debug("Component "+getClientId(context)+" children components  for all rows");
+				}
 				iterate(context, ajaxVisitor, null);
 			}
 		}

Modified: trunk/framework/impl/src/main/java/org/ajax4jsf/webapp/FilterServletResponseWrapper.java
===================================================================
--- trunk/framework/impl/src/main/java/org/ajax4jsf/webapp/FilterServletResponseWrapper.java	2007-08-23 18:53:34 UTC (rev 2456)
+++ trunk/framework/impl/src/main/java/org/ajax4jsf/webapp/FilterServletResponseWrapper.java	2007-08-23 21:51:36 UTC (rev 2457)
@@ -226,12 +226,12 @@
 			throw new IllegalStateException(Messages.getMessage(Messages.NO_WRITER_POSSIBLE_ERROR));
 		}
         if (printWriter == null) {
+            if(log.isDebugEnabled()) {
+            	log.debug(Messages.getMessage(Messages.CREATE_WRITER_INFO));
+            }
             printWriter = new PrintWriter(new ServletStringWriter());
+            useWriter = true;
         }
-        if(log.isDebugEnabled()) {
-        	log.debug(Messages.getMessage(Messages.CREATE_WRITER_INFO));
-        }
-        useWriter = true;
         return printWriter;
     }
 

Modified: trunk/ui/core/src/main/java/org/ajax4jsf/renderkit/AjaxCommandRendererBase.java
===================================================================
--- trunk/ui/core/src/main/java/org/ajax4jsf/renderkit/AjaxCommandRendererBase.java	2007-08-23 18:53:34 UTC (rev 2456)
+++ trunk/ui/core/src/main/java/org/ajax4jsf/renderkit/AjaxCommandRendererBase.java	2007-08-23 21:51:36 UTC (rev 2457)
@@ -32,82 +32,88 @@
 
 import org.ajax4jsf.context.AjaxContext;
 import org.ajax4jsf.event.AjaxEvent;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
 
-
 /**
  * @author asmirnov at exadel.com (latest modification by $Author: alexsmirnov $)
  * @version $Revision: 1.1.2.3 $ $Date: 2007/02/12 17:46:53 $
- *
+ * 
  */
 public abstract class AjaxCommandRendererBase extends AjaxComponentRendererBase {
 
+	private static final Log _log = LogFactory
+			.getLog(AjaxCommandRendererBase.class);
+
 	protected void doDecode(FacesContext facesContext, UIComponent uiComponent) {
-	
-	    //super.decode must not be called, because value is handled here
-	    if ( isSubmitted(facesContext, uiComponent))
-	    {
-	    	Map attributes = uiComponent.getAttributes();
-			Object type = attributes.get("type");
-        	if (! "reset".equalsIgnoreCase((String)type) ) {
-				ActionEvent event;
-				event = new ActionEvent(uiComponent);
-				uiComponent.queueEvent(event); 
-			} 
-			uiComponent.queueEvent( new AjaxEvent(uiComponent));
-//	        org.ajax4jsf.framework.ajax.AjaxRegionListener.addRegionsFromComponent(uiComponent, facesContext);
-	    }
+
+		// super.decode must not be called, because value is handled here
+		if (isSubmitted(facesContext, uiComponent)) {
+			ActionEvent event;
+			event = new ActionEvent(uiComponent);
+			uiComponent.queueEvent(event);
+
+			uiComponent.queueEvent(new AjaxEvent(uiComponent));
+		}
 	}
 
 	public String getOnClick(FacesContext context, UIComponent component) {
-	        StringBuffer onClick;
-			if ( !getUtils().isBooleanAttribute(component,"disabled")) {
-				onClick = AjaxRendererUtils.buildOnClick(component, context);
-				if (!"reset".equals(component.getAttributes().get("type"))) {
-					onClick.append(";return false;");
-				}
-			} else {
-				onClick = new StringBuffer("return false;");
+		StringBuffer onClick;
+		if (!getUtils().isBooleanAttribute(component, "disabled")) {
+			onClick = AjaxRendererUtils.buildOnClick(component, context);
+			if (!"reset".equals(component.getAttributes().get("type"))) {
+				onClick.append(";return false;");
 			}
-	        return onClick.toString();
+		} else {
+			onClick = new StringBuffer("return false;");
 		}
+		return onClick.toString();
+	}
 
-	public void encodeChildren(FacesContext context, UIComponent component) throws IOException {
-	    renderChildren(context, component);
+	public void encodeChildren(FacesContext context, UIComponent component)
+			throws IOException {
+		renderChildren(context, component);
 	}
 
 	public Object getValue(UIComponent uiComponent) {
-	    if (uiComponent instanceof ValueHolder) {
-	        return ((ValueHolder) uiComponent).getValue();
-	    }
-	    return uiComponent.getAttributes().get("value");
+		if (uiComponent instanceof ValueHolder) {
+			return ((ValueHolder) uiComponent).getValue();
+		}
+		return uiComponent.getAttributes().get("value");
 	}
 
 	public String getType(UIComponent uiComponent) {
-	    String type;
-	    if (uiComponent instanceof HtmlCommandButton) {
-	        type = ((HtmlCommandButton) uiComponent).getType();
-	    } else {
-	        type = (String) uiComponent.getAttributes().get("type");
-	    }
-	    if (type == null) {
-	        type = "button";
-	    }
-	    return type;
+		String type;
+		if (uiComponent instanceof HtmlCommandButton) {
+			type = ((HtmlCommandButton) uiComponent).getType();
+		} else {
+			type = (String) uiComponent.getAttributes().get("type");
+		}
+		if (type == null) {
+			type = "button";
+		}
+		return type;
 	}
 
-	
-	protected boolean isSubmitted(FacesContext facesContext, UIComponent uiComponent) {
-		// Componet accept only ajax requests. 
-		if ( !AjaxContext.getCurrentInstance(facesContext).isAjaxRequest(facesContext)) {
+	protected boolean isSubmitted(FacesContext facesContext,
+			UIComponent uiComponent) {
+		// Componet accept only ajax requests.
+		if (!AjaxContext.getCurrentInstance(facesContext).isAjaxRequest(
+				facesContext)) {
 			return false;
 		}
-		if(getUtils().isBooleanAttribute(uiComponent,"disabled")){
+		if (getUtils().isBooleanAttribute(uiComponent, "disabled")) {
 			return false;
 		}
-	    String clientId = uiComponent.getClientId(facesContext);
-	    Map paramMap = facesContext.getExternalContext().getRequestParameterMap();
-	    Object  value = paramMap.get( clientId );
-		return null != value;
+		String clientId = uiComponent.getClientId(facesContext);
+		Map paramMap = facesContext.getExternalContext()
+				.getRequestParameterMap();
+		Object value = paramMap.get(clientId);
+		boolean submitted = null != value;
+		if (submitted && _log.isDebugEnabled()) {
+			_log.debug("Decode submit of the Ajax component " + clientId);
+		}
+		return submitted;
 	}
 
 }




More information about the richfaces-svn-commits mailing list