ebourg 2004/08/20 06:55:42
Modified: configuration/xdocs changes.xml
configuration/src/java/org/apache/commons/configuration
DatabaseConfiguration.java
configuration/src/test/org/apache/commons/configuration
TestDatabaseConfiguration.java
Log:
Fixed a ClassCastException thrown on adding a non string property in a
DatabaseConfiguration (bug 30676)
Revision Changes Path
1.36 +33 -10 jakarta-commons/configuration/xdocs/changes.xml
Index: changes.xml
===================================================================
RCS file: /home/cvs/jakarta-commons/configuration/xdocs/changes.xml,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -r1.35 -r1.36
--- changes.xml 16 Aug 2004 22:16:33 -0000 1.35
+++ changes.xml 20 Aug 2004 13:55:41 -0000 1.36
@@ -7,19 +7,42 @@
<body>
<release version="1.0-rc2" date="in CVS">
- <action dev="henning" type="add">Bring back the getVector() methods in the
Configuration interface. These methods are needed for "drop-on" replacement
- of the various pre-1.0 commons-configuration
snapshots and are already deprecated. These methods will be removed for 1.1
+ <action dev="ebourg" type="fix" issue="30676">
+ Fixed a ClassCastException thrown on adding a non string property
+ in a DatabaseConfiguration.
+ </action>
+ <action dev="henning" type="add">
+ Bring back the getVector() methods in the Configuration interface.
+ These methods are needed for "drop-on" replacement of the
+ various pre-1.0 commons-configuration snapshots and are already
+ deprecated. These methods will be removed for 1.1.
</action>
</release>
<release version="1.0-rc1" date="2004-08-14">
- <action dev="epugh" type="add" due-to="Oliver Heger"
issue="30597">HierarchicalConfigurationXMLReader stores comments as text
nodes</action>
- <action dev="epugh" type="add" due-to="Ricardo Gladwell"
issue="30648">project.xml contains bad dependencies</action>
- <action dev="epugh" type="add" due-to="Brent Worden" issue="30234
">clearXmlProperty doesn't remove list properties completely</action>
- <action dev="epugh" type="add" due-to="Ricardo Gladwell" issue="30545">new
ConfigurationDynaBean </action>
- <action dev="epugh" type="add" due-to="Ricardo Gladwell" issue="29611">new
ConfigurationMap and ConfigurationSet</action>
- <action dev="epugh" type="fix" due-to="Ricardo Gladwell"
issue="30598">Problem adding property XMLConfiguration</action>
- <action dev="epugh" type="remove">ConfigurationXMLDocument removed until post
1.0.</action>
- <action dev="epugh" type="fix" issue="29734">DatabaseConfiguration doesn't
support List properties.</action>
+ <action dev="epugh" type="add" issue="30597" due-to="Oliver Heger">
+ HierarchicalConfigurationXMLReader stores comments as text nodes
+ </action>
+ <action dev="epugh" type="add" issue="30648" due-to="Ricardo Gladwell">
+ project.xml contains bad dependencies
+ </action>
+ <action dev="epugh" type="add" issue="30234" due-to="Brent Worden">
+ clearXmlProperty doesn't remove list properties completely
+ </action>
+ <action dev="epugh" type="add" issue="30545" due-to="Ricardo Gladwell">
+ new ConfigurationDynaBean
+ </action>
+ <action dev="epugh" type="add" issue="29611" due-to="Ricardo Gladwell">
+ new ConfigurationMap and ConfigurationSet
+ </action>
+ <action dev="epugh" type="fix" issue="30598" due-to="Ricardo Gladwell">
+ Problem adding property XMLConfiguration
+ </action>
+ <action dev="epugh" type="remove">
+ ConfigurationXMLDocument removed until post 1.0.
+ </action>
+ <action dev="epugh" type="fix" issue="29734">
+ DatabaseConfiguration doesn't support List properties.
+ </action>
<action dev="ebourg" type="fix">
Fixed several bugs related to XMLConfiguration:
<ul>
1.9 +8 -4
jakarta-commons/configuration/src/java/org/apache/commons/configuration/DatabaseConfiguration.java
Index: DatabaseConfiguration.java
===================================================================
RCS file:
/home/cvs/jakarta-commons/configuration/src/java/org/apache/commons/configuration/DatabaseConfiguration.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- DatabaseConfiguration.java 24 Jul 2004 16:26:10 -0000 1.8
+++ DatabaseConfiguration.java 20 Aug 2004 13:55:41 -0000 1.9
@@ -131,11 +131,15 @@
{
result = rs.getObject(valueColumn);
}
- if(rs.next()){
+
+ // build a list if there is more than one row in the resultset
+ if (rs.next())
+ {
List results = new ArrayList();
results.add(result);
results.add(rs.getObject(valueColumn));
- while (rs.next()){
+ while (rs.next())
+ {
results.add(rs.getObject(valueColumn));
}
result = results;
@@ -184,7 +188,7 @@
pstmt.setString(index++, name);
}
pstmt.setString(index++, key);
- pstmt.setString(index++, (String) obj);
+ pstmt.setString(index++, String.valueOf(obj));
pstmt.executeUpdate();
}
1.8 +9 -1
jakarta-commons/configuration/src/test/org/apache/commons/configuration/TestDatabaseConfiguration.java
Index: TestDatabaseConfiguration.java
===================================================================
RCS file:
/home/cvs/jakarta-commons/configuration/src/test/org/apache/commons/configuration/TestDatabaseConfiguration.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- TestDatabaseConfiguration.java 16 Aug 2004 22:16:31 -0000 1.7
+++ TestDatabaseConfiguration.java 20 Aug 2004 13:55:42 -0000 1.8
@@ -97,6 +97,14 @@
assertTrue("missing property", config.containsKey("key"));
}
+ public void testAddNonStringProperty()
+ {
+ DatabaseConfiguration config = new DatabaseConfiguration(datasource,
"configuration", "key", "value");
+ config.addPropertyDirect("boolean", Boolean.TRUE);
+
+ assertTrue("missing property", config.containsKey("boolean"));
+ }
+
public void testGetPropertyDirectSingle()
{
DatabaseConfiguration config = new DatabaseConfiguration(datasource,
"configuration", "key", "value");
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]