Compare commits

...

13 Commits

Author SHA1 Message Date
Maurizio Cucchiara 733f686c0e [maven-release-plugin] copy for tag struts2-parent-2.3.1.2
git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2@1233438 13f79535-47bb-0310-9956-ffa450edef68
2012-01-19 15:42:01 +00:00
Lukasz Lenart 150be4e3f7 [maven-release-plugin] prepare for next development iteration
git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/branches/STRUTS_2_3_X@1223032 13f79535-47bb-0310-9956-ffa450edef68
2011-12-24 22:33:53 +00:00
Lukasz Lenart 6272a4aa8e [maven-release-plugin] prepare release STRUTS_2_3_1_1
git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/branches/STRUTS_2_3_X@1223030 13f79535-47bb-0310-9956-ffa450edef68
2011-12-24 22:26:33 +00:00
Lukasz Lenart 04c8840846 [maven-release-plugin] rollback the release of STRUTS_2_3_1_1
git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/branches/STRUTS_2_3_X@1223027 13f79535-47bb-0310-9956-ffa450edef68
2011-12-24 21:55:19 +00:00
Lukasz Lenart 42800866da [maven-release-plugin] prepare release STRUTS_2_3_1_1
git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/branches/STRUTS_2_3_X@1223026 13f79535-47bb-0310-9956-ffa450edef68
2011-12-24 21:45:39 +00:00
Lukasz Lenart 1dd1f270d2 [maven-release-plugin] rollback the release of STRUTS_2_3_1_1
git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/branches/STRUTS_2_3_X@1223018 13f79535-47bb-0310-9956-ffa450edef68
2011-12-24 21:14:53 +00:00
Lukasz Lenart 118eedaacb [maven-release-plugin] prepare release STRUTS_2_3_1_1
git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/branches/STRUTS_2_3_X@1222997 13f79535-47bb-0310-9956-ffa450edef68
2011-12-24 16:24:27 +00:00
Lukasz Lenart 0a6839cd41 Prepares for release
git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/branches/STRUTS_2_3_X@1222992 13f79535-47bb-0310-9956-ffa450edef68
2011-12-24 16:04:23 +00:00
Lukasz Lenart fd87298b06 Changes site target
git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/branches/STRUTS_2_3_X@1222983 13f79535-47bb-0310-9956-ffa450edef68
2011-12-24 15:15:07 +00:00
Lukasz Lenart 41f90ae39d Improves accepted param names and drops support of white spaces in param names
git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/branches/STRUTS_2_3_X@1222975 13f79535-47bb-0310-9956-ffa450edef68
2011-12-24 14:04:05 +00:00
Lukasz Lenart 34c80dae73 WW-3729 - Improves Strict DMI mode
git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/branches/STRUTS_2_3_X@1221473 13f79535-47bb-0310-9956-ffa450edef68
2011-12-20 20:17:49 +00:00
Lukasz Lenart 49abe3704e Preparing branch for fast track release
git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/branches/STRUTS_2_3_X@1221455 13f79535-47bb-0310-9956-ffa450edef68
2011-12-20 19:32:26 +00:00
Lukasz Lenart e5009a3420 [maven-release-plugin] copy for tag STRUTS_2_3_1
git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/tags/STRUTS_2_3_1@1212122 13f79535-47bb-0310-9956-ffa450edef68
2011-12-08 21:07:36 +00:00
57 changed files with 450 additions and 408 deletions
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-apps</artifactId> <artifactId>struts2-apps</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-blank</artifactId> <artifactId>struts2-blank</artifactId>
@@ -34,9 +34,9 @@
<name>Blank Webapp</name> <name>Blank Webapp</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/apps/blank/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/apps/blank</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/apps/blank/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/apps/blank</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/apps/blank/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/apps/blank</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-apps</artifactId> <artifactId>struts2-apps</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-jboss-blank</artifactId> <artifactId>struts2-jboss-blank</artifactId>
@@ -34,9 +34,9 @@
<name>JBoss Blank Webapp</name> <name>JBoss Blank Webapp</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/apps/jboss-blank/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/apps/jboss-blank</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/apps/jboss-blank/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/apps/jboss-blank</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/apps/jboss-blank/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/apps/jboss-blank</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-apps</artifactId> <artifactId>struts2-apps</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-mailreader</artifactId> <artifactId>struts2-mailreader</artifactId>
@@ -34,9 +34,9 @@
<name>Mail Reader Webapp</name> <name>Mail Reader Webapp</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/apps/mailreader/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/apps/mailreader</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/apps/mailreader/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/apps/mailreader</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/apps/mailreader/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/apps/mailreader</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-parent</artifactId> <artifactId>struts2-parent</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-apps</artifactId> <artifactId>struts2-apps</artifactId>
@@ -42,9 +42,9 @@
</modules> </modules>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/apps/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/apps</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/apps/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/apps</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/apps/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/apps</url>
</scm> </scm>
<profiles> <profiles>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-apps</artifactId> <artifactId>struts2-apps</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-portlet</artifactId> <artifactId>struts2-portlet</artifactId>
@@ -34,9 +34,9 @@
<name>Portlet Webapp</name> <name>Portlet Webapp</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/apps/portlet/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/apps/portlet</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/apps/portlet/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/apps/portlet</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/apps/portlet/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/apps/portlet</url>
</scm> </scm>
<profiles> <profiles>
+2 -2
View File
@@ -26,13 +26,13 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-apps</artifactId> <artifactId>struts2-apps</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-rest-showcase</artifactId> <artifactId>struts2-rest-showcase</artifactId>
<packaging>war</packaging> <packaging>war</packaging>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
<name>Struts 2 Rest Showcase Example</name> <name>Struts 2 Rest Showcase Example</name>
<description>Struts 2 Rest Showcase Example</description> <description>Struts 2 Rest Showcase Example</description>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-apps</artifactId> <artifactId>struts2-apps</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-showcase</artifactId> <artifactId>struts2-showcase</artifactId>
@@ -34,9 +34,9 @@
<name>Showcase Webapp</name> <name>Showcase Webapp</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/apps/showcase/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/apps/showcase</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/apps/showcase/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/apps/showcase</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/apps/showcase/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/apps/showcase</url>
</scm> </scm>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-parent</artifactId> <artifactId>struts2-parent</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-archetypes</artifactId> <artifactId>struts2-archetypes</artifactId>
@@ -34,9 +34,9 @@
<name>Struts 2 Maven Archetypes</name> <name>Struts 2 Maven Archetypes</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes</developerConnection>
<url>http://svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/</url> <url>http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes</url>
</scm> </scm>
<modules> <modules>
+5 -5
View File
@@ -3,18 +3,18 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-archetypes</artifactId> <artifactId>struts2-archetypes</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>struts2-archetype-blank</artifactId> <artifactId>struts2-archetype-blank</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
<name>Struts 2 Archetypes - Blank</name> <name>Struts 2 Archetypes - Blank</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/struts2-archetype-blank/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes/struts2-archetype-blank</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/struts2-archetype-blank/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes/struts2-archetype-blank</developerConnection>
<url>http://svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/struts2-archetype-blank/</url> <url>http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes/struts2-archetype-blank</url>
</scm> </scm>
<properties> <properties>
@@ -1,21 +1,19 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-archetypes</artifactId> <artifactId>struts2-archetypes</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>struts2-archetype-convention</artifactId> <artifactId>struts2-archetype-convention</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
<name>Struts 2 Archetypes - Blank Convention</name> <name>Struts 2 Archetypes - Blank Convention</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/struts2-archetype-convention/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes/struts2-archetype-convention</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/struts2-archetype-convention/ <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes/struts2-archetype-convention</developerConnection>
</developerConnection> <url>http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes/struts2-archetype-convention</url>
<url>http://svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/struts2-archetype-convention/</url>
</scm> </scm>
<properties> <properties>
@@ -1,21 +1,19 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-archetypes</artifactId> <artifactId>struts2-archetypes</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>struts2-archetype-dbportlet</artifactId> <artifactId>struts2-archetype-dbportlet</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
<name>Struts 2 Archetypes - Database Portlet</name> <name>Struts 2 Archetypes - Database Portlet</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/struts2-archetype-dbportlet/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes/struts2-archetype-dbportlet</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/struts2-archetype-dbportlet/ <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes/struts2-archetype-dbportlet</developerConnection>
</developerConnection> <url>svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes/struts2-archetype-dbportlet</url>
<url>svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/struts2-archetype-dbportlet/</url>
</scm> </scm>
<properties> <properties>
+6 -8
View File
@@ -1,22 +1,20 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-archetypes</artifactId> <artifactId>struts2-archetypes</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>struts2-archetype-plugin</artifactId> <artifactId>struts2-archetype-plugin</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
<packaging>jar</packaging> <packaging>jar</packaging>
<name>Struts 2 Archetypes - Plugin</name> <name>Struts 2 Archetypes - Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/struts2-archetype-plugin/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes/struts2-archetype-plugin</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/struts2-archetype-plugin/ <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes/struts2-archetype-plugin</developerConnection>
</developerConnection> <url>http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes/struts2-archetype-plugin</url>
<url>http://svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/struts2-archetype-plugin/</url>
</scm> </scm>
<properties> <properties>
+6 -8
View File
@@ -1,22 +1,20 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-archetypes</artifactId> <artifactId>struts2-archetypes</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>struts2-archetype-portlet</artifactId> <artifactId>struts2-archetype-portlet</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
<packaging>jar</packaging> <packaging>jar</packaging>
<name>Struts 2 Archetypes - Portlet</name> <name>Struts 2 Archetypes - Portlet</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/struts2-archetype-portlet/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes/struts2-archetype-portlet</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/struts2-archetype-portlet/ <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes/struts2-archetype-portlet</developerConnection>
</developerConnection> <url>http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes/struts2-archetype-portlet</url>
<url>http://svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/struts2-archetype-portlet/</url>
</scm> </scm>
<properties> <properties>
+6 -8
View File
@@ -1,24 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-archetypes</artifactId> <artifactId>struts2-archetypes</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>struts2-archetype-starter</artifactId> <artifactId>struts2-archetype-starter</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
<packaging>jar</packaging> <packaging>jar</packaging>
<name>Struts 2 Archetypes - Starter</name> <name>Struts 2 Archetypes - Starter</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/struts2-archetype-starter/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes/struts2-archetype-starter</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/struts2-archetype-starter/ <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes/struts2-archetype-starter</developerConnection>
</developerConnection> <url>http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/archetypes/struts2-archetype-starter</url>
<url>http://svn.apache.org/repos/asf/struts/struts2/trunk/archetypes/struts2-archetype-starter/</url>
</scm> </scm>
<properties> <properties>
+4 -4
View File
@@ -11,13 +11,13 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-parent</artifactId> <artifactId>struts2-parent</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/assembly</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/assembly</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/assembly</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/assembly</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/assembly</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/assembly</url>
</scm> </scm>
<profiles> <profiles>
+4 -4
View File
@@ -4,7 +4,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-osgi-bundles</artifactId> <artifactId>struts2-osgi-bundles</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-osgi-admin-bundle</artifactId> <artifactId>struts2-osgi-admin-bundle</artifactId>
@@ -12,9 +12,9 @@
<name>Struts 2 OSGi Admin Bundle</name> <name>Struts 2 OSGi Admin Bundle</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/bundles/admin/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/bundles/admin</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/bundles/admin/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/bundles/admin</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/bundles/admin/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/bundles/admin</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -4,7 +4,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-osgi-bundles</artifactId> <artifactId>struts2-osgi-bundles</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-osgi-demo-bundle</artifactId> <artifactId>struts2-osgi-demo-bundle</artifactId>
@@ -12,9 +12,9 @@
<name>Struts 2 OSGi Demo Bundle</name> <name>Struts 2 OSGi Demo Bundle</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/bundles/demo/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/bundles/demo</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/bundles/demo/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/bundles/demo</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/bundles/demo/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/bundles/demo</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-parent</artifactId> <artifactId>struts2-parent</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-osgi-bundles</artifactId> <artifactId>struts2-osgi-bundles</artifactId>
@@ -34,9 +34,9 @@
<name>Struts OSGi Bundles</name> <name>Struts OSGi Bundles</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/bundles/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/bundles</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/bundles/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/bundles</developerConnection>
<url>http://svn.apache.org/repos/asf/struts/struts2/trunk/bundles/</url> <url>http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/bundles</url>
</scm> </scm>
<modules> <modules>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-parent</artifactId> <artifactId>struts2-parent</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId> <artifactId>struts2-core</artifactId>
@@ -34,9 +34,9 @@
<name>Struts 2 Core</name> <name>Struts 2 Core</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/core/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/core</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/core/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/core</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/core/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/core</url>
</scm> </scm>
<properties> <properties>
@@ -21,13 +21,6 @@
package org.apache.struts2.interceptor; package org.apache.struts2.interceptor;
import java.util.*;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts2.ServletActionContext;
import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.AbstractInterceptor; import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
@@ -35,6 +28,14 @@ import com.opensymphony.xwork2.util.TextParseUtil;
import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.util.ValueStack;
import com.opensymphony.xwork2.util.logging.Logger; import com.opensymphony.xwork2.util.logging.Logger;
import com.opensymphony.xwork2.util.logging.LoggerFactory; import com.opensymphony.xwork2.util.logging.LoggerFactory;
import org.apache.struts2.ServletActionContext;
import javax.servlet.http.Cookie;
import java.util.Collections;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;
import java.util.regex.Pattern;
/** /**
* <!-- START SNIPPET: description --> * <!-- START SNIPPET: description -->
@@ -75,7 +76,8 @@ import com.opensymphony.xwork2.util.logging.LoggerFactory;
* action. If more than one cookie name is desired it could be * action. If more than one cookie name is desired it could be
* comma-separated. If left empty, it will assume any value would * comma-separated. If left empty, it will assume any value would
* be ok. If more than one value is specified (comma-separated) * be ok. If more than one value is specified (comma-separated)
* it will assume a match if either value is matched. * it will assume a match if either value is matched.</li>
* <li>acceptCookieNames (optional) - Pattern used to check if name of cookie matches the provided patter, to </li>
* </ul> * </ul>
* *
* <!-- END SNIPPET: parameters --> * <!-- END SNIPPET: parameters -->
@@ -161,9 +163,14 @@ public class CookieInterceptor extends AbstractInterceptor {
private static final Logger LOG = LoggerFactory.getLogger(CookieInterceptor.class); private static final Logger LOG = LoggerFactory.getLogger(CookieInterceptor.class);
private static final String ACCEPTED_PATTERN = "[a-zA-Z0-9\\.\\]\\[_'\\s]+";
private Set<String> cookiesNameSet = Collections.emptySet(); private Set<String> cookiesNameSet = Collections.emptySet();
private Set<String> cookiesValueSet = Collections.emptySet(); private Set<String> cookiesValueSet = Collections.emptySet();
// Allowed names of cookies
private Pattern acceptedPattern = Pattern.compile(ACCEPTED_PATTERN);
/** /**
* Set the <code>cookiesName</code> which if matched will allow the cookie * Set the <code>cookiesName</code> which if matched will allow the cookie
* to be injected into action, could be comma-separated string. * to be injected into action, could be comma-separated string.
@@ -187,11 +194,20 @@ public class CookieInterceptor extends AbstractInterceptor {
this.cookiesValueSet = TextParseUtil.commaDelimitedStringToSet(cookiesValue); this.cookiesValueSet = TextParseUtil.commaDelimitedStringToSet(cookiesValue);
} }
/**
* Set the <code>acceptCookieNames</code> pattern of allowed names of cookies to protect against remote command execution vulnerability
*
* @param pattern used to check cookie name against
*/
public void setAcceptCookieNames(String pattern) {
acceptedPattern = Pattern.compile(pattern);
}
public String intercept(ActionInvocation invocation) throws Exception { public String intercept(ActionInvocation invocation) throws Exception {
if (LOG.isDebugEnabled()) { if (LOG.isDebugEnabled()) {
LOG.debug("start interception"); LOG.debug("start interception");
} }
// contains selected cookies // contains selected cookies
final Map<String, String> cookiesMap = new LinkedHashMap<String, String>(); final Map<String, String> cookiesMap = new LinkedHashMap<String, String>();
@@ -203,13 +219,17 @@ public class CookieInterceptor extends AbstractInterceptor {
String name = cookie.getName(); String name = cookie.getName();
String value = cookie.getValue(); String value = cookie.getValue();
if (cookiesNameSet.contains("*")) { if (acceptedPattern.matcher(name).matches()) {
if (LOG.isDebugEnabled()) { if (cookiesNameSet.contains("*")) {
LOG.debug("contains cookie name [*] in configured cookies name set, cookie with name [" + name + "] with value [" + value + "] will be injected"); if (LOG.isDebugEnabled()) {
LOG.debug("contains cookie name [*] in configured cookies name set, cookie with name [" + name + "] with value [" + value + "] will be injected");
}
populateCookieValueIntoStack(name, value, cookiesMap, stack);
} else if (cookiesNameSet.contains(cookie.getName())) {
populateCookieValueIntoStack(name, value, cookiesMap, stack);
} }
populateCookieValueIntoStack(name, value, cookiesMap, stack); } else {
} else if (cookiesNameSet.contains(cookie.getName())) { LOG.warn("Cookie name [" + name + "] does not match accepted cookie names pattern [" + acceptedPattern + "]");
populateCookieValueIntoStack(name, value, cookiesMap, stack);
} }
} }
} }
@@ -251,7 +271,7 @@ public class CookieInterceptor extends AbstractInterceptor {
if (LOG.isDebugEnabled()) { if (LOG.isDebugEnabled()) {
LOG.debug("both configured cookie name and value matched, cookie ["+cookieName+"] with value ["+cookieValue+"] will be injected"); LOG.debug("both configured cookie name and value matched, cookie ["+cookieName+"] with value ["+cookieValue+"] will be injected");
} }
cookiesMap.put(cookieName, cookieValue); cookiesMap.put(cookieName, cookieValue);
stack.setValue(cookieName, cookieValue); stack.setValue(cookieName, cookieValue);
} }
+2 -3
View File
@@ -19,14 +19,13 @@
* under the License. * under the License.
*/ */
--> -->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-codebehind-plugin</artifactId> <artifactId>struts2-codebehind-plugin</artifactId>
@@ -34,9 +34,9 @@
<name>Struts 2 Codebehind Plugin</name> <name>Struts 2 Codebehind Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/codebehind/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/codebehind</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/codebehind/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/codebehind</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/codebehind/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/codebehind</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-config-browser-plugin</artifactId> <artifactId>struts2-config-browser-plugin</artifactId>
@@ -34,9 +34,9 @@
<name>Struts 2 Configuration Browser Plugin</name> <name>Struts 2 Configuration Browser Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/config-browser/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/config-browser</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/config-browser/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/config-browser</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/config-browser/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/config-browser</url>
</scm> </scm>
</project> </project>
+4 -4
View File
@@ -3,7 +3,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-convention-plugin</artifactId> <artifactId>struts2-convention-plugin</artifactId>
@@ -11,9 +11,9 @@
<name>Struts 2 Convention Plugin</name> <name>Struts 2 Convention Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/sandbox/trunk/struts2-convention-plugin</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/sandbox/tags/struts2-parent-2.3.1.2</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/sandbox/trunk/struts2-convention-plugin</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/sandbox/tags/struts2-parent-2.3.1.2</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/sandbox/trunk/struts2-convention-plugin</url> <url>http://svn.apache.org/viewcvs.cgi/struts/sandbox/tags/struts2-parent-2.3.1.2</url>
</scm> </scm>
<build> <build>
+4 -4
View File
@@ -25,7 +25,7 @@
<parent> <parent>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
@@ -33,9 +33,9 @@
<name>Struts 2 Dojo Plugin</name> <name>Struts 2 Dojo Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/dojo/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/dojo</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/dojo/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/dojo</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/dojo/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/dojo</url>
</scm> </scm>
<profiles> <profiles>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-dwr-plugin</artifactId> <artifactId>struts2-dwr-plugin</artifactId>
@@ -34,9 +34,9 @@
<name>Struts 2 DWR Plugin</name> <name>Struts 2 DWR Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/dwr/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/dwr</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/dwr/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/dwr</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/dwr/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/dwr</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
@@ -35,9 +35,9 @@
<name>Struts 2 Embedded JSP Plugin</name> <name>Struts 2 Embedded JSP Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/embeddedjsp/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/embeddedjsp</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/embeddedjsp/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/embeddedjsp</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/embeddedjsp/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/embeddedjsp</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -3,7 +3,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
@@ -13,9 +13,9 @@
<url>http://struts.apache.org</url> <url>http://struts.apache.org</url>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/sandbox/trunk/struts2-gxp-plugin</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/sandbox/tags/struts2-parent-2.3.1.2</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/sandbox/trunk/struts2-gxp-plugin</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/sandbox/tags/struts2-parent-2.3.1.2</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/sandbox/trunk/struts2-gxp-plugin</url> <url>http://svn.apache.org/viewcvs.cgi/struts/sandbox/tags/struts2-parent-2.3.1.2</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-jasperreports-plugin</artifactId> <artifactId>struts2-jasperreports-plugin</artifactId>
@@ -34,9 +34,9 @@
<name>Struts 2 Jasper Reports Plugin</name> <name>Struts 2 Jasper Reports Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/jasperreports/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/jasperreports</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/jasperreports/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/jasperreports</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/jasperreports/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/jasperreports</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -25,7 +25,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-javatemplates-plugin</artifactId> <artifactId>struts2-javatemplates-plugin</artifactId>
@@ -33,9 +33,9 @@
<name>Struts 2 Java Templates Plugin</name> <name>Struts 2 Java Templates Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/javatemplates/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/javatemplates</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/javatemplates/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/javatemplates</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/javatemplates/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/javatemplates</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-jfreechart-plugin</artifactId> <artifactId>struts2-jfreechart-plugin</artifactId>
@@ -34,9 +34,9 @@
<name>Struts 2 JFreeChart Plugin</name> <name>Struts 2 JFreeChart Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/jfreechart/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/jfreechart</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/jfreechart/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/jfreechart</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/jfreechart/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/jfreechart</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-jsf-plugin</artifactId> <artifactId>struts2-jsf-plugin</artifactId>
@@ -34,9 +34,9 @@
<name>Struts 2 JSF Plugin</name> <name>Struts 2 JSF Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/jsf/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/jsf</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/jsf/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/jsf</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/jsf/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/jsf</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-json-plugin</artifactId> <artifactId>struts2-json-plugin</artifactId>
@@ -34,9 +34,9 @@
<name>Struts 2 JSON Plugin</name> <name>Struts 2 JSON Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/json/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/json</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/json/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/json</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/json/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/json</url>
</scm> </scm>
<build> <build>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-junit-plugin</artifactId> <artifactId>struts2-junit-plugin</artifactId>
@@ -34,9 +34,9 @@
<name>Struts 2 JUnit Plugin</name> <name>Struts 2 JUnit Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/junit/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/junit</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/junit/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/junit</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/junit/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/junit</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -4,7 +4,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-osgi-plugin</artifactId> <artifactId>struts2-osgi-plugin</artifactId>
@@ -12,9 +12,9 @@
<name>Struts 2 OSGi Plugin</name> <name>Struts 2 OSGi Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/osgi/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/osgi</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/osgi/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/osgi</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/osgi/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/osgi</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-oval-plugin</artifactId> <artifactId>struts2-oval-plugin</artifactId>
@@ -34,9 +34,9 @@
<name>Struts 2 OVal Plugin</name> <name>Struts 2 OVal Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/oval/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/oval</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/oval/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/oval</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/oval/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/oval</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-pell-multipart-plugin</artifactId> <artifactId>struts2-pell-multipart-plugin</artifactId>
@@ -34,9 +34,9 @@
<name>Struts 2 Pell Multipart Plugin</name> <name>Struts 2 Pell Multipart Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/pell-multipart/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/pell-multipart</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/pell-multipart/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/pell-multipart</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/pell-multipart/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/pell-multipart</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plexus-plugin</artifactId> <artifactId>struts2-plexus-plugin</artifactId>
@@ -34,9 +34,9 @@
<name>Struts 2 Plexus Plugin</name> <name>Struts 2 Plexus Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/plexus/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/plexus</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/plexus/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/plexus</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/plexus/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/plexus</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-parent</artifactId> <artifactId>struts2-parent</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
@@ -34,9 +34,9 @@
<name>Struts Plugins</name> <name>Struts Plugins</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins</developerConnection>
<url>http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/</url> <url>http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins</url>
</scm> </scm>
<modules> <modules>
+127 -150
View File
@@ -1,150 +1,127 @@
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<!-- <modelVersion>4.0.0</modelVersion>
/* <parent>
* $Id: pom.xml 1090136 2011-04-08 06:39:51Z lukaszlenart $ <groupId>org.apache.struts</groupId>
* <artifactId>struts2-plugins</artifactId>
* Licensed to the Apache Software Foundation (ASF) under one <version>2.3.1.2</version>
* or more contributor license agreements. See the NOTICE file </parent>
* distributed with this work for additional information <groupId>org.apache.struts</groupId>
* regarding copyright ownership. The ASF licenses this file <artifactId>struts2-portlet-plugin</artifactId>
* to you under the Apache License, Version 2.0 (the <packaging>jar</packaging>
* "License"); you may not use this file except in compliance <name>Struts 2 Portlet Plugin</name>
* with the License. You may obtain a copy of the License at
* <scm>
* http://www.apache.org/licenses/LICENSE-2.0 <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/portlet</connection>
* <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/portlet</developerConnection>
* Unless required by applicable law or agreed to in writing, <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/portlet</url>
* software distributed under the License is distributed on an </scm>
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the <dependencies>
* specific language governing permissions and limitations <dependency>
* under the License. <groupId>junit</groupId>
*/ <artifactId>junit</artifactId>
--> <scope>test</scope>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> </dependency>
<modelVersion>4.0.0</modelVersion> <dependency>
<parent> <groupId>${project.groupId}</groupId>
<groupId>org.apache.struts</groupId> <artifactId>struts2-junit-plugin</artifactId>
<artifactId>struts2-plugins</artifactId> <version>${project.version}</version>
<version>2.3.1-SNAPSHOT</version> <scope>test</scope>
</parent> </dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-portlet-plugin</artifactId> <dependency>
<packaging>jar</packaging> <groupId>javax.servlet</groupId>
<name>Struts 2 Portlet Plugin</name> <artifactId>jsp-api</artifactId>
<scope>provided</scope>
<scm> </dependency>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/portlet/</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/portlet/</developerConnection> <dependency>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/portlet/</url> <groupId>commons-lang</groupId>
</scm> <artifactId>commons-lang</artifactId>
</dependency>
<dependencies>
<dependency> <!-- Velocity -->
<groupId>junit</groupId> <dependency>
<artifactId>junit</artifactId> <groupId>org.apache.velocity</groupId>
<scope>test</scope> <artifactId>velocity</artifactId>
</dependency> <optional>true</optional>
<dependency> </dependency>
<groupId>${project.groupId}</groupId>
<artifactId>struts2-junit-plugin</artifactId> <dependency>
<version>${project.version}</version> <groupId>org.apache.velocity</groupId>
<scope>test</scope> <artifactId>velocity-tools</artifactId>
</dependency> <optional>true</optional>
</dependency>
<dependency>
<groupId>javax.servlet</groupId> <!-- Portlet -->
<artifactId>jsp-api</artifactId> <dependency>
<scope>provided</scope> <groupId>javax.portlet</groupId>
</dependency> <artifactId>portlet-api</artifactId>
<scope>provided</scope>
<dependency> </dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId> <dependency>
</dependency> <groupId>mockobjects</groupId>
<artifactId>mockobjects-jdk1.3-j2ee1.3</artifactId>
<!-- Velocity --> <scope>test</scope>
<dependency> </dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity</artifactId> <dependency>
<optional>true</optional> <groupId>org.easymock</groupId>
</dependency> <artifactId>easymock</artifactId>
<scope>test</scope>
<dependency> </dependency>
<groupId>org.apache.velocity</groupId> <dependency>
<artifactId>velocity-tools</artifactId> <groupId>jmock</groupId>
<optional>true</optional> <artifactId>jmock</artifactId>
</dependency> <scope>test</scope>
</dependency>
<!-- Portlet -->
<dependency> <dependency>
<groupId>javax.portlet</groupId> <groupId>jmock</groupId>
<artifactId>portlet-api</artifactId> <artifactId>jmock-cglib</artifactId>
<scope>provided</scope> <scope>test</scope>
</dependency> </dependency>
<dependency> <dependency>
<groupId>mockobjects</groupId> <groupId>mockobjects</groupId>
<artifactId>mockobjects-jdk1.3-j2ee1.3</artifactId> <artifactId>mockobjects-core</artifactId>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.easymock</groupId> <groupId>log4j</groupId>
<artifactId>easymock</artifactId> <artifactId>log4j</artifactId>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
<dependency>
<groupId>jmock</groupId> <!-- Mocks for unit testing (by Spring) -->
<artifactId>jmock</artifactId> <dependency>
<scope>test</scope> <groupId>org.springframework</groupId>
</dependency> <artifactId>spring-mock</artifactId>
<version>2.0.7</version>
<dependency> <scope>test</scope>
<groupId>jmock</groupId> </dependency>
<artifactId>jmock-cglib</artifactId> <dependency>
<scope>test</scope> <groupId>org.springframework</groupId>
</dependency> <artifactId>spring-portlet</artifactId>
<version>2.0.8</version>
<dependency> <scope>test</scope>
<groupId>mockobjects</groupId> </dependency>
<artifactId>mockobjects-core</artifactId> <dependency>
<scope>test</scope> <groupId>org.springframework</groupId>
</dependency> <artifactId>spring-core</artifactId>
<scope>test</scope>
<dependency> </dependency>
<groupId>log4j</groupId> <dependency>
<artifactId>log4j</artifactId> <groupId>commons-fileupload</groupId>
<scope>test</scope> <artifactId>commons-fileupload</artifactId>
</dependency> <scope>test</scope>
</dependency>
<!-- Mocks for unit testing (by Spring) --> <dependency>
<dependency> <groupId>cglib</groupId>
<groupId>org.springframework</groupId> <artifactId>cglib</artifactId>
<artifactId>spring-mock</artifactId> <scope>test</scope>
<version>2.0.7</version> </dependency>
<scope>test</scope> </dependencies>
</dependency> </project>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-portlet</artifactId>
<version>2.0.8</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>cglib</groupId>
<artifactId>cglib</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</project>
+3 -4
View File
@@ -21,17 +21,16 @@
* under the License. * under the License.
*/ */
--> -->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-rest-plugin</artifactId> <artifactId>struts2-rest-plugin</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
<name>Struts 2 REST Plugin</name> <name>Struts 2 REST Plugin</name>
<properties> <properties>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-sitegraph-plugin</artifactId> <artifactId>struts2-sitegraph-plugin</artifactId>
@@ -34,9 +34,9 @@
<name>Struts 2 Sitegraph Plugin</name> <name>Struts 2 Sitegraph Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/sitegraph/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/sitegraph</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/sitegraph/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/sitegraph</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/sitegraph/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/sitegraph</url>
</scm> </scm>
<build> <build>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-sitemesh-plugin</artifactId> <artifactId>struts2-sitemesh-plugin</artifactId>
@@ -34,9 +34,9 @@
<name>Struts 2 Sitemesh Plugin</name> <name>Struts 2 Sitemesh Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/sitemesh/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/sitemesh</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/sitemesh/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/sitemesh</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/sitemesh/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/sitemesh</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-spring-plugin</artifactId> <artifactId>struts2-spring-plugin</artifactId>
@@ -34,9 +34,9 @@
<name>Struts 2 Spring Plugin</name> <name>Struts 2 Spring Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/spring/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/spring</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/spring/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/spring</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/spring/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/spring</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-struts1-plugin</artifactId> <artifactId>struts2-struts1-plugin</artifactId>
@@ -34,9 +34,9 @@
<name>Struts 2 Struts 1 Plugin</name> <name>Struts 2 Struts 1 Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/struts1/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/struts1</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/struts1/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/struts1</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/struts1/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/struts1</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-testng-plugin</artifactId> <artifactId>struts2-testng-plugin</artifactId>
@@ -34,9 +34,9 @@
<name>Struts 2 TestNG Plugin</name> <name>Struts 2 TestNG Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/testng/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/testng</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/testng/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/testng</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/testng/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/testng</url>
</scm> </scm>
<dependencies> <dependencies>
+4 -4
View File
@@ -26,7 +26,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-plugins</artifactId> <artifactId>struts2-plugins</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-tiles-plugin</artifactId> <artifactId>struts2-tiles-plugin</artifactId>
@@ -34,9 +34,9 @@
<name>Struts 2 Tiles Plugin</name> <name>Struts 2 Tiles Plugin</name>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/tiles/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/tiles</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/plugins/tiles/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/tiles</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk/plugins/tiles/</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2/plugins/tiles</url>
</scm> </scm>
<dependencies> <dependencies>
+7 -8
View File
@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
@@ -11,7 +10,7 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-parent</artifactId> <artifactId>struts2-parent</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
<packaging>pom</packaging> <packaging>pom</packaging>
<name>Struts 2</name> <name>Struts 2</name>
<url>http://struts.apache.org/struts2</url> <url>http://struts.apache.org/struts2</url>
@@ -30,9 +29,9 @@
--> -->
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2</developerConnection>
<url>http://svn.apache.org/viewcvs.cgi/struts/struts2/trunk</url> <url>http://svn.apache.org/viewcvs.cgi/struts/struts2/tags/struts2-parent-2.3.1.2</url>
</scm> </scm>
<issueManagement> <issueManagement>
@@ -74,7 +73,7 @@
<name>The Apache Software License, Version 2.0</name> <name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution> <distribution>repo</distribution>
<comments/> <comments />
</license> </license>
</licenses> </licenses>
@@ -86,7 +85,7 @@
<properties> <properties>
<currentVersion>${project.version}</currentVersion> <currentVersion>${project.version}</currentVersion>
<struts2.springPlatformVersion>3.0.5.RELEASE</struts2.springPlatformVersion> <struts2.springPlatformVersion>3.0.5.RELEASE</struts2.springPlatformVersion>
<ognl.version>3.0.3</ognl.version> <ognl.version>3.0.4</ognl.version>
<asm.version>3.3</asm.version> <asm.version>3.3</asm.version>
<tiles.version>2.0.6</tiles.version> <tiles.version>2.0.6</tiles.version>
</properties> </properties>
+4 -4
View File
@@ -5,7 +5,7 @@
<parent> <parent>
<groupId>org.apache.struts</groupId> <groupId>org.apache.struts</groupId>
<artifactId>struts2-parent</artifactId> <artifactId>struts2-parent</artifactId>
<version>2.3.1-SNAPSHOT</version> <version>2.3.1.2</version>
</parent> </parent>
<groupId>org.apache.struts.xwork</groupId> <groupId>org.apache.struts.xwork</groupId>
@@ -15,9 +15,9 @@
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/trunk/xwork-core/</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/xwork-core</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/trunk/xwork-core/</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/xwork-core</developerConnection>
<url>http://svn.apache.org/repos/asf/struts/struts2/trunk/xwork-core/</url> <url>http://svn.apache.org/repos/asf/struts/struts2/tags/struts2-parent-2.3.1.2/xwork-core</url>
</scm> </scm>
<properties> <properties>
@@ -17,11 +17,17 @@ package com.opensymphony.xwork2.config.entities;
import com.opensymphony.xwork2.util.location.Located; import com.opensymphony.xwork2.util.location.Located;
import com.opensymphony.xwork2.util.location.Location; import com.opensymphony.xwork2.util.location.Location;
import org.apache.commons.lang.StringUtils;
import java.io.Serializable; import java.io.Serializable;
import java.util.*; import java.util.ArrayList;
import java.util.Collection;
import org.apache.commons.lang.StringUtils; import java.util.Collections;
import java.util.HashSet;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
/** /**
@@ -218,6 +224,7 @@ public class ActionConfig extends Located implements Serializable {
public Builder(ActionConfig toClone) { public Builder(ActionConfig toClone) {
target = new ActionConfig(toClone); target = new ActionConfig(toClone);
addAllowedMethod(toClone.getAllowedMethods());
} }
public Builder(String packageName, String name, String className) { public Builder(String packageName, String name, String className) {
@@ -21,10 +21,10 @@ import com.opensymphony.xwork2.ValidationAware;
import com.opensymphony.xwork2.conversion.impl.InstantiatingNullHandler; import com.opensymphony.xwork2.conversion.impl.InstantiatingNullHandler;
import com.opensymphony.xwork2.conversion.impl.XWorkConverter; import com.opensymphony.xwork2.conversion.impl.XWorkConverter;
import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.inject.Inject;
import com.opensymphony.xwork2.util.ArrayUtils;
import com.opensymphony.xwork2.util.ClearableValueStack; import com.opensymphony.xwork2.util.ClearableValueStack;
import com.opensymphony.xwork2.util.LocalizedTextUtil; import com.opensymphony.xwork2.util.LocalizedTextUtil;
import com.opensymphony.xwork2.util.MemberAccessValueStack; import com.opensymphony.xwork2.util.MemberAccessValueStack;
import com.opensymphony.xwork2.util.TextParseUtil;
import com.opensymphony.xwork2.util.ValueStack; import com.opensymphony.xwork2.util.ValueStack;
import com.opensymphony.xwork2.util.ValueStackFactory; import com.opensymphony.xwork2.util.ValueStackFactory;
import com.opensymphony.xwork2.util.logging.Logger; import com.opensymphony.xwork2.util.logging.Logger;
@@ -135,7 +135,7 @@ public class ParametersInterceptor extends MethodFilterInterceptor {
static boolean devMode = false; static boolean devMode = false;
// Allowed names of parameters // Allowed names of parameters
private String acceptedParamNames = "[a-zA-Z0-9\\.\\]\\[\\(\\)_'\\s]+"; private String acceptedParamNames = "\\w+((\\.\\w+)|(\\[\\d+\\])|(\\(\\d+\\))|(\\['\\w+'\\])|(\\('\\w+'\\)))*";
private Pattern acceptedPattern = Pattern.compile(acceptedParamNames); private Pattern acceptedPattern = Pattern.compile(acceptedParamNames);
private ValueStackFactory valueStackFactory; private ValueStackFactory valueStackFactory;
@@ -151,7 +151,7 @@ public class ParametersInterceptor extends MethodFilterInterceptor {
} }
public void setAcceptParamNames(String commaDelim) { public void setAcceptParamNames(String commaDelim) {
Collection<String> acceptPatterns = asCollection(commaDelim); Collection<String> acceptPatterns = ArrayUtils.asCollection(commaDelim);
if (acceptPatterns != null) { if (acceptPatterns != null) {
acceptParams = new HashSet<Pattern>(); acceptParams = new HashSet<Pattern>();
for (String pattern : acceptPatterns) { for (String pattern : acceptPatterns) {
@@ -289,7 +289,7 @@ public class ParametersInterceptor extends MethodFilterInterceptor {
String name = entry.getKey(); String name = entry.getKey();
Object value = entry.getValue(); Object value = entry.getValue();
try { try {
newStack.setValue(name, value); newStack.setParameter(name, value);
} catch (RuntimeException e) { } catch (RuntimeException e) {
if (devMode) { if (devMode) {
String developerNotification = LocalizedTextUtil.findText(ParametersInterceptor.class, "devmode.notification", ActionContext.getContext().getLocale(), "Developer Notification:\n{0}", new Object[]{ String developerNotification = LocalizedTextUtil.findText(ParametersInterceptor.class, "devmode.notification", ActionContext.getContext().getLocale(), "Developer Notification:\n{0}", new Object[]{
@@ -413,7 +413,7 @@ public class ParametersInterceptor extends MethodFilterInterceptor {
* @param commaDelim A comma-delimited list of regular expressions * @param commaDelim A comma-delimited list of regular expressions
*/ */
public void setExcludeParams(String commaDelim) { public void setExcludeParams(String commaDelim) {
Collection<String> excludePatterns = asCollection(commaDelim); Collection<String> excludePatterns = ArrayUtils.asCollection(commaDelim);
if (excludePatterns != null) { if (excludePatterns != null) {
excludeParams = new HashSet<Pattern>(); excludeParams = new HashSet<Pattern>();
for (String pattern : excludePatterns) { for (String pattern : excludePatterns) {
@@ -422,17 +422,4 @@ public class ParametersInterceptor extends MethodFilterInterceptor {
} }
} }
/**
* Return a collection from the comma delimited String.
*
* @param commaDelim the comma delimited String.
* @return A collection from the comma delimited String. Returns <tt>null</tt> if the string is empty.
*/
private Collection<String> asCollection(String commaDelim) {
if (commaDelim == null || commaDelim.trim().length() == 0) {
return null;
}
return TextParseUtil.commaDelimitedStringToSet(commaDelim);
}
} }
@@ -206,7 +206,23 @@ public class OgnlUtil {
* Ideally, this should be handled by OGNL directly. * Ideally, this should be handled by OGNL directly.
*/ */
public void setValue(String name, Map<String, Object> context, Object root, Object value) throws OgnlException { public void setValue(String name, Map<String, Object> context, Object root, Object value) throws OgnlException {
Ognl.setValue(compile(name), context, root, value); setValue(name, context, root, value, true);
}
protected void setValue(String name, Map<String, Object> context, Object root, Object value, boolean evalName) throws OgnlException {
Object tree = compile(name);
if (!evalName && isEvalExpression(tree, context)) {
throw new OgnlException("Eval expression cannot be used as parameter name");
}
Ognl.setValue(tree, context, root, value);
}
private boolean isEvalExpression(Object tree, Map<String, Object> context) throws OgnlException {
if (tree instanceof SimpleNode) {
SimpleNode node = (SimpleNode) tree;
return node.isEvalChain((OgnlContext) context);
}
return false;
} }
public Object getValue(String name, Map<String, Object> context, Object root) throws OgnlException { public Object getValue(String name, Map<String, Object> context, Object root) throws OgnlException {
@@ -245,7 +261,7 @@ public class OgnlUtil {
public void copy(Object from, Object to, Map<String, Object> context, Collection<String> exclusions, Collection<String> inclusions) { public void copy(Object from, Object to, Map<String, Object> context, Collection<String> exclusions, Collection<String> inclusions) {
if (from == null || to == null) { if (from == null || to == null) {
if (LOG.isWarnEnabled()) { if (LOG.isWarnEnabled()) {
LOG.warn("Attempting to copy from or to a null source. This is illegal and is bein skipped. This may be due to an error in an OGNL expression, action chaining, or some other event."); LOG.warn("Attempting to copy from or to a null source. This is illegal and is bein skipped. This may be due to an error in an OGNL expression, action chaining, or some other event.");
} }
return; return;
@@ -284,7 +300,7 @@ public class OgnlUtil {
copy = false; copy = false;
} }
if (copy == true) { if (copy) {
PropertyDescriptor toPd = toPdHash.get(fromPd.getName()); PropertyDescriptor toPd = toPdHash.get(fromPd.getName());
if ((toPd != null) && (toPd.getWriteMethod() != null)) { if ((toPd != null) && (toPd.getWriteMethod() != null)) {
try { try {
@@ -144,6 +144,15 @@ public class OgnlValueStack implements Serializable, ValueStack, ClearableValueS
return root; return root;
} }
/**
* @see com.opensymphony.xwork2.util.ValueStack#setParameter(String, Object)
*/
public void setParameter(String expr, Object value) {
setValue(expr, value, devMode, false);
}
/**
/** /**
* @see com.opensymphony.xwork2.util.ValueStack#setValue(java.lang.String, java.lang.Object) * @see com.opensymphony.xwork2.util.ValueStack#setValue(java.lang.String, java.lang.Object)
*/ */
@@ -155,9 +164,13 @@ public class OgnlValueStack implements Serializable, ValueStack, ClearableValueS
* @see com.opensymphony.xwork2.util.ValueStack#setValue(java.lang.String, java.lang.Object, boolean) * @see com.opensymphony.xwork2.util.ValueStack#setValue(java.lang.String, java.lang.Object, boolean)
*/ */
public void setValue(String expr, Object value, boolean throwExceptionOnFailure) { public void setValue(String expr, Object value, boolean throwExceptionOnFailure) {
setValue(expr, value, throwExceptionOnFailure, true);
}
private void setValue(String expr, Object value, boolean throwExceptionOnFailure, boolean evalExpression) {
Map<String, Object> context = getContext(); Map<String, Object> context = getContext();
try { try {
trySetValue(expr, value, throwExceptionOnFailure, context); trySetValue(expr, value, throwExceptionOnFailure, context, evalExpression);
} catch (OgnlException e) { } catch (OgnlException e) {
handleOgnlException(expr, value, throwExceptionOnFailure, e); handleOgnlException(expr, value, throwExceptionOnFailure, e);
} catch (RuntimeException re) { //XW-281 } catch (RuntimeException re) { //XW-281
@@ -167,10 +180,10 @@ public class OgnlValueStack implements Serializable, ValueStack, ClearableValueS
} }
} }
private void trySetValue(String expr, Object value, boolean throwExceptionOnFailure, Map<String, Object> context) throws OgnlException { private void trySetValue(String expr, Object value, boolean throwExceptionOnFailure, Map<String, Object> context, boolean evalExpression) throws OgnlException {
context.put(XWorkConverter.CONVERSION_PROPERTY_FULLNAME, expr); context.put(XWorkConverter.CONVERSION_PROPERTY_FULLNAME, expr);
context.put(REPORT_ERRORS_ON_NO_PROP, (throwExceptionOnFailure) ? Boolean.TRUE : Boolean.FALSE); context.put(REPORT_ERRORS_ON_NO_PROP, (throwExceptionOnFailure) ? Boolean.TRUE : Boolean.FALSE);
ognlUtil.setValue(expr, context, root, value); ognlUtil.setValue(expr, context, root, value, evalExpression);
} }
private void cleanUpContext(Map<String, Object> context) { private void cleanUpContext(Map<String, Object> context) {
@@ -15,6 +15,11 @@
*/ */
package com.opensymphony.xwork2.util; package com.opensymphony.xwork2.util;
import java.util.Collection;
import java.util.Collections;
import java.util.HashSet;
import java.util.Set;
/** /**
* @author Dan Oxlade, dan d0t oxlade at gmail d0t c0m * @author Dan Oxlade, dan d0t oxlade at gmail d0t c0m
*/ */
@@ -28,4 +33,22 @@ public class ArrayUtils {
return !isEmpty(array); return !isEmpty(array);
} }
/**
* Return a collection from the comma delimited String.
*
* @param commaDelim the comma delimited String.
* @return A collection from the comma delimited String. Returns <tt>null</tt> if the string is empty.
*/
public static Collection<String> asCollection(String commaDelim) {
if (commaDelim == null || commaDelim.trim().length() == 0) {
return null;
}
return TextParseUtil.commaDelimitedStringToSet(commaDelim);
}
public static <T> Set<T> asSet(T... element) {
HashSet<T> elements = new HashSet<T>(element.length);
Collections.addAll(elements, element);
return elements;
}
} }
@@ -74,6 +74,14 @@ public interface ValueStack {
*/ */
public abstract void setValue(String expr, Object value); public abstract void setValue(String expr, Object value);
/**
* Attempts to set a property on a bean in the stack with the given expression using the default search order.
* N.B.: unlike #setValue(String,Object) it doesn't allow eval expression.
* @param expr the expression defining the path to the property to be set.
* @param value the value to be set into the named property
*/
void setParameter(String expr, Object value);
/** /**
* Attempts to set a property on a bean in the stack with the given expression using the default search order. * Attempts to set a property on a bean in the stack with the given expression using the default search order.
* *
@@ -50,6 +50,10 @@ public class StubValueStack implements ValueStack {
ctx.put(expr, value); ctx.put(expr, value);
} }
public void setParameter(String expr, Object value) {
throw new UnsupportedOperationException("not implemented");
}
public void setValue(String expr, Object value, boolean throwExceptionOnFailure) { public void setValue(String expr, Object value, boolean throwExceptionOnFailure) {
ctx.put(expr, value); ctx.put(expr, value);
} }
@@ -196,11 +196,7 @@ public class ParametersInterceptorTest extends XWorkTestCase {
ActionProxy proxy = actionProxyFactory.createActionProxy("", MockConfigurationProvider.PARAM_INTERCEPTOR_ACTION_NAME, extraContext); ActionProxy proxy = actionProxyFactory.createActionProxy("", MockConfigurationProvider.PARAM_INTERCEPTOR_ACTION_NAME, extraContext);
proxy.execute(); proxy.execute();
Map<String, String> existingMap = ((SimpleAction) proxy.getAction()).getTheProtectedMap(); Map<String, String> existingMap = ((SimpleAction) proxy.getAction()).getTheProtectedMap();
assertEquals(4, existingMap.size()); assertEquals(0, existingMap.size());
assertEquals("test1", existingMap.get("p0 p1"));
assertEquals("test2", existingMap.get("p0p1 "));
assertEquals("test3", existingMap.get(" p0p1 "));
assertEquals("test4", existingMap.get(" p0 p1 "));
} }
public void testExcludedTrickyParameters() throws Exception { public void testExcludedTrickyParameters() throws Exception {
@@ -513,6 +509,10 @@ public class ParametersInterceptorTest extends XWorkTestCase {
public void setValue(String expr, Object value) { public void setValue(String expr, Object value) {
actual.put(expr, value); actual.put(expr, value);
} }
@Override
public void setParameter(String expr, Object value) {
actual.put(expr, value);
}
}; };
container.inject(stack); container.inject(stack);
return stack; return stack;