You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lo...@apache.org on 2013/09/16 17:17:24 UTC

svn commit: r1523696 - in /myfaces/tobago/trunk: tobago-core/src/main/java/org/apache/myfaces/tobago/compat/ tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/ tobago-core/src/main/java/org/apache/myfaces/tobago/internal/util/ toba...

Author: lofwyr
Date: Mon Sep 16 15:17:23 2013
New Revision: 1523696

URL: http://svn.apache.org/r1523696
Log:
TOBAGO-1228: Setting JSF 2.0 as default version for Tobago
 - using UINamingContainer.getSeparatorChar(context) instead of NamingContainer.SEPARATOR_CHAR

Modified:
    myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/compat/FacesInvokeOnComponent12.java
    myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/compat/FacesUtilsEL.java
    myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUIPopup.java
    myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUISheet.java
    myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/util/FindComponentUtils.java
    myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/util/ComponentUtils.java
    myfaces/tobago/trunk/tobago-extension/tobago-deprecation/src/main/java/org/apache/myfaces/tobago/renderkit/html/HtmlRendererUtil.java
    myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/SelectManyCheckboxRenderer.java
    myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/SelectOneRadioRenderer.java
    myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/TreeListboxNodeRenderer.java
    myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/TreeSelectRenderer.java
    myfaces/tobago/trunk/tobago-theme/tobago-theme-standard/src/main/java/org/apache/myfaces/tobago/renderkit/html/util/HtmlRendererUtils.java

Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/compat/FacesInvokeOnComponent12.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/compat/FacesInvokeOnComponent12.java?rev=1523696&r1=1523695&r2=1523696&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/compat/FacesInvokeOnComponent12.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/compat/FacesInvokeOnComponent12.java Mon Sep 16 15:17:23 2013
@@ -22,12 +22,14 @@ package org.apache.myfaces.tobago.compat
 import javax.faces.component.ContextCallback;
 import javax.faces.component.NamingContainer;
 import javax.faces.component.UIComponent;
+import javax.faces.component.UINamingContainer;
 import javax.faces.context.FacesContext;
 
 /**
  * @deprecated since 2.0.0
  */
 @Deprecated
