[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.
|