WW-4125 Improves loop and minor changes
git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/trunk@1502443 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/main/java/org/apache/struts2/s1/Struts1Factory.java b/src/main/java/org/apache/struts2/s1/Struts1Factory.java
index 9622469..a7d1c65 100644
--- a/src/main/java/org/apache/struts2/s1/Struts1Factory.java
+++ b/src/main/java/org/apache/struts2/s1/Struts1Factory.java
@@ -21,21 +21,22 @@
package org.apache.struts2.s1;
-import com.opensymphony.xwork2.*;
+import com.opensymphony.xwork2.TextProvider;
+import com.opensymphony.xwork2.ValidationAware;
import com.opensymphony.xwork2.config.Configuration;
import com.opensymphony.xwork2.config.entities.ActionConfig;
-import com.opensymphony.xwork2.config.entities.ResultConfig;
import com.opensymphony.xwork2.config.entities.ExceptionMappingConfig;
+import com.opensymphony.xwork2.config.entities.ResultConfig;
+import org.apache.struts.action.ActionErrors;
+import org.apache.struts.action.ActionForward;
+import org.apache.struts.action.ActionMapping;
+import org.apache.struts.action.ActionMessage;
+import org.apache.struts.action.ActionMessages;
+import org.apache.struts.config.ExceptionConfig;
+import org.apache.struts.config.ModuleConfig;
-import org.apache.struts.Globals;
-import org.apache.struts.action.*;
-import org.apache.struts.config.*;
-
-import java.util.Iterator;
import java.util.Arrays;
-import java.util.Map;
-
-import javax.servlet.ServletContext;
+import java.util.Iterator;
/**
@@ -120,32 +121,28 @@
if (action instanceof TextProvider) {
text = (TextProvider)action;
}
-
- ActionMessage error = null;
- String field = null;
- String msg = null;
- Object[] values = null;
+ // if there is no ValidationAware, it doesn't make sense to process messages
+ // as there be no place to put message in
+ if (vaction == null) {
+ return;
+ }
for (Iterator i = errors.properties(); i.hasNext(); ) {
- field = (String) i.next();
+ String field = (String) i.next();
for (Iterator it = errors.get(field); it.hasNext(); ) {
- error = (ActionMessage) it.next();
- msg = error.getKey();
+ ActionMessage error = (ActionMessage) it.next();
+ String msg = error.getKey();
if (error.isResource() && text != null) {
- values = error.getValues();
+ Object[] values = error.getValues();
if (values != null) {
msg = text.getText(error.getKey(), Arrays.asList(values));
} else {
msg = text.getText(error.getKey());
}
}
- if (vaction != null) {
- if (field == errors.GLOBAL_MESSAGE) {
- vaction.addActionError(msg);
- } else {
- vaction.addFieldError(field, msg);
- }
+ if (ActionMessages.GLOBAL_MESSAGE.equals(field)) {
+ vaction.addActionError(msg);
} else {
- // should do something here
+ vaction.addFieldError(field, msg);
}
}
}