You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by jb...@apache.org on 2007/03/03 16:35:03 UTC
svn commit: r514173 - in /incubator/wicket/trunk/wicket/src:
main/java/wicket/util/parse/metapattern/MetaPattern.java
main/java/wicket/util/parse/metapattern/parsers/TagNameParser.java
test/java/wicket/markup/parser/XmlPullParserTest.java
Author: jbq
Date: Sat Mar 3 07:35:02 2007
New Revision: 514173
URL: http://svn.apache.org/viewvc?view=rev&rev=514173
Log:
WICKET-350 XmlPullParser does not respect the XML NCName syntax
Modified:
incubator/wicket/trunk/wicket/src/main/java/wicket/util/parse/metapattern/MetaPattern.java
incubator/wicket/trunk/wicket/src/main/java/wicket/util/parse/metapattern/parsers/TagNameParser.java
incubator/wicket/trunk/wicket/src/test/java/wicket/markup/parser/XmlPullParserTest.java
Modified: incubator/wicket/trunk/wicket/src/main/java/wicket/util/parse/metapattern/MetaPattern.java
URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/wicket/src/main/java/wicket/util/parse/metapattern/MetaPattern.java?view=diff&rev=514173&r1=514172&r2=514173
==============================================================================
--- incubator/wicket/trunk/wicket/src/main/java/wicket/util/parse/metapattern/MetaPattern.java (original)
+++ incubator/wicket/trunk/wicket/src/main/java/wicket/util/parse/metapattern/MetaPattern.java Sat Mar 3 07:35:02 2007
@@ -65,7 +65,7 @@
+ _SINGLE_QUOTED_STRING + ")";
private static final String _OPTIONAL_STRING = _STRING + "?";
private static final String _VARIABLE_NAME = "[A-Za-z_][A-Za-z0-9_]*";
- private static final String _XML_NAME = "[A-Za-z_][A-Za-z0-9_-]*";
+ private static final String _XML_NAME = "[A-Za-z_][A-Za-z0-9_.-]*";
// Delimiters and punctuation
/** Constant for whitespace. */
@@ -192,10 +192,10 @@
/** Constant for a variable name. */
public static final MetaPattern VARIABLE_NAME = new MetaPattern(_VARIABLE_NAME);
- /** Constant for a variable name. */
+ /** Constant for an XML element name. */
public static final MetaPattern XML_ELEMENT_NAME = new MetaPattern(_XML_NAME);
- /** Constant for a xml attribute name. */
+ /** Constant for an XML attribute name. */
public static final MetaPattern XML_ATTRIBUTE_NAME = new MetaPattern(_XML_NAME);
/** Constant for perl interpolation. */
Modified: incubator/wicket/trunk/wicket/src/main/java/wicket/util/parse/metapattern/parsers/TagNameParser.java
URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/wicket/src/main/java/wicket/util/parse/metapattern/parsers/TagNameParser.java?view=diff&rev=514173&r1=514172&r2=514173
==============================================================================
--- incubator/wicket/trunk/wicket/src/main/java/wicket/util/parse/metapattern/parsers/TagNameParser.java (original)
+++ incubator/wicket/trunk/wicket/src/main/java/wicket/util/parse/metapattern/parsers/TagNameParser.java Sat Mar 3 07:35:02 2007
@@ -34,7 +34,7 @@
/** Namespaces must comply with variable name guidelines */
private static final Group namespaceGroup = new Group(MetaPattern.VARIABLE_NAME);
- /** Tag names must comply with variable name guidelines */
+ /** Tag names must comply with XML NCName guidelines */
private static final Group nameGroup = new Group(MetaPattern.XML_ELEMENT_NAME);
/** Pattern for tag names with optional namespace: (namespace:)?name */
Modified: incubator/wicket/trunk/wicket/src/test/java/wicket/markup/parser/XmlPullParserTest.java
URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/wicket/src/test/java/wicket/markup/parser/XmlPullParserTest.java?view=diff&rev=514173&r1=514172&r2=514173
==============================================================================
--- incubator/wicket/trunk/wicket/src/test/java/wicket/markup/parser/XmlPullParserTest.java (original)
+++ incubator/wicket/trunk/wicket/src/test/java/wicket/markup/parser/XmlPullParserTest.java Sat Mar 3 07:35:02 2007
@@ -118,10 +118,6 @@
assertTrue(closeTag.isClose());
assertEquals("ns", closeTag.getNamespace());
assertEquals("tag", closeTag.getName());
-
- parser.parse("<filter-mapping>");
- tag = (XmlTag)parser.nextTag();
- assertEquals("filter-mapping", tag.getName());
}
/**
@@ -330,5 +326,24 @@
assertEquals("a", tag.getName());
tag = (XmlTag)parser.nextTag();
assertNull(tag);
+ }
+
+ public final void testNames() throws Exception
+ {
+ final XmlPullParser parser = new XmlPullParser();
+ parser.parse("<filter-mapping>");
+ XmlTag tag = (XmlTag)parser.nextTag();
+ assertTrue(tag.isOpen());
+ assertEquals("filter-mapping", tag.getName());
+
+ parser.parse("<filter.mapping>");
+ tag = (XmlTag)parser.nextTag();
+ assertTrue(tag.isOpen());
+ assertEquals("filter.mapping", tag.getName());
+
+ parser.parse("<filter_mapping>");
+ tag = (XmlTag)parser.nextTag();
+ assertTrue(tag.isOpen());
+ assertEquals("filter_mapping", tag.getName());
}
}