Author: lukaszlenart
Date: Tue Dec 28 20:48:55 2010
New Revision: 1053429
URL: http://svn.apache.org/viewvc?rev=1053429&view=rev
Log:
Merges branch 2.2.1.1 back to trunk
Modified:
struts/struts2/trunk/ (props changed)
struts/struts2/trunk/apps/ (props changed)
struts/struts2/trunk/apps/jboss-blank/pom.xml
struts/struts2/trunk/apps/mailreader/pom.xml
struts/struts2/trunk/assembly/ (props changed)
struts/struts2/trunk/assembly/pom.xml
struts/struts2/trunk/bundles/ (props changed)
struts/struts2/trunk/core/pom.xml
struts/struts2/trunk/plugins/ (props changed)
struts/struts2/trunk/plugins/convention/pom.xml
struts/struts2/trunk/plugins/pom.xml
struts/struts2/trunk/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionMapper.java
struts/struts2/trunk/plugins/rest/src/test/java/org/apache/struts2/rest/RestActionMapperTest.java
struts/struts2/trunk/pom.xml
struts/struts2/trunk/xwork-core/pom.xml
struts/struts2/trunk/xwork-core/test-output/ (props changed)
Propchange: struts/struts2/trunk/
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Tue Dec 28 20:48:55 2010
@@ -0,0 +1,2 @@
+/struts/struts2/branches/STRUTS_2_2_1_1:1037870-1053416
+/struts/struts2/tags/STRUTS_2_2_1:965062-1037869
Propchange: struts/struts2/trunk/apps/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Tue Dec 28 20:48:55 2010
@@ -1,7 +1,6 @@
-.classpath
-.project
-.settings
*.ipr
-*.iml
*.iws
+.classpath
+.project
target
+.settings
Modified: struts/struts2/trunk/apps/jboss-blank/pom.xml
URL:
http://svn.apache.org/viewvc/struts/struts2/trunk/apps/jboss-blank/pom.xml?rev=1053429&r1=1053428&r2=1053429&view=diff
==============================================================================
--- struts/struts2/trunk/apps/jboss-blank/pom.xml (original)
+++ struts/struts2/trunk/apps/jboss-blank/pom.xml Tue Dec 28 20:48:55 2010
@@ -1,3 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+-->
<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>
Modified: struts/struts2/trunk/apps/mailreader/pom.xml
URL:
http://svn.apache.org/viewvc/struts/struts2/trunk/apps/mailreader/pom.xml?rev=1053429&r1=1053428&r2=1053429&view=diff
==============================================================================
--- struts/struts2/trunk/apps/mailreader/pom.xml (original)
+++ struts/struts2/trunk/apps/mailreader/pom.xml Tue Dec 28 20:48:55 2010
@@ -44,7 +44,6 @@
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
- <version>2.4</version>
<scope>provided</scope>
</dependency>
Propchange: struts/struts2/trunk/assembly/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Tue Dec 28 20:48:55 2010
@@ -1,9 +1,8 @@
-.classpath
-.project
-.settings
*.ipr
-*.iml
*.iws
-target
+.classpath
+.project
2.x
+target
WW
+.settings
Modified: struts/struts2/trunk/assembly/pom.xml
URL:
http://svn.apache.org/viewvc/struts/struts2/trunk/assembly/pom.xml?rev=1053429&r1=1053428&r2=1053429&view=diff
==============================================================================
--- struts/struts2/trunk/assembly/pom.xml (original)
+++ struts/struts2/trunk/assembly/pom.xml Tue Dec 28 20:48:55 2010
@@ -198,6 +198,7 @@
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>dependency-maven-plugin</artifactId>
+ <version>1.0</version>
<executions>
<execution>
<id>copy-war</id>
Propchange: struts/struts2/trunk/bundles/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Tue Dec 28 20:48:55 2010
@@ -1,6 +1,5 @@
-target
-.*
-*.iml
-*.ipr
*.idea
+*.ipr
*.iws
+target
+.*
Modified: struts/struts2/trunk/core/pom.xml
URL:
http://svn.apache.org/viewvc/struts/struts2/trunk/core/pom.xml?rev=1053429&r1=1053428&r2=1053429&view=diff
==============================================================================
--- struts/struts2/trunk/core/pom.xml (original)
+++ struts/struts2/trunk/core/pom.xml Tue Dec 28 20:48:55 2010
@@ -210,7 +210,7 @@
<dependency>
<groupId>org.apache.struts.xwork</groupId>
<artifactId>xwork-core</artifactId>
- <version>${version}</version>
+ <version>${project.version}</version>
</dependency>
<!--<dependency>-->
Propchange: struts/struts2/trunk/plugins/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Tue Dec 28 20:48:55 2010
@@ -1,7 +1,6 @@
-.classpath
-.project
-.settings
*.ipr
-*.iml
*.iws
+.classpath
+.project
target
+.settings
Modified: struts/struts2/trunk/plugins/convention/pom.xml
URL:
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/convention/pom.xml?rev=1053429&r1=1053428&r2=1053429&view=diff
==============================================================================
--- struts/struts2/trunk/plugins/convention/pom.xml (original)
+++ struts/struts2/trunk/plugins/convention/pom.xml Tue Dec 28 20:48:55 2010
@@ -50,30 +50,25 @@
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
- <version>3.8.1</version>
</dependency>
<dependency>
<groupId>org.easymock</groupId>
<artifactId>easymock</artifactId>
- <version>2.4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.easymock</groupId>
<artifactId>easymockclassextension</artifactId>
- <version>2.4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
- <version>2.4</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jsp-api</artifactId>
- <version>2.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
Modified: struts/struts2/trunk/plugins/pom.xml
URL:
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/pom.xml?rev=1053429&r1=1053428&r2=1053429&view=diff
==============================================================================
--- struts/struts2/trunk/plugins/pom.xml (original)
+++ struts/struts2/trunk/plugins/pom.xml Tue Dec 28 20:48:55 2010
@@ -80,18 +80,14 @@
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>compile</scope>
- <version>3.8.2</version>
</dependency>
-
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
- <version>2.4</version>
<scope>provided</scope>
</dependency>
-
</dependencies>
<reporting>
Modified:
struts/struts2/trunk/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionMapper.java
URL:
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionMapper.java?rev=1053429&r1=1053428&r2=1053429&view=diff
==============================================================================
---
struts/struts2/trunk/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionMapper.java
(original)
+++
struts/struts2/trunk/plugins/rest/src/main/java/org/apache/struts2/rest/RestActionMapper.java
Tue Dec 28 20:48:55 2010
@@ -109,6 +109,7 @@ public class RestActionMapper extends De
private String optionsMethodName = "options";
private String postContinueMethodName = "createContinue";
private String putContinueMethodName = "updateContinue";
+ private boolean allowDynamicMethodCalls = true;
public RestActionMapper() {
}
@@ -172,6 +173,11 @@ public class RestActionMapper extends De
this.putContinueMethodName = putContinueMethodName;
}
+ @Inject(required = false, value =
StrutsConstants.STRUTS_ENABLE_DYNAMIC_METHOD_INVOCATION)
+ public void setAllowDynamicMethodCalls(String allowDynamicMethodCalls) {
+ this.allowDynamicMethodCalls =
"true".equalsIgnoreCase(allowDynamicMethodCalls);
+ }
+
public ActionMapping getMapping(HttpServletRequest request,
ConfigurationManager configManager) {
ActionMapping mapping = new ActionMapping();
@@ -191,12 +197,7 @@ public class RestActionMapper extends De
}
// handle "name!method" convention.
- String name = mapping.getName();
- int exclamation = name.lastIndexOf("!");
- if (exclamation != -1) {
- mapping.setName(name.substring(0, exclamation));
- mapping.setMethod(name.substring(exclamation + 1));
- }
+ handleDynamicMethodInvocation(mapping, mapping.getName());
String fullName = mapping.getName();
// Only try something if the action name is specified
@@ -204,7 +205,7 @@ public class RestActionMapper extends De
// cut off any ;jsessionid= type appendix but allow the rails-like
;edit
int scPos = fullName.indexOf(';');
- if (scPos > -1 && !"edit".equals(fullName.substring(scPos+1))) {
+ if (scPos > -1 && !"edit".equals(fullName.substring(scPos + 1))) {
fullName = fullName.substring(0, scPos);
}
@@ -215,11 +216,11 @@ public class RestActionMapper extends De
// fun trickery to parse 'actionName/id/methodName' in the
case of 'animals/dog/edit'
int prevSlashPos = fullName.lastIndexOf('/', lastSlashPos - 1);
if (prevSlashPos > -1) {
- mapping.setMethod(fullName.substring(lastSlashPos+1));
+ mapping.setMethod(fullName.substring(lastSlashPos + 1));
fullName = fullName.substring(0, lastSlashPos);
lastSlashPos = prevSlashPos;
}
- id = fullName.substring(lastSlashPos+1);
+ id = fullName.substring(lastSlashPos + 1);
}
@@ -293,7 +294,19 @@ public class RestActionMapper extends De
return mapping;
}
-
+
+ private void handleDynamicMethodInvocation(ActionMapping mapping, String
name) {
+ int exclamation = name.lastIndexOf("!");
+ if (exclamation != -1) {
+ mapping.setName(name.substring(0, exclamation));
+ if (allowDynamicMethodCalls) {
+ mapping.setMethod(name.substring(exclamation + 1));
+ } else {
+ mapping.setMethod(null);
+ }
+ }
+ }
+
/**
* Parses the name and namespace from the uri. Uses the configured
package
* namespaces to determine the name and id parameter, to be parsed later.
Modified:
struts/struts2/trunk/plugins/rest/src/test/java/org/apache/struts2/rest/RestActionMapperTest.java
URL:
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/rest/src/test/java/org/apache/struts2/rest/RestActionMapperTest.java?rev=1053429&r1=1053428&r2=1053429&view=diff
==============================================================================
---
struts/struts2/trunk/plugins/rest/src/test/java/org/apache/struts2/rest/RestActionMapperTest.java
(original)
+++
struts/struts2/trunk/plugins/rest/src/test/java/org/apache/struts2/rest/RestActionMapperTest.java
Tue Dec 28 20:48:55 2010
@@ -35,6 +35,7 @@ public class RestActionMapperTest extend
private ConfigurationManager configManager;
private Configuration config;
private MockHttpServletRequest req;
+ private String allowDynamicMethodInvocation = "true";
protected void setUp() throws Exception {
super.setUp();
@@ -89,7 +90,7 @@ public class RestActionMapperTest extend
assertEquals("/animals", mapping.getNamespace());
assertEquals("dog", mapping.getName());
assertEquals("destroy", mapping.getMethod());
- assertEquals("fido", ((String[])mapping.getParams().get("id"))[0]);
+ assertEquals("fido", ((String[]) mapping.getParams().get("id"))[0]);
}
public void testPutMapping() throws Exception {
@@ -102,7 +103,7 @@ public class RestActionMapperTest extend
assertEquals("/animals", mapping.getNamespace());
assertEquals("dog", mapping.getName());
assertEquals("update", mapping.getMethod());
- assertEquals("fido", ((String[])mapping.getParams().get("id"))[0]);
+ assertEquals("fido", ((String[]) mapping.getParams().get("id"))[0]);
}
public void testGetIdMapping() throws Exception {
@@ -115,7 +116,7 @@ public class RestActionMapperTest extend
assertEquals("/animals", mapping.getNamespace());
assertEquals("dog", mapping.getName());
assertEquals("show", mapping.getMethod());
- assertEquals("fido", ((String[])mapping.getParams().get("id"))[0]);
+ assertEquals("fido", ((String[]) mapping.getParams().get("id"))[0]);
}
public void testNewMapping() throws Exception {
@@ -139,7 +140,7 @@ public class RestActionMapperTest extend
assertEquals("/animals", mapping.getNamespace());
assertEquals("dog", mapping.getName());
- assertEquals("fido", ((String[])mapping.getParams().get("id"))[0]);
+ assertEquals("fido", ((String[]) mapping.getParams().get("id"))[0]);
assertEquals("edit", mapping.getMethod());
}
@@ -152,7 +153,7 @@ public class RestActionMapperTest extend
assertEquals("/animals", mapping.getNamespace());
assertEquals("dog", mapping.getName());
- assertEquals("fido", ((String[])mapping.getParams().get("id"))[0]);
+ assertEquals("fido", ((String[]) mapping.getParams().get("id"))[0]);
assertEquals("edit", mapping.getMethod());
}
@@ -165,7 +166,7 @@ public class RestActionMapperTest extend
assertEquals("/animals", mapping.getNamespace());
assertEquals("dog", mapping.getName());
- assertEquals("fido", ((String[])mapping.getParams().get("id"))[0]);
+ assertEquals("fido", ((String[]) mapping.getParams().get("id"))[0]);
assertEquals("show", mapping.getMethod());
}
@@ -175,23 +176,79 @@ public class RestActionMapperTest extend
tryUri("foo", "", "foo");
tryUri("/", "/", "");
}
-
+
public void testParseNameAndNamespaceWithNamespaces() {
tryUri("/my/foo/23", "/my", "foo/23");
tryUri("/my/foo/", "/my", "foo/");
}
-
+
public void testParseNameAndNamespaceWithEdit() {
tryUri("/my/foo/23;edit", "/my", "foo/23;edit");
}
+
+ public void testShouldAllowExclamation() throws Exception {
+ req.setRequestURI("/myapp/animals/dog/fido!edit");
+ req.setServletPath("/animals/dog/fido!edit");
+ req.setMethod("GET");
+
+ ActionMapping mapping = mapper.getMapping(req, configManager);
+
+ assertEquals("/animals", mapping.getNamespace());
+ assertEquals("dog", mapping.getName());
+ assertEquals("fido", ((String[])mapping.getParams().get("id"))[0]);
+ assertEquals("edit", mapping.getMethod());
+ }
+
+ public void testShouldBlockDynamicMethodInvocationAnsUseShow() throws
Exception {
+ req.setRequestURI("/myapp/animals/dog/fido!edit");
+ req.setServletPath("/animals/dog/fido!edit");
+ req.setMethod("GET");
+
+ mapper.setAllowDynamicMethodCalls("false");
+ ActionMapping mapping = mapper.getMapping(req, configManager);
+
+ assertEquals("/animals", mapping.getNamespace());
+ assertEquals("dog", mapping.getName());
+ assertEquals("fido", ((String[])mapping.getParams().get("id"))[0]);
+ assertEquals("show", mapping.getMethod());
+ }
+
+ public void testShouldBlockDynamicMethodInvocationAnsUseDestroy() throws
Exception {
+ req.setRequestURI("/myapp/animals/dog/fido!destroy");
+ req.setServletPath("/animals/dog/fido!destroy");
+ req.setMethod("DELETE");
+
+ mapper.setAllowDynamicMethodCalls("false");
+ ActionMapping mapping = mapper.getMapping(req, configManager);
+
+ assertEquals("/animals", mapping.getNamespace());
+ assertEquals("dog", mapping.getName());
+ assertEquals("fido", ((String[])mapping.getParams().get("id"))[0]);
+ assertEquals("destroy", mapping.getMethod());
+ }
+
+ public void testShouldBlockDynamicMethodInvocationAndUseUpdate() throws
Exception {
+ req.setRequestURI("/myapp/animals/dog/fido!update");
+ req.setServletPath("/animals/dog/fido!update");
+ req.setMethod("PUT");
+
+ mapper.setAllowDynamicMethodCalls("false");
+ ActionMapping mapping = mapper.getMapping(req, configManager);
+
+ assertEquals("/animals", mapping.getNamespace());
+ assertEquals("dog", mapping.getName());
+ assertEquals("fido", ((String[])mapping.getParams().get("id"))[0]);
+ assertEquals("update", mapping.getMethod());
+ }
private void tryUri(String uri, String expectedNamespace, String
expectedName) {
ActionMapping mapping = new ActionMapping();
+ mapper.setAllowDynamicMethodCalls(allowDynamicMethodInvocation);
mapper.parseNameAndNamespace(uri, mapping, configManager);
assertEquals(expectedName, mapping.getName());
assertEquals(expectedNamespace, mapping.getNamespace());
}
-
+
public void testOptionsMapping() throws Exception {
req.setRequestURI("/myapp/animals/dog");
req.setServletPath("/animals/dog");
@@ -203,7 +260,7 @@ public class RestActionMapperTest extend
assertEquals("dog", mapping.getName());
assertEquals("options", mapping.getMethod());
}
-
+
public void testPostContinueMapping() throws Exception {
req.setRequestURI("/myapp/animals/dog");
req.setServletPath("/animals/dog");
@@ -216,7 +273,7 @@ public class RestActionMapperTest extend
assertEquals("dog", mapping.getName());
assertEquals("createContinue", mapping.getMethod());
}
-
+
public void testPutContinueMapping() throws Exception {
req.setRequestURI("/myapp/animals/dog/fido");
req.setServletPath("/animals/dog/fido");
@@ -228,7 +285,23 @@ public class RestActionMapperTest extend
assertEquals("/animals", mapping.getNamespace());
assertEquals("dog", mapping.getName());
assertEquals("updateContinue", mapping.getMethod());
- assertEquals("fido", ((String[])mapping.getParams().get("id"))[0]);
+ assertEquals("fido", ((String[]) mapping.getParams().get("id"))[0]);
+ }
+
+ public void testDynamicMethodInvocation() throws Exception {
+ // given
+ req.setRemoteAddr("/myapp/animals/dog/23!edit");
+ req.setServletPath("/animals/dog/23!edit");
+ req.setMethod("GET");
+
+ // when
+ ActionMapping actionMapping = mapper.getMapping(req, configManager);
+
+ // then
+ assertEquals("dog", actionMapping.getName());
+ assertEquals("edit", actionMapping.getMethod());
+ assertEquals("/animals", actionMapping.getNamespace());
+ assertEquals("23", ((String[])
actionMapping.getParams().get("id"))[0]);
}
}
Modified: struts/struts2/trunk/pom.xml
URL:
http://svn.apache.org/viewvc/struts/struts2/trunk/pom.xml?rev=1053429&r1=1053428&r2=1053429&view=diff
==============================================================================
--- struts/struts2/trunk/pom.xml (original)
+++ struts/struts2/trunk/pom.xml Tue Dec 28 20:48:55 2010
@@ -1,10 +1,10 @@
<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">
- <parent>
- <groupId>org.apache.struts</groupId>
- <artifactId>struts-master</artifactId>
- <version>7</version>
- </parent>
+ <parent>
+ <groupId>org.apache.struts</groupId>
+ <artifactId>struts-master</artifactId>
+ <version>8</version>
+ </parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.struts</groupId>
@@ -155,13 +155,13 @@
</plugin>
<plugin>
<artifactId>maven-site-plugin</artifactId>
- <version>2.0-beta-7</version>
+ <version>2.1.1</version>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
- <source>1.5</source>
- <target>1.5</target>
+ <source>1.5</source>
+ <target>1.5</target>
</configuration>
</plugin>
<plugin>
@@ -178,35 +178,48 @@
</configuration>
</plugin>
<plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-release-plugin</artifactId>
- <configuration>
- <preparationGoals>clean verify
install</preparationGoals>
- </configuration>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-war-plugin</artifactId>
+ <version>2.1</version>
</plugin>
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <version>2.1.0</version>
+ </plugin>
+
</plugins>
</pluginManagement>
<plugins>
<plugin>
- <artifactId>maven-jar-plugin</artifactId>
- <configuration>
- <archive>
-
<manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
- </archive>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- <executions>
- <execution>
- <id>bundle-manifest</id>
- <phase>process-classes</phase>
- <goals>
- <goal>manifest</goal>
- </goals>
- </execution>
- </executions>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-release-plugin</artifactId>
+ <version>2.1</version>
+ <configuration>
+ <releaseProfiles>release</releaseProfiles>
+ <goals>deploy</goals>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-jar-plugin</artifactId>
+ <configuration>
+ <archive>
+
<manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
+ </archive>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>bundle-manifest</id>
+ <phase>process-classes</phase>
+ <goals>
+ <goal>manifest</goal>
+ </goals>
+ </execution>
+ </executions>
</plugin>
<!--
<plugin>
@@ -291,7 +304,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-project-info-reports-plugin</artifactId>
- </plugin>
+ </plugin>
<plugin>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.2</version>
@@ -341,23 +354,56 @@
</reporting>
<dependencyManagement>
- <dependencies>
- <dependency>
- <groupId>org.apache.struts</groupId>
- <artifactId>struts-annotations</artifactId>
- <version>1.0.5</version>
- <scope>compile</scope>
- <optional>true</optional>
- </dependency>
- </dependencies>
- </dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.struts</groupId>
+ <artifactId>struts-annotations</artifactId>
+ <version>1.0.5</version>
+ <scope>compile</scope>
+ <optional>true</optional>
+ </dependency>
+
+ <dependency>
+ <groupId>javassist</groupId>
+ <artifactId>javassist</artifactId>
+ <version>3.8.0.GA</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.8.2</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.easymock</groupId>
+ <artifactId>easymock</artifactId>
+ <version>2.4</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.easymock</groupId>
+ <artifactId>easymockclassextension</artifactId>
+ <version>2.4</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ <version>2.4</version>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>jsp-api</artifactId>
+ <version>2.0</version>
+ <scope>provided</scope>
+ </dependency>
- <dependencies>
- <dependency>
- <groupId>javassist</groupId>
- <artifactId>javassist</artifactId>
- <version>3.8.0.GA</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
+ </dependencies>
+ </dependencyManagement>
</project>
Modified: struts/struts2/trunk/xwork-core/pom.xml
URL:
http://svn.apache.org/viewvc/struts/struts2/trunk/xwork-core/pom.xml?rev=1053429&r1=1053428&r2=1053429&view=diff
==============================================================================
--- struts/struts2/trunk/xwork-core/pom.xml (original)
+++ struts/struts2/trunk/xwork-core/pom.xml Tue Dec 28 20:48:55 2010
@@ -103,8 +103,14 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
- <version>2.4.2</version>
+ <version>2.6</version>
<configuration>
+ <properties>
+ <property>
+ <name>maven.testng.output.dir</name>
+
<value>${project.basedir}/target/surefire-reports</value>
+ </property>
+ </properties>
<useSystemClassLoader>false</useSystemClassLoader>
<additionalClasspathElements>
<element>${project.build.testOutputDirectory}/xwork-jar.jar</element>
@@ -129,6 +135,7 @@
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
+ <version>2.4</version>
<executions>
<execution>
<goals>
@@ -343,7 +350,7 @@
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
- <version>4.5</version>
+ <scope>compile</scope>
<optional>true</optional>
</dependency>
Propchange: struts/struts2/trunk/xwork-core/test-output/
------------------------------------------------------------------------------
svn:mergeinfo =