Author: nbelaevski
Date: 2010-05-20 14:05:21 -0400 (Thu, 20 May 2010)
New Revision: 17169
Modified:
root/core/trunk/impl/src/main/java/org/richfaces/context/ExtendedPartialVisitContext.java
root/core/trunk/impl/src/main/java/org/richfaces/context/IdParser.java
root/core/trunk/impl/src/test/java/org/richfaces/context/IdParserTest.java
Log:
https://jira.jboss.org/browse/RF-7856
Modified:
root/core/trunk/impl/src/main/java/org/richfaces/context/ExtendedPartialVisitContext.java
===================================================================
---
root/core/trunk/impl/src/main/java/org/richfaces/context/ExtendedPartialVisitContext.java 2010-05-20
16:47:12 UTC (rev 17168)
+++
root/core/trunk/impl/src/main/java/org/richfaces/context/ExtendedPartialVisitContext.java 2010-05-20
18:05:21 UTC (rev 17169)
@@ -326,7 +326,10 @@
//TODO replace with constant
sb.append(':');
}
- sb.append(metadataComponentId != null ? metadataComponentId : componentId);
+ sb.append(componentId);
+ if (metadataComponentId != null) {
+ sb.append(metadataComponentId);
+ }
List<IdTreeNode> idTreeChildNodes = idTreeNode.getChildNodes();
if (idTreeChildNodes != null) {
Modified: root/core/trunk/impl/src/main/java/org/richfaces/context/IdParser.java
===================================================================
--- root/core/trunk/impl/src/main/java/org/richfaces/context/IdParser.java 2010-05-20
16:47:12 UTC (rev 17168)
+++ root/core/trunk/impl/src/main/java/org/richfaces/context/IdParser.java 2010-05-20
18:05:21 UTC (rev 17169)
@@ -81,6 +81,7 @@
if (c == subComponentSeparator) {
if (componentId == null) {
componentId = id.substring(idx, i);
+ idx = i;
}
} else if (c == namingContainerSeparator) {
String idSegment = id.substring(idx, i);
Modified: root/core/trunk/impl/src/test/java/org/richfaces/context/IdParserTest.java
===================================================================
--- root/core/trunk/impl/src/test/java/org/richfaces/context/IdParserTest.java 2010-05-20
16:47:12 UTC (rev 17168)
+++ root/core/trunk/impl/src/test/java/org/richfaces/context/IdParserTest.java 2010-05-20
18:05:21 UTC (rev 17169)
@@ -95,7 +95,7 @@
idParser.setId("table@head");
assertTrue(idParser.findNext());
- assertEquals("table@head", idParser.getMetadataComponentId());
+ assertEquals("@head", idParser.getMetadataComponentId());
assertEquals("table", idParser.getComponentId());
assertFalse(idParser.findNext());
@@ -118,7 +118,7 @@
assertNull(idParser.getMetadataComponentId());
assertTrue(idParser.findNext());
- assertEquals("nestedTable@body", idParser.getMetadataComponentId());
+ assertEquals("@body", idParser.getMetadataComponentId());
assertEquals("nestedTable", idParser.getComponentId());
assertFalse(idParser.findNext());
@@ -126,7 +126,7 @@
idParser.setId("myBigTable@header");
assertTrue(idParser.findNext());
- assertEquals("myBigTable@header", idParser.getMetadataComponentId());
+ assertEquals("@header", idParser.getMetadataComponentId());
assertEquals("myBigTable", idParser.getComponentId());
assertFalse(idParser.findNext());
@@ -142,7 +142,7 @@
assertNull(idParser.getMetadataComponentId());
assertTrue(idParser.findNext());
- assertEquals("node@status", idParser.getMetadataComponentId());
+ assertEquals("@status", idParser.getMetadataComponentId());
assertEquals("node", idParser.getComponentId());
assertTrue(idParser.findNext());
@@ -154,7 +154,7 @@
assertNull(idParser.getMetadataComponentId());
assertTrue(idParser.findNext());
- assertEquals("tab@label", idParser.getMetadataComponentId());
+ assertEquals("@label", idParser.getMetadataComponentId());
assertEquals("tab", idParser.getComponentId());
assertFalse(idParser.findNext());
@@ -171,7 +171,7 @@
assertNull(idParser.getMetadataComponentId());
assertTrue(idParser.findNext());
- assertEquals("table@head@x-head", idParser.getMetadataComponentId());
+ assertEquals("@head@x-head", idParser.getMetadataComponentId());
assertEquals("table", idParser.getComponentId());
assertTrue(idParser.findNext());