Anonymous avatar Anonymous committed 15c62c4

Use fullFieldName when checking for errors.

git-svn-id: http://svn.opensymphony.com/svn/xwork/trunk@318 e221344d-f017-0410-9bd5-d282ab1896d7

Comments (0)

Files changed (1)

src/java/com/opensymphony/xwork/validator/ActionValidatorManager.java

             }
 
             FieldValidator fValidator = null;
+            String fullFieldName = null;
 
             if (validator instanceof FieldValidator) {
                 fValidator = (FieldValidator) validator;
-
-                if ((shortcircuitedFields != null) && shortcircuitedFields.contains(fValidator.getFieldName())) {
+                fullFieldName = fValidator.getValidatorContext().getFullFieldName(fValidator.getFieldName());
+                if ((shortcircuitedFields != null) && shortcircuitedFields.contains(fullFieldName)) {
                     if (LOG.isDebugEnabled()) {
                         LOG.debug("Short-circuited, skipping");
                     }
 
                 if (fValidator != null) {
                     if (validatorContext.hasFieldErrors()) {
-                        Collection fieldErrors = (Collection) validatorContext.getFieldErrors().get(fValidator.getFieldName());
+                        Collection fieldErrors = (Collection) validatorContext.getFieldErrors().get(fullFieldName);
 
                         if (fieldErrors != null) {
                             errs = new ArrayList(fieldErrors);
 
                 if (fValidator != null) {
                     if (validatorContext.hasFieldErrors()) {
-                        Collection errCol = (Collection) validatorContext.getFieldErrors().get(fValidator.getFieldName());
+                        Collection errCol = (Collection) validatorContext.getFieldErrors().get(fullFieldName);
 
                         if ((errCol != null) && !errCol.equals(errs)) {
                             if (LOG.isDebugEnabled()) {
                                 shortcircuitedFields = new TreeSet();
                             }
 
-                            shortcircuitedFields.add(fValidator.getFieldName());
+                            shortcircuitedFields.add(fullFieldName);
                         }
                     }
                 } else if (validatorContext.hasActionErrors()) {
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.