You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by lu...@apache.org on 2021/12/19 18:53:00 UTC
[struts-examples] branch master updated: Upgrades to Struts 6.0.0-RC1
This is an automated email from the ASF dual-hosted git repository.
lukaszlenart pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/struts-examples.git
The following commit(s) were added to refs/heads/master by this push:
new f4552e2 Upgrades to Struts 6.0.0-RC1
f4552e2 is described below
commit f4552e26ccd7ad335ea1cb2a5c5ac4e0f2c874f9
Author: Lukasz Lenart <lu...@apache.org>
AuthorDate: Sun Dec 19 19:52:55 2021 +0100
Upgrades to Struts 6.0.0-RC1
---
blank/src/test/java/example/ConfigTest.java | 46 +++++++++-------------
blank/src/test/java/example/LoginTest.java | 7 ++--
pom.xml | 2 +-
rest-angular/pom.xml | 5 +++
rest-angular/src/main/resources/struts.xml | 4 --
.../struts/example/ThemeDescriptorConverter.java | 7 ++--
.../strutsexamples/web/TilesUnknownHandler.java | 12 +++---
7 files changed, 38 insertions(+), 45 deletions(-)
diff --git a/blank/src/test/java/example/ConfigTest.java b/blank/src/test/java/example/ConfigTest.java
index 171cafc..006f87b 100644
--- a/blank/src/test/java/example/ConfigTest.java
+++ b/blank/src/test/java/example/ConfigTest.java
@@ -25,40 +25,37 @@ import com.opensymphony.xwork2.config.entities.ActionConfig;
import com.opensymphony.xwork2.config.entities.ResultConfig;
import com.opensymphony.xwork2.config.providers.XmlConfigurationProvider;
import org.apache.struts2.StrutsTestCase;
+import org.apache.struts2.config.StrutsXmlConfigurationProvider;
import java.util.List;
import java.util.Map;
public class ConfigTest extends StrutsTestCase {
- protected void assertSuccess(String result) throws Exception {
- assertTrue("Expected a success result!",
- ActionSupport.SUCCESS.equals(result));
+ protected void assertSuccess(String result) {
+ assertEquals("Expected a success result!", ActionSupport.SUCCESS, result);
}
- protected void assertInput(String result) throws Exception {
- assertTrue("Expected an input result!",
- ActionSupport.INPUT.equals(result));
+ protected void assertInput(String result) {
+ assertEquals("Expected an input result!", ActionSupport.INPUT, result);
}
- protected Map<String, List<String>> assertFieldErrors(ActionSupport action) throws Exception {
+ protected Map<String, List<String>> assertFieldErrors(ActionSupport action) {
assertTrue(action.hasFieldErrors());
return action.getFieldErrors();
}
- protected void assertFieldError(Map field_errors, String field_name, String error_message) {
-
- List errors = (List) field_errors.get(field_name);
+ protected void assertFieldError(Map<String, List<String>> field_errors, String field_name, String error_message) {
+ List<String> errors = field_errors.get(field_name);
assertNotNull("Expected errors for " + field_name, errors);
assertTrue("Expected errors for " + field_name, errors.size()>0);
// TODO: Should be a loop
assertEquals(error_message,errors.get(0));
-
}
protected void setUp() throws Exception {
super.setUp();
- XmlConfigurationProvider c = new XmlConfigurationProvider("struts.xml");
+ XmlConfigurationProvider c = new StrutsXmlConfigurationProvider("struts.xml");
configurationManager.addContainerProvider(c);
configurationManager.reload();
}
@@ -67,27 +64,22 @@ public class ConfigTest extends StrutsTestCase {
RuntimeConfiguration configuration = configurationManager.getConfiguration().getRuntimeConfiguration();
ActionConfig config = configuration.getActionConfig(namespace, action_name);
assertNotNull("Mssing action", config);
- assertTrue("Wrong class name: [" + config.getClassName() + "]",
- class_name.equals(config.getClassName()));
+ assertEquals("Wrong class name: [" + config.getClassName() + "]", class_name, config.getClassName());
return config;
}
- protected ActionConfig assertClass(String action_name, String class_name) {
- return assertClass("", action_name, class_name);
- }
-
protected void assertResult(ActionConfig config, String result_name, String result_value) {
- Map results = config.getResults();
- ResultConfig result = (ResultConfig) results.get(result_name);
- Map params = result.getParams();
- String value = (String) params.get("actionName");
- if (value == null)
- value = (String) params.get("location");
- assertTrue("Wrong result value: [" + value + "]",
- result_value.equals(value));
+ Map<String, ResultConfig> results = config.getResults();
+ ResultConfig result = results.get(result_name);
+ Map<String, String> params = result.getParams();
+ String value = params.get("actionName");
+ if (value == null) {
+ value = params.get("location");
+ }
+ assertEquals("Wrong result value: [" + value + "]", result_value, value);
}
- public void testConfig() throws Exception {
+ public void testConfig() {
assertNotNull(configurationManager);
}
diff --git a/blank/src/test/java/example/LoginTest.java b/blank/src/test/java/example/LoginTest.java
index 5c372d3..e4acf4c 100644
--- a/blank/src/test/java/example/LoginTest.java
+++ b/blank/src/test/java/example/LoginTest.java
@@ -22,6 +22,7 @@ package example;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.config.entities.ActionConfig;
+import java.util.List;
import java.util.Map;
public class LoginTest extends ConfigTest {
@@ -45,9 +46,9 @@ public class LoginTest extends ConfigTest {
Login login = new Login();
String result = login.execute();
assertInput(result);
- Map errors = assertFieldErrors(login);
- assertFieldError(errors,"username","Username is required.");
- assertFieldError(errors,"password","Password is required.");
+ Map<String, List<String>> errors = assertFieldErrors(login);
+ assertFieldError(errors, "username", "Username is required.");
+ assertFieldError(errors, "password", "Password is required.");
}
}
diff --git a/pom.xml b/pom.xml
index 9f6ba0f..1d42226 100644
--- a/pom.xml
+++ b/pom.xml
@@ -41,7 +41,7 @@
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
- <struts2.version>2.5.28</struts2.version>
+ <struts2.version>6.0.0-RC1</struts2.version>
<log4j2.version>2.15.0</log4j2.version>
<jetty-plugin.version>9.4.35.v20201120</jetty-plugin.version>
<maven.javadoc.skip>true</maven.javadoc.skip>
diff --git a/rest-angular/pom.xml b/rest-angular/pom.xml
index effc885..f7d004a 100644
--- a/rest-angular/pom.xml
+++ b/rest-angular/pom.xml
@@ -81,6 +81,11 @@
<artifactId>jackson-databind</artifactId>
<version>${jackson.version}</version>
</dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.dataformat</groupId>
+ <artifactId>jackson-dataformat-xml</artifactId>
+ <version>${jackson.version}</version>
+ </dependency>
<dependency>
<groupId>junit</groupId>
diff --git a/rest-angular/src/main/resources/struts.xml b/rest-angular/src/main/resources/struts.xml
index 950f0f2..36d8e2c 100644
--- a/rest-angular/src/main/resources/struts.xml
+++ b/rest-angular/src/main/resources/struts.xml
@@ -21,10 +21,6 @@
<constant name="struts.mapper.class" value="rest"/>
- <!-- Use Jackson lib as content handler for all JSON requests -->
- <bean type="org.apache.struts2.rest.handler.ContentTypeHandler" name="jackson" class="org.apache.struts2.rest.handler.JacksonLibHandler"/>
- <constant name="struts.rest.handlerOverride.json" value="jackson"/>
-
<!-- Set to false if the json content can be returned for any kind of http method -->
<constant name="struts.rest.content.restrictToGET" value="false"/>
diff --git a/type-conversion/src/main/java/org/apache/struts/example/ThemeDescriptorConverter.java b/type-conversion/src/main/java/org/apache/struts/example/ThemeDescriptorConverter.java
index 388495f..9a5ebac 100644
--- a/type-conversion/src/main/java/org/apache/struts/example/ThemeDescriptorConverter.java
+++ b/type-conversion/src/main/java/org/apache/struts/example/ThemeDescriptorConverter.java
@@ -1,10 +1,11 @@
package org.apache.struts.example;
-import com.opensymphony.xwork2.conversion.TypeConversionException;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
+import org.apache.logging.log4j.message.ParameterizedMessage;
import org.apache.struts.model.ThemeDescriptor;
import org.apache.struts.model.Themes;
+import org.apache.struts2.conversion.TypeConversionException;
import org.apache.struts2.util.StrutsTypeConverter;
import java.util.Map;
@@ -13,7 +14,6 @@ public class ThemeDescriptorConverter extends StrutsTypeConverter {
private static final Logger LOG = LogManager.getLogger(ThemeDescriptorConverter.class);
- @SuppressWarnings("rawtypes")
@Override
public Object convertFromString(final Map context, final String[] values, final Class toClass) {
if ((values != null) && (values.length > 0)) {
@@ -29,13 +29,12 @@ public class ThemeDescriptorConverter extends StrutsTypeConverter {
return null;
}
- @SuppressWarnings("rawtypes")
@Override
public String convertToString(final Map context, final Object value) {
try {
return ((ThemeDescriptor) value).getId();
} catch (Exception e) {
- LOG.error("Unable to convert {0} into a string", e, value);
+ LOG.error(new ParameterizedMessage("Unable to convert {} into a string", value), e);
}
return null;
}
diff --git a/unknown-handler/src/main/java/org/apache/strutsexamples/web/TilesUnknownHandler.java b/unknown-handler/src/main/java/org/apache/strutsexamples/web/TilesUnknownHandler.java
index a8884b5..2930e8e 100644
--- a/unknown-handler/src/main/java/org/apache/strutsexamples/web/TilesUnknownHandler.java
+++ b/unknown-handler/src/main/java/org/apache/strutsexamples/web/TilesUnknownHandler.java
@@ -3,11 +3,11 @@ package org.apache.strutsexamples.web;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.Result;
import com.opensymphony.xwork2.UnknownHandler;
-import com.opensymphony.xwork2.XWorkException;
import com.opensymphony.xwork2.config.entities.ActionConfig;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.struts2.ServletActionContext;
+import org.apache.struts2.StrutsException;
import org.apache.struts2.views.tiles.TilesResult;
import org.apache.tiles.TilesContainer;
import org.apache.tiles.access.TilesAccess;
@@ -23,13 +23,13 @@ import java.util.Set;
public class TilesUnknownHandler implements UnknownHandler {
- private static Logger LOG = LogManager.getLogger(TilesUnknownHandler.class);
+ private static final Logger LOG = LogManager.getLogger(TilesUnknownHandler.class);
- public ActionConfig handleUnknownAction(String namespace, String actionName) throws XWorkException {
+ public ActionConfig handleUnknownAction(String namespace, String actionName) throws StrutsException {
return null;
}
- public Result handleUnknownResult(ActionContext actionContext, String actionName, ActionConfig actionConfig, String resultCode) throws XWorkException {
+ public Result handleUnknownResult(ActionContext actionContext, String actionName, ActionConfig actionConfig, String resultCode) throws StrutsException {
ServletContext servletContext = ServletActionContext.getServletContext();
HttpServletRequest request = ServletActionContext.getRequest();
@@ -54,7 +54,7 @@ public class TilesUnknownHandler implements UnknownHandler {
}
protected Set<String> buildDefinitionNames(String namespace, String actionName, String resultCode) {
- Set<String> definitions = new LinkedHashSet<String>();
+ Set<String> definitions = new LinkedHashSet<>();
if (namespace.startsWith("/")) {
namespace = namespace.substring(1);
@@ -83,4 +83,4 @@ public class TilesUnknownHandler implements UnknownHandler {
public Object handleUnknownActionMethod(Object action, String methodName) {
return null;
}
-}
\ No newline at end of file
+}