Hi,
we just tried to upgrade from commons-configuration-1.9 to
commons-configuration-1.10 and hit a blocking problem. It manifests itself as:
java.lang.UnsupportedOperationException
at java.util.AbstractMap.put(AbstractMap.java:209)
at
org.apache.commons.configuration.MapConfiguration.addPropertyDirect(MapConfiguration.java:186)
at
org.apache.commons.configuration.AbstractConfiguration.addPropertyValues(AbstractConfiguration.java:423)
at
org.apache.commons.configuration.AbstractConfiguration.addProperty(AbstractConfiguration.java:393)
at
org.apache.commons.configuration.AbstractConfiguration.setProperty(AbstractConfiguration.java:486)
Looks like this happens because the map was created using the
`MapConfiguration(Properties props)` constructor. In 1.9, this creates a
HashMap and fills it with the properties. In 1.10, this now uses an
AbstractMap that only overrides `entrySet` which makes this a read-only map.
Our code then tries to add more properties, which produces the above exception.
Are we doing something wrong here or is this really a regression in 1.10?
</nk>
---
Norbert Kiesel
Systems Architect | Engineering
MetricStream
2600 E. Bayshore Road | Palo Alto, CA - 94303
+1-650-620-2954 | [email protected] | www.metricstream.com
Confidentiality Notice:This email and any files transmitted with it are
confidential and intended solely for the use of the individual or entity to
whom they are addressed. This message contains confidential information and is
intended only for the individual named. If you are not the named addressee you
should not disseminate, distribute or copy this e-mail. Please notify the
sender immediately by e-mail if you have received this e-mail by mistake and
delete this e-mail from your system. If you are not the intended recipient you
are notified that disclosing, copying, distributing or taking any action in
reliance on the contents of this information is strictly prohibited