diff --git a/apps/showcase/pom.xml b/apps/showcase/pom.xml
index ca1e63cc3..8db25884a 100644
--- a/apps/showcase/pom.xml
+++ b/apps/showcase/pom.xml
@@ -26,7 +26,7 @@
org.apache.struts
- struts2-integration
+ struts2-struts1-plugin
${pom.version}
diff --git a/apps/showcase/src/main/resources/struts-integration.xml b/apps/showcase/src/main/resources/struts-integration.xml
index e6fdbe647..66f28d2d7 100644
--- a/apps/showcase/src/main/resources/struts-integration.xml
+++ b/apps/showcase/src/main/resources/struts-integration.xml
@@ -5,7 +5,7 @@
"http://struts.apache.org/dtds/struts-2.0.dtd">
-
+
diff --git a/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java b/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java
index 46c5d80b3..11190754f 100644
--- a/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java
+++ b/core/src/main/java/org/apache/struts2/dispatcher/Dispatcher.java
@@ -251,9 +251,9 @@ public class Dispatcher {
}
configurationManager = new ConfigurationManager();
- String configFiles = Settings.get(StrutsConstants.STRUTS_CONFIGURATION_FILES);
- if (configFiles == null) {
- configFiles = "struts-default.xml,struts-plugins.xml,struts.xml";
+ String configFiles = "struts-default.xml,struts-plugin.xml,struts.xml";
+ if (Settings.isSet(StrutsConstants.STRUTS_CONFIGURATION_FILES)) {
+ configFiles = Settings.get(StrutsConstants.STRUTS_CONFIGURATION_FILES);
}
String[] files = configFiles.split("\\s*[,]\\s*");
for (String file : files) {
diff --git a/core/src/main/resources/struts-default.xml b/core/src/main/resources/struts-default.xml
index 3be176aed..c3a1b863e 100644
--- a/core/src/main/resources/struts-default.xml
+++ b/core/src/main/resources/struts-default.xml
@@ -20,7 +20,6 @@
diff --git a/core/src/main/resources/struts-portlet-default.xml b/core/src/main/resources/struts-portlet-default.xml
index 31fb7de64..1154ba7f4 100644
--- a/core/src/main/resources/struts-portlet-default.xml
+++ b/core/src/main/resources/struts-portlet-default.xml
@@ -5,8 +5,6 @@
"http://struts.apache.org/dtds/struts-2.0.dtd">
-
-
@@ -25,4 +23,4 @@
${location}
-
\ No newline at end of file
+
diff --git a/extras/pom.xml b/extras/pom.xml
deleted file mode 100644
index 6ee070a69..000000000
--- a/extras/pom.xml
+++ /dev/null
@@ -1,73 +0,0 @@
-
-
- 4.0.0
-
- org.apache.struts
- struts2-parent
- 2.0.1-SNAPSHOT
-
- org.apache.struts
- struts2-extras
- jar
- Struts Extras
-
-
-
- apache-site
- scp://people.apache.org/www/struts.apache.org/2.x/struts-extras
-
-
-
-
-
- junit
- junit
- 3.8.1
- test
-
-
-
- javax.servlet
- servlet-api
- 2.4
- provided
-
-
-
- org.apache.struts
- struts2-core
- ${pom.version}
-
-
-
- jasperreports
- jasperreports
- 1.2.1
- provided
-
-
-
- mockobjects
- mockobjects-core
- 0.09
- test
-
-
-
- opensymphony
- pell-multipart
- 2.1.5
- provided
- true
-
-
-
- commons-logging
- commons-logging
- 1.0.4
- provided
-
-
-
-
diff --git a/integration/src/main/resources/struts-default.xml b/integration/src/main/resources/struts-default.xml
deleted file mode 100644
index 77213fc4b..000000000
--- a/integration/src/main/resources/struts-default.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/plugins/jasperreports/pom.xml b/plugins/jasperreports/pom.xml
new file mode 100644
index 000000000..c45996b82
--- /dev/null
+++ b/plugins/jasperreports/pom.xml
@@ -0,0 +1,30 @@
+
+
+ 4.0.0
+
+ org.apache.struts
+ struts2-plugins
+ 2.0.1-SNAPSHOT
+
+ org.apache.struts
+ struts2-jasperreports-plugin
+ jar
+ Struts 2 Jasper Reports Plugin
+
+
+
+ apache-site
+ scp://people.apache.org/www/struts.apache.org/2.x/plugins/jasperreports
+
+
+
+
+
+ jasperreports
+ jasperreports
+ 1.2.1
+ provided
+
+
+
diff --git a/extras/src/main/java/org/apache/struts2/views/jasperreports/CompileReport.java b/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/CompileReport.java
similarity index 100%
rename from extras/src/main/java/org/apache/struts2/views/jasperreports/CompileReport.java
rename to plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/CompileReport.java
diff --git a/extras/src/main/java/org/apache/struts2/views/jasperreports/JasperReportConstants.java b/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/JasperReportConstants.java
similarity index 100%
rename from extras/src/main/java/org/apache/struts2/views/jasperreports/JasperReportConstants.java
rename to plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/JasperReportConstants.java
diff --git a/extras/src/main/java/org/apache/struts2/views/jasperreports/JasperReportsResult.java b/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/JasperReportsResult.java
similarity index 100%
rename from extras/src/main/java/org/apache/struts2/views/jasperreports/JasperReportsResult.java
rename to plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/JasperReportsResult.java
diff --git a/extras/src/main/java/org/apache/struts2/views/jasperreports/OgnlValueStackDataSource.java b/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/OgnlValueStackDataSource.java
similarity index 100%
rename from extras/src/main/java/org/apache/struts2/views/jasperreports/OgnlValueStackDataSource.java
rename to plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/OgnlValueStackDataSource.java
diff --git a/extras/src/main/java/org/apache/struts2/views/jasperreports/OgnlValueStackShadowMap.java b/plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/OgnlValueStackShadowMap.java
similarity index 100%
rename from extras/src/main/java/org/apache/struts2/views/jasperreports/OgnlValueStackShadowMap.java
rename to plugins/jasperreports/src/main/java/org/apache/struts2/views/jasperreports/OgnlValueStackShadowMap.java
diff --git a/plugins/jasperreports/src/main/resources/struts-plugin.xml b/plugins/jasperreports/src/main/resources/struts-plugin.xml
new file mode 100644
index 000000000..4837a842f
--- /dev/null
+++ b/plugins/jasperreports/src/main/resources/struts-plugin.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/plugins/jfreechart/pom.xml b/plugins/jfreechart/pom.xml
new file mode 100644
index 000000000..015dde473
--- /dev/null
+++ b/plugins/jfreechart/pom.xml
@@ -0,0 +1,56 @@
+
+
+ 4.0.0
+
+ org.apache.struts
+ struts2-plugins
+ 2.0.1-SNAPSHOT
+
+ org.apache.struts
+ struts2-jfreechart-plugin
+ jar
+ Struts 2 JFreeChart Plugin
+
+
+
+ apache-site
+ scp://people.apache.org/www/struts.apache.org/2.x/plugins/jfreechart
+
+
+
+
+
+ jfree
+ jcommon
+ [1.0.0,)
+ provided
+
+
+ gnujaxp
+ gnujaxp
+
+
+
+
+ jfree
+ jfreechart
+ [1.0.0,)
+ provided
+
+
+ gnujaxp
+ gnujaxp
+
+
+
+
+ mockobjects
+ mockobjects-core
+ 0.09
+ test
+
+
+
+
+
diff --git a/extras/src/main/java/org/apache/struts2/dispatcher/ChartResult.java b/plugins/jfreechart/src/main/java/org/apache/struts2/dispatcher/ChartResult.java
similarity index 100%
rename from extras/src/main/java/org/apache/struts2/dispatcher/ChartResult.java
rename to plugins/jfreechart/src/main/java/org/apache/struts2/dispatcher/ChartResult.java
diff --git a/plugins/jfreechart/src/main/resources/struts-plugin.xml b/plugins/jfreechart/src/main/resources/struts-plugin.xml
new file mode 100644
index 000000000..4c8e64154
--- /dev/null
+++ b/plugins/jfreechart/src/main/resources/struts-plugin.xml
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+ 150
+ 200
+
+
+
+
+
diff --git a/extras/src/test/java/org/apache/struts2/dispatcher/ChartResultTest.java b/plugins/jfreechart/src/test/java/org/apache/struts2/dispatcher/ChartResultTest.java
similarity index 100%
rename from extras/src/test/java/org/apache/struts2/dispatcher/ChartResultTest.java
rename to plugins/jfreechart/src/test/java/org/apache/struts2/dispatcher/ChartResultTest.java
diff --git a/plugins/pell-multipart/pom.xml b/plugins/pell-multipart/pom.xml
new file mode 100644
index 000000000..99539616c
--- /dev/null
+++ b/plugins/pell-multipart/pom.xml
@@ -0,0 +1,30 @@
+
+
+ 4.0.0
+
+ org.apache.struts
+ struts2-plugins
+ 2.0.1-SNAPSHOT
+
+ org.apache.struts
+ struts2-pell-multipart-plugin
+ jar
+ Struts 2 Pell Multipart Plugin
+
+
+
+ apache-site
+ scp://people.apache.org/www/struts.apache.org/2.x/plugins/pell-multipart
+
+
+
+
+
+ opensymphony
+ pell-multipart
+ 2.1.5
+ provided
+
+
+
diff --git a/extras/src/main/java/org/apache/struts2/dispatcher/multipart/PellMultiPartRequest.java b/plugins/pell-multipart/src/main/java/org/apache/struts2/dispatcher/multipart/PellMultiPartRequest.java
similarity index 100%
rename from extras/src/main/java/org/apache/struts2/dispatcher/multipart/PellMultiPartRequest.java
rename to plugins/pell-multipart/src/main/java/org/apache/struts2/dispatcher/multipart/PellMultiPartRequest.java
diff --git a/plugins/pom.xml b/plugins/pom.xml
new file mode 100644
index 000000000..43893a1af
--- /dev/null
+++ b/plugins/pom.xml
@@ -0,0 +1,57 @@
+
+
+ 4.0.0
+
+ org.apache.struts
+ struts2-parent
+ 2.0.1-SNAPSHOT
+
+ org.apache.struts
+ struts2-plugins
+ pom
+ Struts Plugins
+
+ struts1
+ pell-multipart
+ jasperreports
+ jfreechart
+
+
+
+
+ apache-site
+ scp://people.apache.org/www/struts.apache.org/2.x/plugins
+
+
+
+
+
+
+ org.apache.struts
+ struts2-core
+ ${pom.version}
+
+
+
+
+ junit
+ junit
+ compile
+ 3.8.1
+
+ true
+
+
+
+
+ javax.servlet
+ servlet-api
+ 2.4
+ provided
+
+
+
+
+
+
diff --git a/integration/pom.xml b/plugins/struts1/pom.xml
similarity index 61%
rename from integration/pom.xml
rename to plugins/struts1/pom.xml
index 24399d4f1..42cc1d8a1 100644
--- a/integration/pom.xml
+++ b/plugins/struts1/pom.xml
@@ -4,42 +4,22 @@
4.0.0
org.apache.struts
- struts2-parent
+ struts2-plugins
2.0.1-SNAPSHOT
org.apache.struts
- struts2-integration
+ struts2-struts1-plugin
jar
- Struts 2 Integration
+ Struts 2 Struts 1 Plugin
apache-site
- scp://people.apache.org/www/struts.apache.org/2.x/struts-integration
+ scp://people.apache.org/www/struts.apache.org/2.x/plugins/struts1
-
- junit
- junit
- 3.8.1
- test
-
-
-
- javax.servlet
- servlet-api
- 2.4
- provided
-
-
-
- org.apache.struts
- struts2-core
- ${pom.version}
-
-
org.apache.struts
struts-core
diff --git a/integration/src/main/java/org/apache/struts2/s1/ActionFormResetInterceptor.java b/plugins/struts1/src/main/java/org/apache/struts2/s1/ActionFormResetInterceptor.java
similarity index 100%
rename from integration/src/main/java/org/apache/struts2/s1/ActionFormResetInterceptor.java
rename to plugins/struts1/src/main/java/org/apache/struts2/s1/ActionFormResetInterceptor.java
diff --git a/integration/src/main/java/org/apache/struts2/s1/ActionFormValidationInterceptor.java b/plugins/struts1/src/main/java/org/apache/struts2/s1/ActionFormValidationInterceptor.java
similarity index 100%
rename from integration/src/main/java/org/apache/struts2/s1/ActionFormValidationInterceptor.java
rename to plugins/struts1/src/main/java/org/apache/struts2/s1/ActionFormValidationInterceptor.java
diff --git a/integration/src/main/java/org/apache/struts2/s1/DynaBeanPropertyAccessor.java b/plugins/struts1/src/main/java/org/apache/struts2/s1/DynaBeanPropertyAccessor.java
similarity index 100%
rename from integration/src/main/java/org/apache/struts2/s1/DynaBeanPropertyAccessor.java
rename to plugins/struts1/src/main/java/org/apache/struts2/s1/DynaBeanPropertyAccessor.java
diff --git a/integration/src/main/java/org/apache/struts2/s1/Struts1Action.java b/plugins/struts1/src/main/java/org/apache/struts2/s1/Struts1Action.java
similarity index 100%
rename from integration/src/main/java/org/apache/struts2/s1/Struts1Action.java
rename to plugins/struts1/src/main/java/org/apache/struts2/s1/Struts1Action.java
diff --git a/integration/src/main/java/org/apache/struts2/s1/Struts1Factory.java b/plugins/struts1/src/main/java/org/apache/struts2/s1/Struts1Factory.java
similarity index 100%
rename from integration/src/main/java/org/apache/struts2/s1/Struts1Factory.java
rename to plugins/struts1/src/main/java/org/apache/struts2/s1/Struts1Factory.java
diff --git a/integration/src/main/java/org/apache/struts2/s1/WrapperActionForward.java b/plugins/struts1/src/main/java/org/apache/struts2/s1/WrapperActionForward.java
similarity index 100%
rename from integration/src/main/java/org/apache/struts2/s1/WrapperActionForward.java
rename to plugins/struts1/src/main/java/org/apache/struts2/s1/WrapperActionForward.java
diff --git a/integration/src/main/java/org/apache/struts2/s1/WrapperActionMapping.java b/plugins/struts1/src/main/java/org/apache/struts2/s1/WrapperActionMapping.java
similarity index 100%
rename from integration/src/main/java/org/apache/struts2/s1/WrapperActionMapping.java
rename to plugins/struts1/src/main/java/org/apache/struts2/s1/WrapperActionMapping.java
diff --git a/integration/src/main/java/org/apache/struts2/s1/WrapperExceptionConfig.java b/plugins/struts1/src/main/java/org/apache/struts2/s1/WrapperExceptionConfig.java
similarity index 100%
rename from integration/src/main/java/org/apache/struts2/s1/WrapperExceptionConfig.java
rename to plugins/struts1/src/main/java/org/apache/struts2/s1/WrapperExceptionConfig.java
diff --git a/integration/src/main/java/org/apache/struts2/s1/WrapperMessageResources.java b/plugins/struts1/src/main/java/org/apache/struts2/s1/WrapperMessageResources.java
similarity index 100%
rename from integration/src/main/java/org/apache/struts2/s1/WrapperMessageResources.java
rename to plugins/struts1/src/main/java/org/apache/struts2/s1/WrapperMessageResources.java
diff --git a/integration/src/main/java/org/apache/struts2/s1/WrapperModuleConfig.java b/plugins/struts1/src/main/java/org/apache/struts2/s1/WrapperModuleConfig.java
similarity index 100%
rename from integration/src/main/java/org/apache/struts2/s1/WrapperModuleConfig.java
rename to plugins/struts1/src/main/java/org/apache/struts2/s1/WrapperModuleConfig.java
diff --git a/plugins/struts1/src/main/resources/struts-plugin.xml b/plugins/struts1/src/main/resources/struts-plugin.xml
new file mode 100644
index 000000000..9114f590c
--- /dev/null
+++ b/plugins/struts1/src/main/resources/struts-plugin.xml
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+
+
+
+ /org/apache/struts/validator/validator-rules.xml,/WEB-INF/validation.xml
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/integration/src/test/java/org/apache/struts2/s1/DynaBeanPropertyAccessorTest.java b/plugins/struts1/src/test/java/org/apache/struts2/s1/DynaBeanPropertyAccessorTest.java
similarity index 100%
rename from integration/src/test/java/org/apache/struts2/s1/DynaBeanPropertyAccessorTest.java
rename to plugins/struts1/src/test/java/org/apache/struts2/s1/DynaBeanPropertyAccessorTest.java
diff --git a/integration/src/test/java/org/apache/struts2/s1/Struts1FactoryTest.java b/plugins/struts1/src/test/java/org/apache/struts2/s1/Struts1FactoryTest.java
similarity index 100%
rename from integration/src/test/java/org/apache/struts2/s1/Struts1FactoryTest.java
rename to plugins/struts1/src/test/java/org/apache/struts2/s1/Struts1FactoryTest.java
diff --git a/integration/src/test/resources/org/apache/struts2/s1/test-struts-factory.xml b/plugins/struts1/src/test/resources/org/apache/struts2/s1/test-struts-factory.xml
similarity index 100%
rename from integration/src/test/resources/org/apache/struts2/s1/test-struts-factory.xml
rename to plugins/struts1/src/test/resources/org/apache/struts2/s1/test-struts-factory.xml