[struts] 02/02: WW-5285 Uses Long and null to check if option has been defined

2023-03-08 Thread lukaszlenart
This is an automated email from the ASF dual-hosted git repository.

lukaszlenart pushed a commit to branch release/6.1.x
in repository https://gitbox.apache.org/repos/asf/struts.git

commit c3deb392379a408f42fd52129f11422f847e3ffc
Author: Lukasz Lenart 
AuthorDate: Tue Feb 28 07:26:05 2023 +0100

WW-5285 Uses Long and null to check if option has been defined
---
 .../multipart/AbstractMultiPartRequest.java| 12 +++
 .../multipart/JakartaMultiPartRequest.java |  8 +++--
 .../multipart/JakartaStreamMultiPartRequest.java   | 37 +++---
 .../dispatcher/multipart/PellMultiPartRequest.java |  6 ++--
 4 files changed, 32 insertions(+), 31 deletions(-)

diff --git 
a/core/src/main/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequest.java
 
b/core/src/main/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequest.java
index b3410e578..e46cecc00 100644
--- 
a/core/src/main/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequest.java
+++ 
b/core/src/main/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequest.java
@@ -51,14 +51,12 @@ public abstract class AbstractMultiPartRequest implements 
MultiPartRequest {
 /**
  * Specifies the maximum size of the entire request.
  */
-protected long maxSize;
-protected boolean maxSizeProvided;
+protected Long maxSize;
 
 /**
  * Specifies the maximum number of files in one request.
  */
-protected long maxFiles;
-protected boolean maxFilesProvided;
+protected Long maxFiles;
 
 /**
  * Specifies the buffer size to use during streaming.
@@ -90,13 +88,11 @@ public abstract class AbstractMultiPartRequest implements 
MultiPartRequest {
  */
 @Inject(StrutsConstants.STRUTS_MULTIPART_MAXSIZE)
 public void setMaxSize(String maxSize) {
-this.maxSizeProvided = true;
 this.maxSize = Long.parseLong(maxSize);
 }
 
 @Inject(StrutsConstants.STRUTS_MULTIPART_MAXFILES)
 public void setMaxFiles(String maxFiles) {
-this.maxFilesProvided = true;
 this.maxFiles = Long.parseLong(maxFiles);
 }
 
@@ -146,9 +142,9 @@ public abstract class AbstractMultiPartRequest implements 
MultiPartRequest {
 int forwardSlash = fileName.lastIndexOf('/');
 int backwardSlash = fileName.lastIndexOf('\\');
 if (forwardSlash != -1 && forwardSlash > backwardSlash) {
-fileName = fileName.substring(forwardSlash + 1, fileName.length());
+fileName = fileName.substring(forwardSlash + 1);
 } else {
-fileName = fileName.substring(backwardSlash + 1, 
fileName.length());
+fileName = fileName.substring(backwardSlash + 1);
 }
 return fileName;
 }
diff --git 
a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java
 
b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java
index c20b1de19..00d922401 100644
--- 
a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java
+++ 
b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaMultiPartRequest.java
@@ -160,8 +160,12 @@ public class JakartaMultiPartRequest extends 
AbstractMultiPartRequest {
 
 protected ServletFileUpload createServletFileUpload(DiskFileItemFactory 
fac) {
 ServletFileUpload upload = new ServletFileUpload(fac);
-upload.setSizeMax(maxSize);
-upload.setFileCountMax(maxFiles);
+if (maxSize != null) {
+upload.setSizeMax(maxSize);
+}
+if (maxFiles != null) {
+upload.setFileCountMax(maxFiles);
+}
 return upload;
 }
 
diff --git 
a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
 
b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
index f709b3416..c7311ab0a 100644
--- 
a/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
+++ 
b/core/src/main/java/org/apache/struts2/dispatcher/multipart/JakartaStreamMultiPartRequest.java
@@ -30,15 +30,15 @@ import org.apache.struts2.dispatcher.LocalizedMessage;
 
 import javax.servlet.http.HttpServletRequest;
 import java.io.*;
+import java.nio.file.Files;
 import java.util.*;
 
 /**
  * Multi-part form data request adapter for Jakarta Commons FileUpload package 
that
  * leverages the streaming API rather than the traditional non-streaming API.
- *
+ * 
  * For more details see WW-3025
  *
- * @author Chris Cranford
  * @since 2.3.18
  */
 public class JakartaStreamMultiPartRequest extends AbstractMultiPartRequest {
@@ -85,7 +85,7 @@ public class JakartaStreamMultiPartRequest extends 
AbstractMultiPartRequest {
 types.add(fileInfo.getContentType());
 }
 
-return types.toArray(new String[types.size()]);
+return types.toArray(new String[0]);
 }
 
 /* (non-Javad

[struts] 01/02: WW-5285 Limits max number of files to upload at once Upgrades commons-fileupload to ver. 1.5 and sets default limit to 256 files

2023-03-08 Thread lukaszlenart
This is an automated email from the ASF dual-hosted git repository.

lukaszlenart pushed a commit to branch release/6.1.x
in repository https://gitbox.apache.org/repos/asf/struts.git

commit 483a0c8d012924b78343dd35e56037c0d48a84cf
Author: Lukasz Lenart 
AuthorDate: Sat Feb 25 10:42:21 2023 +0100

WW-5285 Limits max number of files to upload at once
Upgrades commons-fileupload to ver. 1.5 and sets default limit to 256 files
---
 .../java/org/apache/struts2/StrutsConstants.java   |  3 ++
 .../struts2/config/entities/ConstantConfig.java| 10 +
 .../multipart/AbstractMultiPartRequest.java| 12 ++
 .../multipart/JakartaMultiPartRequest.java | 21 ---
 .../multipart/JakartaStreamMultiPartRequest.java   |  3 ++
 .../org/apache/struts2/default.properties  |  1 +
 .../org/apache/struts2/struts-messages.properties  |  1 +
 .../interceptor/FileUploadInterceptorTest.java | 44 ++
 pom.xml|  2 +-
 9 files changed, 91 insertions(+), 6 deletions(-)

diff --git a/core/src/main/java/org/apache/struts2/StrutsConstants.java 
b/core/src/main/java/org/apache/struts2/StrutsConstants.java
index c75ff3d54..15eb43d87 100644
--- a/core/src/main/java/org/apache/struts2/StrutsConstants.java
+++ b/core/src/main/java/org/apache/struts2/StrutsConstants.java
@@ -142,6 +142,9 @@ public final class StrutsConstants {
 /** The maximize size of a multipart request (file upload) */
 public static final String STRUTS_MULTIPART_MAXSIZE = 
"struts.multipart.maxSize";
 
+/** The maximized number of files allowed to upload */
+public static final String STRUTS_MULTIPART_MAXFILES = 
"struts.multipart.maxFiles";
+
 /** The directory to use for storing uploaded files */
 public static final String STRUTS_MULTIPART_SAVEDIR = 
"struts.multipart.saveDir";
 
diff --git 
a/core/src/main/java/org/apache/struts2/config/entities/ConstantConfig.java 
b/core/src/main/java/org/apache/struts2/config/entities/ConstantConfig.java
index 63c30ce2f..f728d9115 100644
--- a/core/src/main/java/org/apache/struts2/config/entities/ConstantConfig.java
+++ b/core/src/main/java/org/apache/struts2/config/entities/ConstantConfig.java
@@ -64,6 +64,7 @@ public class ConstantConfig {
 private String uiTheme;
 private String uiThemeExpansionToken;
 private Long multipartMaxSize;
+private Long multipartMaxFiles;
 private String multipartSaveDir;
 private Integer multipartBufferSize;
 private BeanConfig multipartParser;
@@ -195,6 +196,7 @@ public class ConstantConfig {
 map.put(StrutsConstants.STRUTS_UI_THEME, uiTheme);
 map.put(StrutsConstants.STRUTS_UI_THEME_EXPANSION_TOKEN, 
uiThemeExpansionToken);
 map.put(StrutsConstants.STRUTS_MULTIPART_MAXSIZE, 
Objects.toString(multipartMaxSize, null));
+map.put(StrutsConstants.STRUTS_MULTIPART_MAXFILES, 
Objects.toString(multipartMaxFiles, null));
 map.put(StrutsConstants.STRUTS_MULTIPART_SAVEDIR, multipartSaveDir);
 map.put(StrutsConstants.STRUTS_MULTIPART_BUFFERSIZE, 
Objects.toString(multipartBufferSize, null));
 map.put(StrutsConstants.STRUTS_MULTIPART_PARSER, 
beanConfToString(multipartParser));
@@ -580,6 +582,14 @@ public class ConstantConfig {
 this.multipartMaxSize = multipartMaxSize;
 }
 
+public Long getMultipartMaxFiles() {
+return multipartMaxFiles;
+}
+
+public void setMultipartMaxFiles(Long multipartMaxFiles) {
+this.multipartMaxFiles = multipartMaxFiles;
+}
+
 public String getMultipartSaveDir() {
 return multipartSaveDir;
 }
diff --git 
a/core/src/main/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequest.java
 
b/core/src/main/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequest.java
index 700364047..b3410e578 100644
--- 
a/core/src/main/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequest.java
+++ 
b/core/src/main/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequest.java
@@ -54,6 +54,12 @@ public abstract class AbstractMultiPartRequest implements 
MultiPartRequest {
 protected long maxSize;
 protected boolean maxSizeProvided;
 
+/**
+ * Specifies the maximum number of files in one request.
+ */
+protected long maxFiles;
+protected boolean maxFilesProvided;
+
 /**
  * Specifies the buffer size to use during streaming.
  */
@@ -88,6 +94,12 @@ public abstract class AbstractMultiPartRequest implements 
MultiPartRequest {
 this.maxSize = Long.parseLong(maxSize);
 }
 
+@Inject(StrutsConstants.STRUTS_MULTIPART_MAXFILES)
+public void setMaxFiles(String maxFiles) {
+this.maxFilesProvided = true;
+this.maxFiles = Long.parseLong(maxFiles);
+}
+
 @Inject
 public void setLocaleProviderFactory(LocaleProviderFactory 
localeProviderFactory) {
 defaultLocale = 
localeProviderFactory.createLocaleProvide

[struts] branch release/6.1.x created (now c3deb3923)

2023-03-08 Thread lukaszlenart
This is an automated email from the ASF dual-hosted git repository.

lukaszlenart pushed a change to branch release/6.1.x
in repository https://gitbox.apache.org/repos/asf/struts.git


  at c3deb3923 WW-5285 Uses Long and null to check if option has been 
defined

This branch includes the following new commits:

 new 483a0c8d0 WW-5285 Limits max number of files to upload at once 
Upgrades commons-fileupload to ver. 1.5 and sets default limit to 256 files
 new c3deb3923 WW-5285 Uses Long and null to check if option has been 
defined

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.




[struts] 01/02: Sets proper SNAPSHOT version to start release process

2023-03-08 Thread lukaszlenart
This is an automated email from the ASF dual-hosted git repository.

lukaszlenart pushed a commit to branch release/6.1.x
in repository https://gitbox.apache.org/repos/asf/struts.git

commit a85328e74e041b285e09617f65018d2f078c65d7
Author: Lukasz Lenart 
AuthorDate: Wed Mar 8 17:23:24 2023 +0100

Sets proper SNAPSHOT version to start release process
---
 apps/pom.xml| 2 +-
 apps/rest-showcase/pom.xml  | 4 ++--
 apps/showcase/pom.xml   | 2 +-
 assembly/pom.xml| 2 +-
 bom/pom.xml | 4 ++--
 bundles/admin/pom.xml   | 2 +-
 bundles/demo/pom.xml| 2 +-
 bundles/pom.xml | 2 +-
 core/pom.xml| 2 +-
 plugins/async/pom.xml   | 2 +-
 plugins/bean-validation/pom.xml | 2 +-
 plugins/cdi/pom.xml | 2 +-
 plugins/config-browser/pom.xml  | 2 +-
 plugins/convention/pom.xml  | 2 +-
 plugins/dwr/pom.xml | 2 +-
 plugins/embeddedjsp/pom.xml | 2 +-
 plugins/gxp/pom.xml | 2 +-
 plugins/jasperreports/pom.xml   | 2 +-
 plugins/javatemplates/pom.xml   | 2 +-
 plugins/jfreechart/pom.xml  | 2 +-
 plugins/json/pom.xml| 2 +-
 plugins/junit/pom.xml   | 2 +-
 plugins/osgi/pom.xml| 2 +-
 plugins/oval/pom.xml| 2 +-
 plugins/pell-multipart/pom.xml  | 2 +-
 plugins/plexus/pom.xml  | 2 +-
 plugins/pom.xml | 2 +-
 plugins/portlet-mocks/pom.xml   | 2 +-
 plugins/portlet-tiles/pom.xml   | 2 +-
 plugins/portlet/pom.xml | 2 +-
 plugins/rest/pom.xml| 2 +-
 plugins/sitemesh/pom.xml| 2 +-
 plugins/spring/pom.xml  | 2 +-
 plugins/testng/pom.xml  | 2 +-
 plugins/tiles/pom.xml   | 2 +-
 plugins/velocity/pom.xml| 2 +-
 pom.xml | 2 +-
 37 files changed, 39 insertions(+), 39 deletions(-)

diff --git a/apps/pom.xml b/apps/pom.xml
index 1453f94f5..20394f5fe 100644
--- a/apps/pom.xml
+++ b/apps/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-parent
-6.1.1
+6.1.2-SNAPSHOT
 
 struts2-apps
 pom
diff --git a/apps/rest-showcase/pom.xml b/apps/rest-showcase/pom.xml
index a45dd2181..af4920989 100644
--- a/apps/rest-showcase/pom.xml
+++ b/apps/rest-showcase/pom.xml
@@ -24,12 +24,12 @@
 
 org.apache.struts
 struts2-apps
-6.1.1
+6.1.2-SNAPSHOT
 
 
 struts2-rest-showcase
 war
-6.1.1
+6.1.2-SNAPSHOT
 Struts 2 Rest Showcase Webapp
 Struts 2 Rest Showcase Example
 
diff --git a/apps/showcase/pom.xml b/apps/showcase/pom.xml
index c7b306345..7f042b426 100644
--- a/apps/showcase/pom.xml
+++ b/apps/showcase/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-apps
-6.1.1
+6.1.2-SNAPSHOT
 
 
 struts2-showcase
diff --git a/assembly/pom.xml b/assembly/pom.xml
index aa86e1956..85b26155f 100644
--- a/assembly/pom.xml
+++ b/assembly/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-parent
-6.1.1
+6.1.2-SNAPSHOT
 
 
 struts2-assembly
diff --git a/bom/pom.xml b/bom/pom.xml
index ab479b5db..8d1678634 100644
--- a/bom/pom.xml
+++ b/bom/pom.xml
@@ -29,7 +29,7 @@
 
 
 struts2-bom
-6.1.1
+6.1.2-SNAPSHOT
 pom
 
 Struts 2 Bill of Materials
@@ -44,7 +44,7 @@
 
 
 
-6.1.1
+6.1.2-SNAPSHOT
 true
 true
 
diff --git a/bundles/admin/pom.xml b/bundles/admin/pom.xml
index e14af9931..d16f3365a 100644
--- a/bundles/admin/pom.xml
+++ b/bundles/admin/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-osgi-bundles
-6.1.1
+6.1.2-SNAPSHOT
 
 
 struts2-osgi-admin-bundle
diff --git a/bundles/demo/pom.xml b/bundles/demo/pom.xml
index 9eba51b8b..87563f85c 100644
--- a/bundles/demo/pom.xml
+++ b/bundles/demo/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-osgi-bundles
-6.1.1
+6.1.2-SNAPSHOT
 
 
 struts2-osgi-demo-bundle
diff --git a/bundles/pom.xml b/bundles/pom.xml
index e8244ce26..7b4f6a67b 100755
--- a/bundles/pom.xml
+++ b/bundles/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-parent
-6.1.1
+6.1.2-SNAPSHOT
 
 
 struts2-osgi-bundles
diff --git a/core/pom.xml b/core/pom.xml
index 266e5e009..c3bf16be6 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-parent
-6.1.1
+6.1.2-SNAPSHOT
 
 struts2-core
 jar
diff --git a/plugins/async/pom.xml b/plugins/async/pom.xml
index da2d55834..4cb8302ff 100644
--- a/plugins/async/pom.xml
+++ b/plugins/async/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-plugins
-6.1.1
+6.1.2-SNAPSHOT
 
 
 struts2-async-plugin
diff --git a/plugins/bean-validation/pom.xml b/plugins/bean-validation/po

[struts] branch release/6.1.x updated (c3deb3923 -> e90373962)

2023-03-08 Thread lukaszlenart
This is an automated email from the ASF dual-hosted git repository.

lukaszlenart pushed a change to branch release/6.1.x
in repository https://gitbox.apache.org/repos/asf/struts.git


from c3deb3923 WW-5285 Uses Long and null to check if option has been 
defined
 new a85328e74 Sets proper SNAPSHOT version to start release process
 new e90373962 [maven-release-plugin] prepare release STRUTS_6_1_2

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 apps/pom.xml| 2 +-
 apps/rest-showcase/pom.xml  | 4 ++--
 apps/showcase/pom.xml   | 2 +-
 assembly/pom.xml| 2 +-
 bom/pom.xml | 6 +++---
 bundles/admin/pom.xml   | 2 +-
 bundles/demo/pom.xml| 2 +-
 bundles/pom.xml | 2 +-
 core/pom.xml| 2 +-
 plugins/async/pom.xml   | 2 +-
 plugins/bean-validation/pom.xml | 2 +-
 plugins/cdi/pom.xml | 2 +-
 plugins/config-browser/pom.xml  | 2 +-
 plugins/convention/pom.xml  | 2 +-
 plugins/dwr/pom.xml | 2 +-
 plugins/embeddedjsp/pom.xml | 2 +-
 plugins/gxp/pom.xml | 2 +-
 plugins/jasperreports/pom.xml   | 2 +-
 plugins/javatemplates/pom.xml   | 2 +-
 plugins/jfreechart/pom.xml  | 2 +-
 plugins/json/pom.xml| 2 +-
 plugins/junit/pom.xml   | 2 +-
 plugins/osgi/pom.xml| 2 +-
 plugins/oval/pom.xml| 2 +-
 plugins/pell-multipart/pom.xml  | 2 +-
 plugins/plexus/pom.xml  | 2 +-
 plugins/pom.xml | 2 +-
 plugins/portlet-mocks/pom.xml   | 2 +-
 plugins/portlet-tiles/pom.xml   | 2 +-
 plugins/portlet/pom.xml | 2 +-
 plugins/rest/pom.xml| 2 +-
 plugins/sitemesh/pom.xml| 2 +-
 plugins/spring/pom.xml  | 2 +-
 plugins/testng/pom.xml  | 2 +-
 plugins/tiles/pom.xml   | 2 +-
 plugins/velocity/pom.xml| 2 +-
 pom.xml | 6 +++---
 37 files changed, 42 insertions(+), 42 deletions(-)



[struts] 02/02: [maven-release-plugin] prepare release STRUTS_6_1_2

2023-03-08 Thread lukaszlenart
This is an automated email from the ASF dual-hosted git repository.

lukaszlenart pushed a commit to branch release/6.1.x
in repository https://gitbox.apache.org/repos/asf/struts.git

commit e903739624cc1e08d73bbe66c08d26794a71eb2f
Author: Lukasz Lenart 
AuthorDate: Wed Mar 8 17:27:52 2023 +0100

[maven-release-plugin] prepare release STRUTS_6_1_2
---
 apps/pom.xml| 2 +-
 apps/rest-showcase/pom.xml  | 4 ++--
 apps/showcase/pom.xml   | 2 +-
 assembly/pom.xml| 2 +-
 bom/pom.xml | 6 +++---
 bundles/admin/pom.xml   | 2 +-
 bundles/demo/pom.xml| 2 +-
 bundles/pom.xml | 2 +-
 core/pom.xml| 2 +-
 plugins/async/pom.xml   | 2 +-
 plugins/bean-validation/pom.xml | 2 +-
 plugins/cdi/pom.xml | 2 +-
 plugins/config-browser/pom.xml  | 2 +-
 plugins/convention/pom.xml  | 2 +-
 plugins/dwr/pom.xml | 2 +-
 plugins/embeddedjsp/pom.xml | 2 +-
 plugins/gxp/pom.xml | 2 +-
 plugins/jasperreports/pom.xml   | 2 +-
 plugins/javatemplates/pom.xml   | 2 +-
 plugins/jfreechart/pom.xml  | 2 +-
 plugins/json/pom.xml| 2 +-
 plugins/junit/pom.xml   | 2 +-
 plugins/osgi/pom.xml| 2 +-
 plugins/oval/pom.xml| 2 +-
 plugins/pell-multipart/pom.xml  | 2 +-
 plugins/plexus/pom.xml  | 2 +-
 plugins/pom.xml | 2 +-
 plugins/portlet-mocks/pom.xml   | 2 +-
 plugins/portlet-tiles/pom.xml   | 2 +-
 plugins/portlet/pom.xml | 2 +-
 plugins/rest/pom.xml| 2 +-
 plugins/sitemesh/pom.xml| 2 +-
 plugins/spring/pom.xml  | 2 +-
 plugins/testng/pom.xml  | 2 +-
 plugins/tiles/pom.xml   | 2 +-
 plugins/velocity/pom.xml| 2 +-
 pom.xml | 6 +++---
 37 files changed, 42 insertions(+), 42 deletions(-)

diff --git a/apps/pom.xml b/apps/pom.xml
index 20394f5fe..2eabe2d30 100644
--- a/apps/pom.xml
+++ b/apps/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-parent
-6.1.2-SNAPSHOT
+6.1.2
 
 struts2-apps
 pom
diff --git a/apps/rest-showcase/pom.xml b/apps/rest-showcase/pom.xml
index af4920989..f1730b3b6 100644
--- a/apps/rest-showcase/pom.xml
+++ b/apps/rest-showcase/pom.xml
@@ -24,12 +24,12 @@
 
 org.apache.struts
 struts2-apps
-6.1.2-SNAPSHOT
+6.1.2
 
 
 struts2-rest-showcase
 war
-6.1.2-SNAPSHOT
+6.1.2
 Struts 2 Rest Showcase Webapp
 Struts 2 Rest Showcase Example
 
diff --git a/apps/showcase/pom.xml b/apps/showcase/pom.xml
index 7f042b426..29d724c0c 100644
--- a/apps/showcase/pom.xml
+++ b/apps/showcase/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-apps
-6.1.2-SNAPSHOT
+6.1.2
 
 
 struts2-showcase
diff --git a/assembly/pom.xml b/assembly/pom.xml
index 85b26155f..abcfc8411 100644
--- a/assembly/pom.xml
+++ b/assembly/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-parent
-6.1.2-SNAPSHOT
+6.1.2
 
 
 struts2-assembly
diff --git a/bom/pom.xml b/bom/pom.xml
index 8d1678634..ec4e41deb 100644
--- a/bom/pom.xml
+++ b/bom/pom.xml
@@ -29,7 +29,7 @@
 
 
 struts2-bom
-6.1.2-SNAPSHOT
+6.1.2
 pom
 
 Struts 2 Bill of Materials
@@ -44,7 +44,7 @@
 
 
 
-6.1.2-SNAPSHOT
+6.1.2
 true
 true
 
@@ -185,7 +185,7 @@
 
 
   
-STRUTS_6_1_1
+STRUTS_6_1_2
 
scm:git:https://gitbox.apache.org/repos/asf/struts.git
 
scm:git:https://gitbox.apache.org/repos/asf/struts.git
 https://github.com/apache/struts/
diff --git a/bundles/admin/pom.xml b/bundles/admin/pom.xml
index d16f3365a..30ca1c87e 100644
--- a/bundles/admin/pom.xml
+++ b/bundles/admin/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-osgi-bundles
-6.1.2-SNAPSHOT
+6.1.2
 
 
 struts2-osgi-admin-bundle
diff --git a/bundles/demo/pom.xml b/bundles/demo/pom.xml
index 87563f85c..f95a5f2a5 100644
--- a/bundles/demo/pom.xml
+++ b/bundles/demo/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-osgi-bundles
-6.1.2-SNAPSHOT
+6.1.2
 
 
 struts2-osgi-demo-bundle
diff --git a/bundles/pom.xml b/bundles/pom.xml
index 7b4f6a67b..5ca0502c2 100755
--- a/bundles/pom.xml
+++ b/bundles/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-parent
-6.1.2-SNAPSHOT
+6.1.2
 
 
 struts2-osgi-bundles
diff --git a/core/pom.xml b/core/pom.xml
index c3bf16be6..6e3a6a423 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-parent
-6.1.2-SNAPSHOT
+6.1.2
 
 struts2-core
 jar
diff --git a/plugins/async/pom.xml b/plugins/async/pom.xml
index 4cb8302ff..4e79716c0 100644
--- a/plugins/async/pom.xml
+++ b/plugins/asy

[struts] annotated tag STRUTS_6_1_2 created (now e806f1f8a)

2023-03-08 Thread lukaszlenart
This is an automated email from the ASF dual-hosted git repository.

lukaszlenart pushed a change to annotated tag STRUTS_6_1_2
in repository https://gitbox.apache.org/repos/asf/struts.git


  at e806f1f8a (tag)
 tagging e903739624cc1e08d73bbe66c08d26794a71eb2f (commit)
 replaces STRUTS_6_1_1
  by Lukasz Lenart
  on Wed Mar 8 17:27:56 2023 +0100

- Log -
[maven-release-plugin] copy for tag STRUTS_6_1_2
---

No new revisions were added by this update.



[struts] branch release/6.1.x updated: [maven-release-plugin] prepare for next development iteration

2023-03-08 Thread lukaszlenart
This is an automated email from the ASF dual-hosted git repository.

lukaszlenart pushed a commit to branch release/6.1.x
in repository https://gitbox.apache.org/repos/asf/struts.git


The following commit(s) were added to refs/heads/release/6.1.x by this push:
 new 36e4e7410 [maven-release-plugin] prepare for next development iteration
36e4e7410 is described below

commit 36e4e7410ee9484971c3dbd0d914a80e9d7cbaad
Author: Lukasz Lenart 
AuthorDate: Wed Mar 8 17:28:00 2023 +0100

[maven-release-plugin] prepare for next development iteration
---
 apps/pom.xml| 2 +-
 apps/rest-showcase/pom.xml  | 4 ++--
 apps/showcase/pom.xml   | 2 +-
 assembly/pom.xml| 2 +-
 bom/pom.xml | 6 +++---
 bundles/admin/pom.xml   | 2 +-
 bundles/demo/pom.xml| 2 +-
 bundles/pom.xml | 2 +-
 core/pom.xml| 2 +-
 plugins/async/pom.xml   | 2 +-
 plugins/bean-validation/pom.xml | 2 +-
 plugins/cdi/pom.xml | 2 +-
 plugins/config-browser/pom.xml  | 2 +-
 plugins/convention/pom.xml  | 2 +-
 plugins/dwr/pom.xml | 2 +-
 plugins/embeddedjsp/pom.xml | 2 +-
 plugins/gxp/pom.xml | 2 +-
 plugins/jasperreports/pom.xml   | 2 +-
 plugins/javatemplates/pom.xml   | 2 +-
 plugins/jfreechart/pom.xml  | 2 +-
 plugins/json/pom.xml| 2 +-
 plugins/junit/pom.xml   | 2 +-
 plugins/osgi/pom.xml| 2 +-
 plugins/oval/pom.xml| 2 +-
 plugins/pell-multipart/pom.xml  | 2 +-
 plugins/plexus/pom.xml  | 2 +-
 plugins/pom.xml | 2 +-
 plugins/portlet-mocks/pom.xml   | 2 +-
 plugins/portlet-tiles/pom.xml   | 2 +-
 plugins/portlet/pom.xml | 2 +-
 plugins/rest/pom.xml| 2 +-
 plugins/sitemesh/pom.xml| 2 +-
 plugins/spring/pom.xml  | 2 +-
 plugins/testng/pom.xml  | 2 +-
 plugins/tiles/pom.xml   | 2 +-
 plugins/velocity/pom.xml| 2 +-
 pom.xml | 6 +++---
 37 files changed, 42 insertions(+), 42 deletions(-)

diff --git a/apps/pom.xml b/apps/pom.xml
index 2eabe2d30..f73fb22f3 100644
--- a/apps/pom.xml
+++ b/apps/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-parent
-6.1.2
+6.1.3-SNAPSHOT
 
 struts2-apps
 pom
diff --git a/apps/rest-showcase/pom.xml b/apps/rest-showcase/pom.xml
index f1730b3b6..a67d7badc 100644
--- a/apps/rest-showcase/pom.xml
+++ b/apps/rest-showcase/pom.xml
@@ -24,12 +24,12 @@
 
 org.apache.struts
 struts2-apps
-6.1.2
+6.1.3-SNAPSHOT
 
 
 struts2-rest-showcase
 war
-6.1.2
+6.1.3-SNAPSHOT
 Struts 2 Rest Showcase Webapp
 Struts 2 Rest Showcase Example
 
diff --git a/apps/showcase/pom.xml b/apps/showcase/pom.xml
index 29d724c0c..5fa13a785 100644
--- a/apps/showcase/pom.xml
+++ b/apps/showcase/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-apps
-6.1.2
+6.1.3-SNAPSHOT
 
 
 struts2-showcase
diff --git a/assembly/pom.xml b/assembly/pom.xml
index abcfc8411..497598f02 100644
--- a/assembly/pom.xml
+++ b/assembly/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-parent
-6.1.2
+6.1.3-SNAPSHOT
 
 
 struts2-assembly
diff --git a/bom/pom.xml b/bom/pom.xml
index ec4e41deb..3ade8ff78 100644
--- a/bom/pom.xml
+++ b/bom/pom.xml
@@ -29,7 +29,7 @@
 
 
 struts2-bom
-6.1.2
+6.1.3-SNAPSHOT
 pom
 
 Struts 2 Bill of Materials
@@ -44,7 +44,7 @@
 
 
 
-6.1.2
+6.1.3-SNAPSHOT
 true
 true
 
@@ -185,7 +185,7 @@
 
 
   
-STRUTS_6_1_2
+STRUTS_6_1_1
 
scm:git:https://gitbox.apache.org/repos/asf/struts.git
 
scm:git:https://gitbox.apache.org/repos/asf/struts.git
 https://github.com/apache/struts/
diff --git a/bundles/admin/pom.xml b/bundles/admin/pom.xml
index 30ca1c87e..26732ae4b 100644
--- a/bundles/admin/pom.xml
+++ b/bundles/admin/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-osgi-bundles
-6.1.2
+6.1.3-SNAPSHOT
 
 
 struts2-osgi-admin-bundle
diff --git a/bundles/demo/pom.xml b/bundles/demo/pom.xml
index f95a5f2a5..0cb2fd2f2 100644
--- a/bundles/demo/pom.xml
+++ b/bundles/demo/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-osgi-bundles
-6.1.2
+6.1.3-SNAPSHOT
 
 
 struts2-osgi-demo-bundle
diff --git a/bundles/pom.xml b/bundles/pom.xml
index 5ca0502c2..868d79301 100755
--- a/bundles/pom.xml
+++ b/bundles/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-parent
-6.1.2
+6.1.3-SNAPSHOT
 
 
 struts2-osgi-bundles
diff --git a/core/pom.xml b/core/pom.xml
index 6e3a6a423..d6c887e4b 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -24,7 +24,7 @@
 
 org.apache.struts
 struts2-parent
-6.

svn commit: r60492 - /dev/struts/6.1.2/

2023-03-08 Thread lukaszlenart
Author: lukaszlenart
Date: Wed Mar  8 20:05:34 2023
New Revision: 60492

Log:
Updates test release 6.1.2

Added:
dev/struts/6.1.2/
dev/struts/6.1.2/struts-6.1.2-all.zip   (with props)
dev/struts/6.1.2/struts-6.1.2-all.zip.asc
dev/struts/6.1.2/struts-6.1.2-all.zip.sha256
dev/struts/6.1.2/struts-6.1.2-all.zip.sha512
dev/struts/6.1.2/struts-6.1.2-apps.zip   (with props)
dev/struts/6.1.2/struts-6.1.2-apps.zip.asc
dev/struts/6.1.2/struts-6.1.2-apps.zip.sha256
dev/struts/6.1.2/struts-6.1.2-apps.zip.sha512
dev/struts/6.1.2/struts-6.1.2-docs.zip   (with props)
dev/struts/6.1.2/struts-6.1.2-docs.zip.asc
dev/struts/6.1.2/struts-6.1.2-docs.zip.sha256
dev/struts/6.1.2/struts-6.1.2-docs.zip.sha512
dev/struts/6.1.2/struts-6.1.2-lib.zip   (with props)
dev/struts/6.1.2/struts-6.1.2-lib.zip.asc
dev/struts/6.1.2/struts-6.1.2-lib.zip.sha256
dev/struts/6.1.2/struts-6.1.2-lib.zip.sha512
dev/struts/6.1.2/struts-6.1.2-min-lib.zip   (with props)
dev/struts/6.1.2/struts-6.1.2-min-lib.zip.asc
dev/struts/6.1.2/struts-6.1.2-min-lib.zip.sha256
dev/struts/6.1.2/struts-6.1.2-min-lib.zip.sha512
dev/struts/6.1.2/struts-6.1.2-src.zip   (with props)
dev/struts/6.1.2/struts-6.1.2-src.zip.asc
dev/struts/6.1.2/struts-6.1.2-src.zip.sha256
dev/struts/6.1.2/struts-6.1.2-src.zip.sha512

Added: dev/struts/6.1.2/struts-6.1.2-all.zip
==
Binary file - no diff available.

Propchange: dev/struts/6.1.2/struts-6.1.2-all.zip
--
svn:mime-type = application/octet-stream

Added: dev/struts/6.1.2/struts-6.1.2-all.zip.asc
==
--- dev/struts/6.1.2/struts-6.1.2-all.zip.asc (added)
+++ dev/struts/6.1.2/struts-6.1.2-all.zip.asc Wed Mar  8 20:05:34 2023
@@ -0,0 +1,17 @@
+-BEGIN PGP SIGNATURE-
+
+iQJMBAABCgA2FiEEDgCGmDROYrkGM7fGKEFhBmOvux8FAmQIuQAYHGx1a2Fzemxl
+bmFydEBhcGFjaGUub3JnAAoJEChBYQZjr7sf4OIP/RWpksc8HMsZ9pL9eAMM52lN
+zzfvLMBCEqFSLhJqxIIeCcssGE8darHYcDrk/vtUiWjbPl8i+bZqY7VQyC5D0m3T
+UhRk7DtdAoN/OrBPa43odeSq8o7tpKvBWq52iDNa227JhPrssuBNbgtmco9qN/Ci
+eRPDfnHunjcjqdsU8l2UqkqMpELu1mPUZkc5vXP4xr8GSShs3Bs02xejULySKZJW
+OGArtr1RKcJwKQtF8xcWSMRigf/Nwb9ip4p79JSioCTRkIKKdscPh6ZqAVmHfaaO
+V3mrC+Hy/e19OVvea92dL/38+rcrDkXt7gRdhJh3TsntHks8/Ah9z7nGYWHXNPBp
+4wy/TurByDOqCuR24PGxU3Q7EH9cJeBy5dZvAN/L1kWvkyYR/kFd3HzZr9MxdKa0
+c1JgktaImo9XPeAzv3B5+pIzMZmmVYdG6RrW2xMPfClL+7/4DP2t130vesPQY+30
+peNn6YqVAD6I8KPeV5rl2jwoa1TgoT2iKYfH4oDjzbVTI2OxX2P+I9GxohuBZTp6
+SWzYK3qTGAKLwA1ars+Q2esAzn48gw6mIqHVMdN1w0Z9nnh2MHHnG8kfJJxq1OCK
+0VM0rZb+MNZdGO2Uok5FKdZPBTMJrJrfhxj0blpVcAC6tiQMCHrWUh/h1cL/yPTp
+yRkiuP+x8fgqnutsfuXi
+=b9JV
+-END PGP SIGNATURE-

Added: dev/struts/6.1.2/struts-6.1.2-all.zip.sha256
==
--- dev/struts/6.1.2/struts-6.1.2-all.zip.sha256 (added)
+++ dev/struts/6.1.2/struts-6.1.2-all.zip.sha256 Wed Mar  8 20:05:34 2023
@@ -0,0 +1 @@
+01c15fe78e22830faa46af3537af687b61266a1ad3b31ce6dd235d1b7b138e1a  
struts-6.1.2-all.zip

Added: dev/struts/6.1.2/struts-6.1.2-all.zip.sha512
==
--- dev/struts/6.1.2/struts-6.1.2-all.zip.sha512 (added)
+++ dev/struts/6.1.2/struts-6.1.2-all.zip.sha512 Wed Mar  8 20:05:34 2023
@@ -0,0 +1 @@
+b7fd4a981e7c8cbe719a7b036cb5927763b2b7d3986f3f14aebae6f2e4f6d13ddb526b72ddb9527d6499c3527e8d79a1590e5abc3dd3928836afa5c9c9ec8b33
  struts-6.1.2-all.zip

Added: dev/struts/6.1.2/struts-6.1.2-apps.zip
==
Binary file - no diff available.

Propchange: dev/struts/6.1.2/struts-6.1.2-apps.zip
--
svn:mime-type = application/octet-stream

Added: dev/struts/6.1.2/struts-6.1.2-apps.zip.asc
==
--- dev/struts/6.1.2/struts-6.1.2-apps.zip.asc (added)
+++ dev/struts/6.1.2/struts-6.1.2-apps.zip.asc Wed Mar  8 20:05:34 2023
@@ -0,0 +1,17 @@
+-BEGIN PGP SIGNATURE-
+
+iQJMBAABCgA2FiEEDgCGmDROYrkGM7fGKEFhBmOvux8FAmQIuQAYHGx1a2Fzemxl
+bmFydEBhcGFjaGUub3JnAAoJEChBYQZjr7sfWNgP/RI87prf0SpnBcsuzLBCOzUY
+9pVKpQ2/BKQLBI6jQicMtyKVtT0lZzK6AgHhNT9fIx6clnUIfxDyHUZ0LrnfVH6e
+fmIVIO9McgxOpk2iDPapTvRlOhz6rW8Kuxm0PXC3YAX2fxS3tXzabCHDtdWnnY6W
+g1Uyhy1Aey11jlQxgTJKKinz7DHWvHGIJEKIlsFaYQg8hT5FPCophE6tE2YGW/UD
+Iiyn0q42tI8La7CiHf1epJ9lwovOQ0eF3njTid8uN/85S28wQ0cT7MQfBElaEB1C
+jkIN0jTK49Ifg7gfO+32yGezGqmAzZbFB2155XKXzZOj9cgP5eMlIAo/73gHMHzo
+jpn08RSWs9OeNoWUXLgYt4e4U5nHZx0A+0QSmhCjZ7xKy3vdCjXkyd4uN4hzpgdq
+z7aiL53xbcYbLr/1gbkdn+okBlVB6wkFN8lzarF+IKTmdIPcgeGlgjhxpZZIM+e2
+pBHsujrsELbx2LDE/a/XlBJyEQYP/8f8bJ5Y1c4S+5Hz0axVZFBaB7WpFoMg1430
+TrxAaI9ONGMLu+6gtPJ4loTqrWYipMz2z30XCcozSUBiwY61

[struts-site] branch WW-5285-max-files-cleanup created (now 202df9771)

2023-03-08 Thread lukaszlenart
This is an automated email from the ASF dual-hosted git repository.

lukaszlenart pushed a change to branch WW-5285-max-files-cleanup
in repository https://gitbox.apache.org/repos/asf/struts-site.git


  at 202df9771 WW-5285 Cleans up file upload dependencies

This branch includes the following new commits:

 new 202df9771 WW-5285 Cleans up file upload dependencies

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.




[struts-site] 01/01: WW-5285 Cleans up file upload dependencies

2023-03-08 Thread lukaszlenart
This is an automated email from the ASF dual-hosted git repository.

lukaszlenart pushed a commit to branch WW-5285-max-files-cleanup
in repository https://gitbox.apache.org/repos/asf/struts-site.git

commit 202df9771e5ced4febb5aff759a4b259846563fb
Author: Lukasz Lenart 
AuthorDate: Wed Mar 8 22:28:40 2023 +0100

WW-5285 Cleans up file upload dependencies
---
 source/core-developers/file-upload.md | 105 +++---
 1 file changed, 34 insertions(+), 71 deletions(-)

diff --git a/source/core-developers/file-upload.md 
b/source/core-developers/file-upload.md
index 7aec7f81c..9f623dd48 100644
--- a/source/core-developers/file-upload.md
+++ b/source/core-developers/file-upload.md
@@ -1,5 +1,5 @@
 ---
-layout: core-developers 
+layout: core-developers
 title: File Upload
 ---
 
@@ -9,8 +9,7 @@ title: File Upload
 * Will be replaced with the ToC, excluding a header
 {:toc}
 
-The Struts 2 framework provides built-in support for processing file uploads 
that conform
-to [RFC 1867](http://www.ietf.org/rfc/rfc1867.txt),
+The Struts 2 framework provides built-in support for processing file uploads 
that conform to [RFC 1867](http://www.ietf.org/rfc/rfc1867.txt), 
 "Form-based File Upload in HTML". When correctly configured the framework will 
pass uploaded file(s) into your Action
 class. Support for individual and multiple file uploads are provided. When a 
file is uploaded it will typically be
 stored in a temporary directory. Uploaded files should be processed or moved 
by your Action class to ensure the data is
@@ -19,50 +18,13 @@ than the temporary directory and the directories that 
belong to your web applica
 
 ## Dependencies
 
-The Struts 2 framework leverages add-on libraries to handle the parsing of 
uploaded files. These libraries are not
-included in the Struts distribution, you must add them into your project. The 
libraries needed are:
-
-|Library|URL|Struts 2.0.x|Struts 2.1.x|Struts 2.5.x|
-|---|---|--|--|--|
-|Commons-FileUpload|[http://commons.apache.org/fileupload/](http://commons.apache.org/fileupload/)|1.1.1|1.2.1|1.3.2|
-|Commons-IO|[http://commons.apache.org/io/](http://commons.apache.org/io/)|1.0|1.3.2|2.4|
-
-If you are using Maven then you can add these libraries as dependencies in 
your project's pom.xml.
-
-### Struts 2.0.x File Upload Dependencies
-
-```xml
-
-commons-fileupload
-commons-fileupload
-1.1.1
-
-
-commons-io
-commons-io
-1.0
-
-```
-
-### Struts 2.1.x File Upload Dependencies
-
-```xml
-
-commons-fileupload
-commons-fileupload
-1.2.1
-
-
-commons-io
-commons-io
-1.3.2
-
-```
+The Struts 2 framework leverages the Commons FileUpload library as a based 
library to support file upload in the framework.
+The library is included in a base Struts 2 distribution.
 
 ## Basic Usage
 
 The `org.apache.struts2.interceptor.FileUploadInterceptor` class is included 
as part of the `defaultStack`. As long as
-the required libraries are added to your project you will be able to take 
advantage of of the Struts 2 fileUpload
+the required libraries are added to your project you will be able to take 
advantage of the Struts 2 file upload
 capability. Configure an Action mapping for your Action class as you typically 
would.
 
 ### Example action mapping:
@@ -75,9 +37,10 @@ capability. Configure an Action mapping for your Action 
class as you typically w
 ```
 
 A form must be create with a form field of type file, ``. The form used to upload the
-file must have its encoding type set to `multipart/form-data`
-, ``. The 
standard procedure for adding these
-elements is by using the Struts 2 tag libraries as shown in the following 
example:
+file must have its encoding type set
+to `multipart/form-data`, ``.
+The standard procedure for adding these elements is by using the Struts 2 tag 
libraries as shown in the following
+example:
 
 ### Example JSP form tags:
 
@@ -128,11 +91,11 @@ The purpose of each one of these methods is described in 
the table below. Notice
 elements with different names you would be required to have another 
corresponding set of these methods for each file
 uploaded.
 
-|Method Signature|Description|
-||---|
-|`setX(File file)`|The file that contains the content of the uploaded file. 
This is a temporary file and file.getName() will not return the original name 
of the file|
-|`setXContentType(String contentType)`|The mime type of the uploaded file|
-|`setXFileName(String fileName)`|The actual file name of the uploaded file 
(not the HTML name)|
+| Method Signature  | Description  

  |
+|---||
+| `setX(Fi

[struts-site] branch asf-staging updated: Updates stage by Jenkins

2023-03-08 Thread git-site-role
This is an automated email from the ASF dual-hosted git repository.

git-site-role pushed a commit to branch asf-staging
in repository https://gitbox.apache.org/repos/asf/struts-site.git


The following commit(s) were added to refs/heads/asf-staging by this push:
 new c0463a97e Updates stage by Jenkins
c0463a97e is described below

commit c0463a97e3f60d7ef7c164e2ec2b1c2ce1298b2b
Author: jenkins 
AuthorDate: Wed Mar 8 21:35:18 2023 +

Updates stage by Jenkins
---
 content/core-developers/file-upload.html | 104 +++
 1 file changed, 21 insertions(+), 83 deletions(-)

diff --git a/content/core-developers/file-upload.html 
b/content/core-developers/file-upload.html
index a05500bff..ede426e0d 100644
--- a/content/core-developers/file-upload.html
+++ b/content/core-developers/file-upload.html
@@ -132,11 +132,7 @@
 File Upload
 
 
-  Dependencies  
  
-  Struts 2.0.x File Upload 
Dependencies
-  Struts 2.1.x File Upload 
Dependencies
-
-  
+  Dependencies
   Basic Usage

   Example action mapping:
   Example JSP form tags:
@@ -161,8 +157,7 @@
   
 
 
-The Struts 2 framework provides built-in support for processing file 
uploads that conform
-to http://www.ietf.org/rfc/rfc1867.txt";>RFC 1867,
+The Struts 2 framework provides built-in support for processing file 
uploads that conform to http://www.ietf.org/rfc/rfc1867.txt";>RFC 
1867, 
 “Form-based File Upload in HTML”. When correctly configured the framework will 
pass uploaded file(s) into your Action
 class. Support for individual and multiple file uploads are provided. When a 
file is uploaded it will typically be
 stored in a temporary directory. Uploaded files should be processed or moved 
by your Action class to ensure the data is
@@ -171,71 +166,13 @@ than the temporary directory and the directories that 
belong to your web applica
 
 Dependencies
 
-The Struts 2 framework leverages add-on libraries to handle the parsing of 
uploaded files. These libraries are not
-included in the Struts distribution, you must add them into your project. The 
libraries needed are:
-
-
-  
-
-  Library
-  URL
-  Struts 2.0.x
-  Struts 2.1.x
-  Struts 2.5.x
-
-  
-  
-
-  Commons-FileUpload
-  http://commons.apache.org/fileupload/";>http://commons.apache.org/fileupload/
-  1.1.1
-  1.2.1
-  1.3.2
-
-
-  Commons-IO
-  http://commons.apache.org/io/";>http://commons.apache.org/io/
-  1.0
-  1.3.2
-  2.4
-
-  
-
-
-If you are using Maven then you can add these libraries as dependencies in 
your project’s pom.xml.
-
-Struts 2.0.x File Upload 
Dependencies
-
-
-commons-fileupload
-commons-fileupload
-1.1.1
-
-
-commons-io
-commons-io
-1.0
-
-
-
-Struts 2.1.x File Upload 
Dependencies
-
-
-commons-fileupload
-commons-fileupload
-1.2.1
-
-
-commons-io
-commons-io
-1.3.2
-
-
+The Struts 2 framework leverages the Commons FileUpload library as a based 
library to support file upload in the framework.
+The library is included in a base Struts 2 distribution.
 
 Basic Usage
 
 The org.apache.struts2.interceptor.FileUploadInterceptor 
class is included as part of the defaultStack. As long as
-the required libraries are added to your project you will be able to take 
advantage of of the Struts 2 fileUpload
+the required libraries are added to your project you will be able to take 
advantage of the Struts 2 file upload
 capability. Configure an Action mapping for your Action class as you typically 
would.
 
 Example action mapping:
@@ -247,9 +184,10 @@ capability. Configure an Action mapping for your Action 
class as you typically w
 
 
 A form must be create with a form field of type file, . The form used to upload the
-file must have its encoding type set to multipart/form-data
-, 
. The standard procedure for adding these -elements is by using the Struts 2 tag libraries as shown in the following example: +file must have its encoding type set +to multipart/form-data, . +The standard procedure for adding these elements is by using the Struts 2 tag libraries as shown in the following +example: Example JSP form tags: @@ -335,10 +273,10 @@ see struts-fileupload.xmlmultipleUploadUsingArray.jsp Notice all file input types have the same name. - -