+@SuppressWarnings("deprecation")
 public class FacesInvokeOnComponent12 {
 
   private FacesInvokeOnComponent12() {
@@ -50,7 +52,7 @@ public class FacesInvokeOnComponent12 {
       // Otherwise we know the client id we're looking for is not in this naming container,
       // so for improved performance short circuit and return false.
       if (clientId.startsWith(thisClientId)
-          && (clientId.charAt(thisClientId.length()) == NamingContainer.SEPARATOR_CHAR)) {
+          && (clientId.charAt(thisClientId.length()) == UINamingContainer.getSeparatorChar(context))) {
         if (invokeOnComponentFacetsAndChildren(context, component, clientId, callback)) {
           return true;
         }

Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/compat/FacesUtilsEL.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/compat/FacesUtilsEL.java?rev=1523696&r1=1523695&r2=1523696&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/compat/FacesUtilsEL.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/compat/FacesUtilsEL.java Mon Sep 16 15:17:23 2013
@@ -35,6 +35,7 @@ import javax.faces.component.ContextCall
 import javax.faces.component.EditableValueHolder;
 import javax.faces.component.NamingContainer;
 import javax.faces.component.UIComponent;
+import javax.faces.component.UINamingContainer;
 import javax.faces.component.ValueHolder;
 import javax.faces.context.FacesContext;
 import javax.faces.el.EvaluationException;
@@ -64,7 +65,7 @@ public class FacesUtilsEL {
       // Otherwise we know the client id we're looking for is not in this naming container,
       // so for improved performance short circuit and return false.
       if (clientId.startsWith(thisClientId)
-          && (clientId.charAt(thisClientId.length()) == NamingContainer.SEPARATOR_CHAR)) {
+          && (clientId.charAt(thisClientId.length()) == UINamingContainer.getSeparatorChar(context))) {
         if (invokeOnComponentFacetsAndChildren(context, component, clientId, callback)) {
           return true;
         }

Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUIPopup.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUIPopup.java?rev=1523696&r1=1523695&r2=1523696&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUIPopup.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUIPopup.java Mon Sep 16 15:17:23 2013
@@ -41,6 +41,7 @@ import javax.el.ValueExpression;
 import javax.faces.component.NamingContainer;
 import javax.faces.component.UICommand;
 import javax.faces.component.UIComponent;
+import javax.faces.component.UINamingContainer;
 import javax.faces.context.FacesContext;
 import java.io.IOException;
 import java.util.Iterator;
@@ -114,17 +115,20 @@ public abstract class AbstractUIPopup ex
   }
 
   private boolean isSubmitted() {
-    String action = FacesContextUtils.getActionId(getFacesContext());
-    return action != null && action.startsWith(getClientId(getFacesContext()) + SEPARATOR_CHAR);
+    final FacesContext facesContext = getFacesContext();
+    final String action = FacesContextUtils.getActionId(facesContext);
+    return action != null && action.startsWith(
+        getClientId(facesContext) + UINamingContainer.getSeparatorChar(facesContext));
   }
 
   private boolean isRedisplay() {
     if (isSubmitted()) {
       String action = FacesContextUtils.getActionId(getFacesContext());
       if (action != null) {
-        UIComponent command = getFacesContext().getViewRoot().findComponent(SEPARATOR_CHAR + action);
+        final UIComponent command = getFacesContext().getViewRoot().findComponent(
+            UINamingContainer.getSeparatorChar(getFacesContext()) + action);
         if (command != null && command instanceof UICommand) {
-          return !(command.getAttributes().get(Attributes.POPUP_CLOSE) != null);
+          return command.getAttributes().get(Attributes.POPUP_CLOSE) == null;
         }
       }
     }

Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUISheet.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUISheet.java?rev=1523696&r1=1523695&r2=1523696&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUISheet.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUISheet.java Mon Sep 16 15:17:23 2013
@@ -52,6 +52,7 @@ import javax.el.ELContext;
 import javax.el.ValueExpression;
 import javax.faces.component.UIColumn;
 import javax.faces.component.UIComponent;
+import javax.faces.component.UINamingContainer;
 import javax.faces.context.FacesContext;
 import javax.faces.el.MethodBinding;
 import javax.faces.event.AbortProcessingException;
@@ -486,7 +487,7 @@ public abstract class AbstractUISheet ex
     if (searchId.length() > 0 && Character.isDigit(searchId.charAt(0))) {
       for (int i = 1; i < searchId.length(); ++i) {
         char c = searchId.charAt(i);
-        if (c == SEPARATOR_CHAR) {
+        if (c == UINamingContainer.getSeparatorChar(getFacesContext())) {
           searchId = searchId.substring(i + 1);
           break;
         }

Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/util/FindComponentUtils.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/util/FindComponentUtils.java?rev=1523696&r1=1523695&r2=1523696&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/util/FindComponentUtils.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/util/FindComponentUtils.java Mon Sep 16 15:17:23 2013
@@ -21,6 +21,8 @@ package org.apache.myfaces.tobago.intern
 
 import javax.faces.component.NamingContainer;
 import javax.faces.component.UIComponent;
+import javax.faces.component.UINamingContainer;
+import javax.faces.context.FacesContext;
 
 // Will be normally called via ComponentUtils.
 public class FindComponentUtils {
@@ -39,7 +41,7 @@ public class FindComponentUtils {
     // Figure out how many colons
     int colonCount = 0;
     while (colonCount < idLength) {
-      if (relativeId.charAt(colonCount) != NamingContainer.SEPARATOR_CHAR) {
+      if (relativeId.charAt(colonCount) != UINamingContainer.getSeparatorChar(FacesContext.getCurrentInstance())) {
         break;
       }
       colonCount++;

Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/util/ComponentUtils.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/util/ComponentUtils.java?rev=1523696&r1=1523695&r2=1523696&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/util/ComponentUtils.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/util/ComponentUtils.java Mon Sep 16 15:17:23 2013
@@ -48,6 +48,7 @@ import javax.faces.component.UICommand;
 import javax.faces.component.UIComponent;
 import javax.faces.component.UIGraphic;
 import javax.faces.component.UIInput;
+import javax.faces.component.UINamingContainer;
 import javax.faces.component.UIOutput;
 import javax.faces.component.UIParameter;
 import javax.faces.component.UISelectMany;
@@ -1004,7 +1005,7 @@ public class ComponentUtils {
       // Otherwise we know the client id we're looking for is not in this naming container,
       // so for improved performance short circuit and return false.
       if (clientId.startsWith(thisClientId)
-          && (clientId.charAt(thisClientId.length()) == NamingContainer.SEPARATOR_CHAR)) {
+          && (clientId.charAt(thisClientId.length()) == UINamingContainer.getSeparatorChar(context))) {
         if (invokeOnComponentFacetsAndChildren(context, component, clientId, callback)) {
           return true;
         }

Modified: myfaces/tobago/trunk/tobago-extension/tobago-deprecation/src/main/java/org/apache/myfaces/tobago/renderkit/html/HtmlRendererUtil.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-extension/tobago-deprecation/src/main/java/org/apache/myfaces/tobago/renderkit/html/HtmlRendererUtil.java?rev=1523696&r1=1523695&r2=1523696&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-extension/tobago-deprecation/src/main/java/org/apache/myfaces/tobago/renderkit/html/HtmlRendererUtil.java (original)
+++ myfaces/tobago/trunk/tobago-extension/tobago-deprecation/src/main/java/org/apache/myfaces/tobago/renderkit/html/HtmlRendererUtil.java Mon Sep 16 15:17:23 2013
@@ -35,10 +35,10 @@ import org.apache.myfaces.tobago.webapp.
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import javax.faces.component.NamingContainer;
 import javax.faces.component.UIComponent;
 import javax.faces.component.UIData;
 import javax.faces.component.UIInput;
+import javax.faces.component.UINamingContainer;
 import javax.faces.context.FacesContext;
 import javax.faces.context.ResponseWriter;
 import javax.faces.model.SelectItem;
@@ -570,7 +570,7 @@ public final class HtmlRendererUtil {
       if (partiallyComponent instanceof UIData) {
         int rowIndex = ((UIData) partiallyComponent).getRowIndex();
         if (rowIndex >= 0 && clientId.endsWith(Integer.toString(rowIndex))) {
-          return clientId.substring(0, clientId.lastIndexOf(NamingContainer.SEPARATOR_CHAR));
+          return clientId.substring(0, clientId.lastIndexOf(UINamingContainer.getSeparatorChar(context)));
         }
       }
       return clientId;

Modified: myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/SelectManyCheckboxRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/SelectManyCheckboxRenderer.java?rev=1523696&r1=1523695&r2=1523696&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/SelectManyCheckboxRenderer.java (original)
+++ myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/SelectManyCheckboxRenderer.java Mon Sep 16 15:17:23 2013
@@ -34,7 +34,6 @@ import org.apache.myfaces.tobago.renderk
 import org.apache.myfaces.tobago.util.ComponentUtils;
 import org.apache.myfaces.tobago.webapp.TobagoResponseWriter;
 
-import javax.faces.component.NamingContainer;
 import javax.faces.component.UIComponent;
 import javax.faces.component.UISelectMany;
 import javax.faces.context.FacesContext;
@@ -77,7 +76,7 @@ public class SelectManyCheckboxRenderer 
     boolean first = true;
     Object[] values = select.getSelectedValues();
     for (SelectItem item : items) {
-      String itemId = id + NamingContainer.SEPARATOR_CHAR + NamingContainer.SEPARATOR_CHAR + item.getValue().toString();
+      String itemId = id + ComponentUtils.SUB_SEPARATOR + item.getValue().toString();
       writer.startElement(HtmlElements.LI, select);
       writer.startElement(HtmlElements.INPUT, select);
       writer.writeAttribute(HtmlAttributes.TYPE, HtmlInputTypes.CHECKBOX, false);

Modified: myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/SelectOneRadioRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/SelectOneRadioRenderer.java?rev=1523696&r1=1523695&r2=1523696&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/SelectOneRadioRenderer.java (original)
+++ myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/SelectOneRadioRenderer.java Mon Sep 16 15:17:23 2013
@@ -34,7 +34,6 @@ import org.apache.myfaces.tobago.renderk
 import org.apache.myfaces.tobago.util.ComponentUtils;
 import org.apache.myfaces.tobago.webapp.TobagoResponseWriter;
 
-import javax.faces.component.NamingContainer;
 import javax.faces.component.UIComponent;
 import javax.faces.component.UISelectOne;
 import javax.faces.context.FacesContext;
@@ -77,7 +76,7 @@ public class SelectOneRadioRenderer exte
     boolean first = true;
     Object value = select.getValue();
     for (SelectItem item : items) {
-      String itemId = id + NamingContainer.SEPARATOR_CHAR + NamingContainer.SEPARATOR_CHAR + item.getValue().toString();
+      String itemId = id + ComponentUtils.SUB_SEPARATOR + item.getValue().toString();
       writer.startElement(HtmlElements.LI, select);
       writer.startElement(HtmlElements.INPUT, select);
       writer.writeAttribute(HtmlAttributes.TYPE, HtmlInputTypes.RADIO, false);

Modified: myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/TreeListboxNodeRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/TreeListboxNodeRenderer.java?rev=1523696&r1=1523695&r2=1523696&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/TreeListboxNodeRenderer.java (original)
+++ myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/TreeListboxNodeRenderer.java Mon Sep 16 15:17:23 2013
@@ -36,8 +36,8 @@ import org.apache.myfaces.tobago.webapp.
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import javax.faces.component.NamingContainer;
 import javax.faces.component.UIComponent;
+import javax.faces.component.UINamingContainer;
 import javax.faces.context.FacesContext;
 import java.io.IOException;
 import java.util.Map;
@@ -88,7 +88,7 @@ public class TreeListboxNodeRenderer ext
     String marked
         = (String) requestParameterMap.get(treeId + ComponentUtils.SUB_SEPARATOR + AbstractUITree.SUFFIX_MARKED);
     if (marked != null) {
-      String searchString = treeId + NamingContainer.SEPARATOR_CHAR + nodeStateId;
+      String searchString = treeId + UINamingContainer.getSeparatorChar(facesContext) + nodeStateId;
       boolean markedValue = marked.equals(searchString);
       if (node.isMarked() != markedValue) {
         new TreeMarkedEvent(node, node.isMarked(), markedValue).queue();

Modified: myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/TreeSelectRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/TreeSelectRenderer.java?rev=1523696&r1=1523695&r2=1523696&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/TreeSelectRenderer.java (original)
+++ myfaces/tobago/trunk/tobago-theme/tobago-theme-scarborough/src/main/java/org/apache/myfaces/tobago/renderkit/html/scarborough/standard/tag/TreeSelectRenderer.java Mon Sep 16 15:17:23 2013
@@ -36,8 +36,8 @@ import org.apache.myfaces.tobago.renderk
 import org.apache.myfaces.tobago.util.ComponentUtils;
 import org.apache.myfaces.tobago.webapp.TobagoResponseWriter;
 
-import javax.faces.component.NamingContainer;
 import javax.faces.component.UIComponent;
+import javax.faces.component.UINamingContainer;
 import javax.faces.context.FacesContext;
 import java.io.IOException;
 
@@ -138,9 +138,8 @@ public class TreeSelectRenderer extends 
   }
 
   private String getClientIdWithoutRowIndex(AbstractUIData data, String id) {
-    return id.replace(
-        "" + NamingContainer.SEPARATOR_CHAR + data.getRowIndex() + NamingContainer.SEPARATOR_CHAR,
-        "" + NamingContainer.SEPARATOR_CHAR);
+    final char separatorChar = UINamingContainer.getSeparatorChar(FacesContext.getCurrentInstance());
+    return id.replace("" + separatorChar + data.getRowIndex() + separatorChar, "" + separatorChar);
   }
 
   @Override

Modified: myfaces/tobago/trunk/tobago-theme/tobago-theme-standard/src/main/java/org/apache/myfaces/tobago/renderkit/html/util/HtmlRendererUtils.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-theme/tobago-theme-standard/src/main/java/org/apache/myfaces/tobago/renderkit/html/util/HtmlRendererUtils.java?rev=1523696&r1=1523695&r2=1523696&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-theme/tobago-theme-standard/src/main/java/org/apache/myfaces/tobago/renderkit/html/util/HtmlRendererUtils.java (original)
+++ myfaces/tobago/trunk/tobago-theme/tobago-theme-standard/src/main/java/org/apache/myfaces/tobago/renderkit/html/util/HtmlRendererUtils.java Mon Sep 16 15:17:23 2013
@@ -52,9 +52,9 @@ import org.slf4j.LoggerFactory;
 
 import javax.el.ELContext;
 import javax.el.ValueExpression;
-import javax.faces.component.NamingContainer;
 import javax.faces.component.UIComponent;
 import javax.faces.component.UIInput;
+import javax.faces.component.UINamingContainer;
 import javax.faces.context.FacesContext;
 import javax.faces.context.ResponseWriter;
 import javax.faces.model.SelectItem;
@@ -453,7 +453,7 @@ public final class HtmlRendererUtils {
       if (partiallyComponent instanceof UISheet) {
         int rowIndex = ((UISheet) partiallyComponent).getRowIndex();
         if (rowIndex >= 0 && clientId.endsWith(Integer.toString(rowIndex))) {
-          return clientId.substring(0, clientId.lastIndexOf(NamingContainer.SEPARATOR_CHAR));
+          return clientId.substring(0, clientId.lastIndexOf(UINamingContainer.getSeparatorChar(context)));
         }
       }
       return clientId;