DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://nagoya.apache.org/bugzilla/show_bug.cgi?id=25019>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=25019 ConcurrentModificationException thrown in ValidatorResources Summary: ConcurrentModificationException thrown in ValidatorResources Product: Commons Version: 1.0 Alpha Platform: All OS/Version: All Status: NEW Severity: Minor Priority: Other Component: Validator AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] In ValidatorResources processForms(), where the browser locale differs from the default locale, the following code is entered: // Skip default FormSet if (key.equals(defaultKey)) { continue; } ====> List formsets = (List) hFormSets.get(key); Iterator formsetsIterator = formsets.iterator(); while (formsetsIterator.hasNext()) { FormSet fs = (FormSet) formsetsIterator.next(); // Loop through Forms and copy/clone fields from default locale for (Iterator x = fs.getForms().keySet().iterator(); x.hasNext();) { String formKey = (String) x.next(); Form form = (Form) fs.getForms().get(formKey); // Create a new Form object so the order from the default is // maintained (very noticable in the JavaScript). Form newForm = new Form(); newForm.setName(form.getName()); // Loop through the default locale form's fields // If they don't exist in the current locale's form, then clone them. Form defaultForm = get(defaultLocale, formKey); for (Iterator defaultFields = defaultForm.getFields().iterator(); defaultFields.hasNext(); ) { Field defaultField = (Field) defaultFields.next(); String fieldKey = defaultField.getKey(); if (form.getFieldMap().containsKey(fieldKey)) { newForm.addField( (Field) form.getFieldMap().get(fieldKey)); } else { Field field = getClosestLocaleField(fs, formKey, fieldKey); newForm.addField((Field) field.clone()); } } ********> fs.addForm(newForm); } as can be seen above, the form is added to the FormSet within the iteration and this causes a ConcurrentModificationException. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
