[Practicalxml-commits] SF.net SVN: practicalxml:[115] branches/dev-1.1/src
Brought to you by:
kdgregory
From: Auto-Generated S. C. M. <pra...@li...> - 2009-08-18 18:19:58
|
Revision: 115 http://practicalxml.svn.sourceforge.net/practicalxml/?rev=115&view=rev Author: kdgregory Date: 2009-08-18 18:19:50 +0000 (Tue, 18 Aug 2009) Log Message: ----------- bugfix: introspected maps with invalid keys Modified Paths: -------------- branches/dev-1.1/src/main/java/net/sf/practicalxml/converter/bean/Bean2XmlAppenders.java branches/dev-1.1/src/test/java/net/sf/practicalxml/converter/TestBean2XmlDriver.java Modified: branches/dev-1.1/src/main/java/net/sf/practicalxml/converter/bean/Bean2XmlAppenders.java =================================================================== --- branches/dev-1.1/src/main/java/net/sf/practicalxml/converter/bean/Bean2XmlAppenders.java 2009-08-18 18:10:39 UTC (rev 114) +++ branches/dev-1.1/src/main/java/net/sf/practicalxml/converter/bean/Bean2XmlAppenders.java 2009-08-18 18:19:50 UTC (rev 115) @@ -21,6 +21,7 @@ import org.w3c.dom.Element; import net.sf.practicalxml.DomUtil; +import net.sf.practicalxml.converter.ConversionException; /** @@ -126,10 +127,17 @@ if (shouldSkip(value)) return null; - Element child = DomUtil.appendChildInheritNamespace(_parent, name); - setType(child, type); - setValue(child, value); - return child; + try + { + Element child = DomUtil.appendChildInheritNamespace(_parent, name); + setType(child, type); + setValue(child, value); + return child; + } + catch (Exception ee) + { + throw new ConversionException("unable to append child", ee); + } } public Element appendContainer(String name, String type) Modified: branches/dev-1.1/src/test/java/net/sf/practicalxml/converter/TestBean2XmlDriver.java =================================================================== --- branches/dev-1.1/src/test/java/net/sf/practicalxml/converter/TestBean2XmlDriver.java 2009-08-18 18:10:39 UTC (rev 114) +++ branches/dev-1.1/src/test/java/net/sf/practicalxml/converter/TestBean2XmlDriver.java 2009-08-18 18:19:50 UTC (rev 115) @@ -66,6 +66,18 @@ } + private void assertConversionException(String message, Bean2XmlDriver driver, Object data) + { + try + { + driver.convert(data, "test"); + fail(message); + } + catch (ConversionException ee) + { /* success */ } + } + + //---------------------------------------------------------------------------- // Test Cases //---------------------------------------------------------------------------- @@ -317,6 +329,19 @@ } + public void testConvertMapIntrospectWithInvalidKey() throws Exception + { + Bean2XmlDriver driver = new Bean2XmlDriver(Bean2XmlOptions.INTROSPECT_MAPS); + + Map<String,Integer> data = new TreeMap<String,Integer>(); + data.put("%key1%", new Integer(123)); + data.put("%key2%", new Integer(456)); + + assertConversionException("converted map with invalid key under INTROSPECT_MAPS", + driver, data); + } + + public void testConvertSimpleBeanDefault() throws Exception { Bean2XmlDriver driver = new Bean2XmlDriver(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |