!1 Package init

Merge pull request !1 from yaokai13/master
This commit is contained in:
openeuler-ci-bot 2020-06-10 13:59:29 +08:00 committed by Gitee
commit ac225ac2e2
34 changed files with 4270 additions and 0 deletions

View File

View File

@ -0,0 +1,75 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>3.2.18.RELEASE</version>
<name>Spring AOP</name>
<description>Spring AOP</description>
<url>https://github.com/SpringSource/spring-framework</url>
<organization>
<name>SpringSource</name>
<url>http://springsource.org/spring-framework</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>jhoeller</id>
<name>Juergen Hoeller</name>
<email>jhoeller@gopivotal.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/SpringSource/spring-framework</connection>
<developerConnection>scm:git:git://github.com/SpringSource/spring-framework</developerConnection>
<url>https://github.com/SpringSource/spring-framework</url>
</scm>
<dependencies>
<dependency>
<groupId>aopalliance</groupId>
<artifactId>aopalliance</artifactId>
<version>1.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.jamonapi</groupId>
<artifactId>jamon</artifactId>
<version>2.4</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>commons-pool</groupId>
<artifactId>commons-pool</artifactId>
<version>1.5.7</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.7.4</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,56 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.2.18.RELEASE</version>
<name>Spring Beans</name>
<description>Spring Beans</description>
<url>https://github.com/SpringSource/spring-framework</url>
<organization>
<name>SpringSource</name>
<url>http://springsource.org/spring-framework</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>jhoeller</id>
<name>Juergen Hoeller</name>
<email>jhoeller@gopivotal.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/SpringSource/spring-framework</connection>
<developerConnection>scm:git:git://github.com/SpringSource/spring-framework</developerConnection>
<url>https://github.com/SpringSource/spring-framework</url>
</scm>
<dependencies>
<dependency>
<groupId>javax.el</groupId>
<artifactId>el-api</artifactId>
<version>1.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.inject</groupId>
<artifactId>javax.inject</artifactId>
<version>1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,151 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.18.RELEASE</version>
<name>Spring Context</name>
<description>Spring Context</description>
<url>https://github.com/SpringSource/spring-framework</url>
<organization>
<name>SpringSource</name>
<url>http://springsource.org/spring-framework</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>jhoeller</id>
<name>Juergen Hoeller</name>
<email>jhoeller@gopivotal.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/SpringSource/spring-framework</connection>
<developerConnection>scm:git:git://github.com/SpringSource/spring-framework</developerConnection>
<url>https://github.com/SpringSource/spring-framework</url>
</scm>
<dependencies>
<dependency>
<groupId>backport-util-concurrent</groupId>
<artifactId>backport-util-concurrent</artifactId>
<version>3.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.ejb</groupId>
<artifactId>ejb-api</artifactId>
<version>3.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.inject</groupId>
<artifactId>javax.inject</artifactId>
<version>1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.persistence</groupId>
<artifactId>persistence-api</artifactId>
<version>1.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.0.0.GA</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>2.2</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-jms_1.1_spec</artifactId>
<version>1.1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.7.4</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.beanshell</groupId>
<artifactId>bsh</artifactId>
<version>2.0b4</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>1.8.9</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>4.3.1.Final</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.jruby</groupId>
<artifactId>jruby</artifactId>
<version>1.7.12</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-expression</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-instrument</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,137 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>3.2.18.RELEASE</version>
<name>Spring Context Support</name>
<description>Spring Context Support</description>
<url>https://github.com/SpringSource/spring-framework</url>
<organization>
<name>SpringSource</name>
<url>http://springsource.org/spring-framework</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>jhoeller</id>
<name>Juergen Hoeller</name>
<email>jhoeller@gopivotal.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/SpringSource/spring-framework</connection>
<developerConnection>scm:git:git://github.com/SpringSource/spring-framework</developerConnection>
<url>https://github.com/SpringSource/spring-framework</url>
</scm>
<dependencies>
<dependency>
<groupId>com.lowagie</groupId>
<artifactId>itext</artifactId>
<version>2.1.7</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.cache</groupId>
<artifactId>cache-api</artifactId>
<version>0.5</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4.7</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>net.sf.ehcache</groupId>
<artifactId>ehcache-core</artifactId>
<version>2.0.1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>net.sf.jasperreports</groupId>
<artifactId>jasperreports</artifactId>
<version>3.7.6</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.codehaus.fabric3.api</groupId>
<artifactId>commonj</artifactId>
<version>1.1.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.20</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>1.7.3</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>velocity</groupId>
<artifactId>velocity</artifactId>
<version>1.5</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>1.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,63 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.2.18.RELEASE</version>
<name>Spring Core</name>
<description>Spring Core</description>
<url>https://github.com/SpringSource/spring-framework</url>
<organization>
<name>SpringSource</name>
<url>http://springsource.org/spring-framework</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>jhoeller</id>
<name>Juergen Hoeller</name>
<email>jhoeller@gopivotal.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/SpringSource/spring-framework</connection>
<developerConnection>scm:git:git://github.com/SpringSource/spring-framework</developerConnection>
<url>https://github.com/SpringSource/spring-framework</url>
</scm>
<dependencies>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.3</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>net.sf.jopt-simple</groupId>
<artifactId>jopt-simple</artifactId>
<version>3.3</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.7.4</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-expression</artifactId>
<version>3.2.18.RELEASE</version>
<name>Spring Expression Language (SpEL)</name>
<description>Spring Expression Language (SpEL)</description>
<url>https://github.com/SpringSource/spring-framework</url>
<organization>
<name>SpringSource</name>
<url>http://springsource.org/spring-framework</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>jhoeller</id>
<name>Juergen Hoeller</name>
<email>jhoeller@gopivotal.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/SpringSource/spring-framework</connection>
<developerConnection>scm:git:git://github.com/SpringSource/spring-framework</developerConnection>
<url>https://github.com/SpringSource/spring-framework</url>
</scm>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-instrument</artifactId>
<version>3.2.18.RELEASE</version>
<name>Spring Instrument</name>
<description>Spring Instrument</description>
<url>https://github.com/SpringSource/spring-framework</url>
<organization>
<name>SpringSource</name>
<url>http://springsource.org/spring-framework</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>jhoeller</id>
<name>Juergen Hoeller</name>
<email>jhoeller@gopivotal.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/SpringSource/spring-framework</connection>
<developerConnection>scm:git:git://github.com/SpringSource/spring-framework</developerConnection>
<url>https://github.com/SpringSource/spring-framework</url>
</scm>
</project>

View File

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-instrument-tomcat</artifactId>
<version>3.2.18.RELEASE</version>
<name>Spring Instrument Tomcat</name>
<description>Spring Instrument Tomcat</description>
<url>https://github.com/SpringSource/spring-framework</url>
<organization>
<name>SpringSource</name>
<url>http://springsource.org/spring-framework</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>jhoeller</id>
<name>Juergen Hoeller</name>
<email>jhoeller@gopivotal.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/SpringSource/spring-framework</connection>
<developerConnection>scm:git:git://github.com/SpringSource/spring-framework</developerConnection>
<url>https://github.com/SpringSource/spring-framework</url>
</scm>
<dependencies>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>catalina</artifactId>
<version>6.0.16</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,103 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>3.2.18.RELEASE</version>
<name>Spring JDBC</name>
<description>Spring JDBC</description>
<url>https://github.com/SpringSource/spring-framework</url>
<organization>
<name>SpringSource</name>
<url>http://springsource.org/spring-framework</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>jhoeller</id>
<name>Juergen Hoeller</name>
<email>jhoeller@gopivotal.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/SpringSource/spring-framework</connection>
<developerConnection>scm:git:git://github.com/SpringSource/spring-framework</developerConnection>
<url>https://github.com/SpringSource/spring-framework</url>
</scm>
<dependencies>
<dependency>
<groupId>c3p0</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.1.2</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>1.0.79</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>hsqldb</groupId>
<artifactId>hsqldb</artifactId>
<version>1.8.0.10</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.derby</groupId>
<artifactId>derby</artifactId>
<version>10.5.3.0_1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.derby</groupId>
<artifactId>derbyclient</artifactId>
<version>10.5.3.0_1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-jta_1.1_spec</artifactId>
<version>1.1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,114 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-jms</artifactId>
<version>3.2.18.RELEASE</version>
<name>Spring JMS</name>
<description>Spring JMS</description>
<url>https://github.com/SpringSource/spring-framework</url>
<organization>
<name>SpringSource</name>
<url>http://springsource.org/spring-framework</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>jhoeller</id>
<name>Juergen Hoeller</name>
<email>jhoeller@gopivotal.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/SpringSource/spring-framework</connection>
<developerConnection>scm:git:git://github.com/SpringSource/spring-framework</developerConnection>
<url>https://github.com/SpringSource/spring-framework</url>
</scm>
<dependencies>
<dependency>
<groupId>aopalliance</groupId>
<artifactId>aopalliance</artifactId>
<version>1.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.0.6</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.resource</groupId>
<artifactId>connector-api</artifactId>
<version>1.5</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-jta_1.1_spec</artifactId>
<version>1.1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.7.9</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-oxm</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-jms_1.1_spec</artifactId>
<version>1.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,179 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-orm</artifactId>
<version>3.2.18.RELEASE</version>
<name>Spring Object/Relational Mapping</name>
<description>Spring Object/Relational Mapping</description>
<url>https://github.com/SpringSource/spring-framework</url>
<organization>
<name>SpringSource</name>
<url>http://springsource.org/spring-framework</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>jhoeller</id>
<name>Juergen Hoeller</name>
<email>jhoeller@gopivotal.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/SpringSource/spring-framework</connection>
<developerConnection>scm:git:git://github.com/SpringSource/spring-framework</developerConnection>
<url>https://github.com/SpringSource/spring-framework</url>
</scm>
<dependencies>
<dependency>
<groupId>aopalliance</groupId>
<artifactId>aopalliance</artifactId>
<version>1.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.jdo</groupId>
<artifactId>jdo-api</artifactId>
<version>3.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.persistence</groupId>
<artifactId>persistence-api</artifactId>
<version>1.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.ibatis</groupId>
<artifactId>ibatis-sqlmap</artifactId>
<version>2.3.4.726</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.openjpa</groupId>
<artifactId>openjpa</artifactId>
<version>1.1.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>org.eclipse.persistence.core</artifactId>
<version>1.0.1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>org.eclipse.persistence.jpa</artifactId>
<version>1.0.1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-annotations</artifactId>
<version>3.4.0.GA</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>4.2.21.Final</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>3.3.2.GA</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>3.4.0.GA</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>4.2.21.Final</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>toplink.essentials</groupId>
<artifactId>toplink-essentials</artifactId>
<version>2.0-41b</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,115 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-orm-hibernate4</artifactId>
<version>@VERSION@</version>
<name>Spring Object/Relational Mapping - Hibernate 4 support</name>
<description>Spring Object/Relational Mapping - Hibernate 4 support</description>
<url>https://github.com/SpringSource/spring-framework</url>
<organization>
<name>SpringSource</name>
<url>http://springsource.org/spring-framework</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>jhoeller</id>
<name>Juergen Hoeller</name>
<email>jhoeller@gopivotal.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/SpringSource/spring-framework</connection>
<developerConnection>scm:git:git://github.com/SpringSource/spring-framework</developerConnection>
<url>https://github.com/SpringSource/spring-framework</url>
</scm>
<dependencies>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>4.3.5.Final</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>4.3.5.Final</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-orm</artifactId>
<version>${project.version}</version>
<scope>compile</scope>
</dependency>
<!--dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>${project.version}</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${project.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${project.version}</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${project.version}</version>
<scope>compile</scope>
</dependency-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${project.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>${project.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${project.version}</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.hibernate.javax.persistence</groupId>
<artifactId>hibernate-jpa-2.1-api</artifactId>
<version>1.0.0.Draft-16</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,102 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-oxm</artifactId>
<version>3.2.18.RELEASE</version>
<name>Spring Object/XML Marshalling</name>
<description>Spring Object/XML Marshalling</description>
<url>https://github.com/SpringSource/spring-framework</url>
<organization>
<name>SpringSource</name>
<url>http://springsource.org/spring-framework</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>jhoeller</id>
<name>Juergen Hoeller</name>
<email>jhoeller@gopivotal.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/SpringSource/spring-framework</connection>
<developerConnection>scm:git:git://github.com/SpringSource/spring-framework</developerConnection>
<url>https://github.com/SpringSource/spring-framework</url>
</scm>
<dependencies>
<dependency>
<groupId>com.thoughtworks.xstream</groupId>
<artifactId>xstream</artifactId>
<version>1.4.7</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<artifactId>xmlpull</artifactId>
<groupId>xmlpull</groupId>
</exclusion>
<exclusion>
<artifactId>xpp3_min</artifactId>
<groupId>xpp3</groupId>
</exclusion>
</exclusions>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.xmlbeans</groupId>
<artifactId>xmlbeans</artifactId>
<version>2.6.0</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<artifactId>stax-api</artifactId>
<groupId>stax</groupId>
</exclusion>
</exclusions>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.codehaus.castor</groupId>
<artifactId>castor-xml</artifactId>
<version>1.3.3</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<artifactId>stax-api</artifactId>
<groupId>stax</groupId>
</exclusion>
<exclusion>
<artifactId>spring-context</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
</exclusions>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.jibx</groupId>
<artifactId>jibx-run</artifactId>
<version>1.2.5</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,90 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-struts</artifactId>
<version>3.2.18.RELEASE</version>
<name>Spring Struts</name>
<description>Spring Struts</description>
<url>https://github.com/SpringSource/spring-framework</url>
<organization>
<name>SpringSource</name>
<url>http://springsource.org/spring-framework</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>jhoeller</id>
<name>Juergen Hoeller</name>
<email>jhoeller@gopivotal.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/SpringSource/spring-framework</connection>
<developerConnection>scm:git:git://github.com/SpringSource/spring-framework</developerConnection>
<url>https://github.com/SpringSource/spring-framework</url>
</scm>
<dependencies>
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
<version>1.7.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>struts</groupId>
<artifactId>struts</artifactId>
<version>1.2.9</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,193 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>3.2.18.RELEASE</version>
<name>Spring TestContext Framework</name>
<description>Spring TestContext Framework</description>
<url>https://github.com/SpringSource/spring-framework</url>
<organization>
<name>SpringSource</name>
<url>http://springsource.org/spring-framework</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>jhoeller</id>
<name>Juergen Hoeller</name>
<email>jhoeller@gopivotal.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/SpringSource/spring-framework</connection>
<developerConnection>scm:git:git://github.com/SpringSource/spring-framework</developerConnection>
<url>https://github.com/SpringSource/spring-framework</url>
</scm>
<dependencies>
<dependency>
<groupId>com.jayway.jsonpath</groupId>
<artifactId>json-path</artifactId>
<version>0.8.1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.inject</groupId>
<artifactId>javax.inject</artifactId>
<version>1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.persistence</groupId>
<artifactId>persistence-api</artifactId>
<version>1.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.portlet</groupId>
<artifactId>portlet-api</artifactId>
<version>2.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.7.4</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
<version>1.3</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-orm</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc-portlet</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.8.8</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>xmlunit</groupId>
<artifactId>xmlunit</artifactId>
<version>1.3</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>1.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>3.2.18.RELEASE</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,160 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-test-mvc</artifactId>
<version>3.2.18.RELEASE</version>
<name>Spring Test MVC Framework</name>
<description>Spring Test MVC Framework</description>
<url>https://github.com/SpringSource/spring-framework</url>
<organization>
<name>SpringSource</name>
<url>http://springsource.org/spring-framework</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>jhoeller</id>
<name>Juergen Hoeller</name>
<email>jhoeller@gopivotal.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/SpringSource/spring-framework</connection>
<developerConnection>scm:git:git://github.com/SpringSource/spring-framework</developerConnection>
<url>https://github.com/SpringSource/spring-framework</url>
</scm>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.jayway.jsonpath</groupId>
<artifactId>json-path</artifactId>
<version>0.8.1</version>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
<version>1.3</version>
</dependency>
<dependency>
<groupId>xmlunit</groupId>
<artifactId>xmlunit</artifactId>
<version>1.3</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.0.6</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.thoughtworks.xstream</groupId>
<artifactId>xstream</artifactId>
<version>1.4.7</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4.7</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-api</artifactId>
<version>3.0.4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-core</artifactId>
<version>3.0.4</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
</exclusion>
</exclusions>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-servlet</artifactId>
<version>3.0.4</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
</exclusion>
</exclusions>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.7.9</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>4.3.1.Final</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jcl</artifactId>
<version>1.6.6</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>rome</groupId>
<artifactId>rome</artifactId>
<version>1.0</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,97 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>3.2.18.RELEASE</version>
<name>Spring Transaction</name>
<description>Spring Transaction</description>
<url>https://github.com/SpringSource/spring-framework</url>
<organization>
<name>SpringSource</name>
<url>http://springsource.org/spring-framework</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>jhoeller</id>
<name>Juergen Hoeller</name>
<email>jhoeller@gopivotal.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/SpringSource/spring-framework</connection>
<developerConnection>scm:git:git://github.com/SpringSource/spring-framework</developerConnection>
<url>https://github.com/SpringSource/spring-framework</url>
</scm>
<dependencies>
<dependency>
<groupId>aopalliance</groupId>
<artifactId>aopalliance</artifactId>
<version>1.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.ibm.websphere</groupId>
<artifactId>uow</artifactId>
<version>6.0.2.17</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.ejb</groupId>
<artifactId>ejb-api</artifactId>
<version>3.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.resource</groupId>
<artifactId>connector-api</artifactId>
<version>1.5</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-jta_1.1_spec</artifactId>
<version>1.1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,224 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>3.2.18.RELEASE</version>
<name>Spring Web</name>
<description>Spring Web</description>
<url>https://github.com/SpringSource/spring-framework</url>
<organization>
<name>SpringSource</name>
<url>http://springsource.org/spring-framework</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>jhoeller</id>
<name>Juergen Hoeller</name>
<email>jhoeller@gopivotal.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/SpringSource/spring-framework</connection>
<developerConnection>scm:git:git://github.com/SpringSource/spring-framework</developerConnection>
<url>https://github.com/SpringSource/spring-framework</url>
</scm>
<dependencies>
<dependency>
<groupId>aopalliance</groupId>
<artifactId>aopalliance</artifactId>
<version>1.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.caucho</groupId>
<artifactId>hessian</artifactId>
<version>3.2.1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.0.6</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>commons-httpclient</groupId>
<artifactId>commons-httpclient</artifactId>
<version>3.1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>1.3</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.el</groupId>
<artifactId>el-api</artifactId>
<version>1.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.faces</groupId>
<artifactId>jsf-api</artifactId>
<version>1.2_08</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.portlet</groupId>
<artifactId>portlet-api</artifactId>
<version>2.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.xml.soap</groupId>
<artifactId>saaj-api</artifactId>
<version>1.3</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.xml</groupId>
<artifactId>jaxrpc-api</artifactId>
<version>1.1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.2.6</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.7.9</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-server</artifactId>
<version>8.1.5.v20120716</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<artifactId>javax.servlet</artifactId>
<groupId>org.eclipse.jetty.orbit</groupId>
</exclusion>
</exclusions>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-servlet</artifactId>
<version>8.1.5.v20120716</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<artifactId>javax.servlet</artifactId>
<groupId>org.eclipse.jetty.orbit</groupId>
</exclusion>
</exclusions>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-oxm</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>rome</groupId>
<artifactId>rome</artifactId>
<version>1.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>1.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,287 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>3.2.18.RELEASE</version>
<name>Spring Web MVC</name>
<description>Spring Web MVC</description>
<url>https://github.com/SpringSource/spring-framework</url>
<organization>
<name>SpringSource</name>
<url>http://springsource.org/spring-framework</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>jhoeller</id>
<name>Juergen Hoeller</name>
<email>jhoeller@gopivotal.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/SpringSource/spring-framework</connection>
<developerConnection>scm:git:git://github.com/SpringSource/spring-framework</developerConnection>
<url>https://github.com/SpringSource/spring-framework</url>
</scm>
<dependencies>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.0.6</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.lowagie</groupId>
<artifactId>itext</artifactId>
<version>2.1.7</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.el</groupId>
<artifactId>el-api</artifactId>
<version>1.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>net.sf.jasperreports</groupId>
<artifactId>jasperreports</artifactId>
<version>3.7.6</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<artifactId>xml-apis</artifactId>
<groupId>xml-apis</groupId>
</exclusion>
</exclusions>
<optional>true</optional>
</dependency>
<dependency>
<groupId>net.sourceforge.jexcelapi</groupId>
<artifactId>jxl</artifactId>
<version>2.6.12</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.6</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-api</artifactId>
<version>2.1.2</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-api</artifactId>
<version>3.0.4</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-core</artifactId>
<version>3.0.4</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<artifactId>jcl-over-slf4j</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
</exclusions>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-core</artifactId>
<version>2.1.2</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-el</artifactId>
<version>3.0.4</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<artifactId>jcl-over-slf4j</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
</exclusions>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-extras</artifactId>
<version>3.0.4</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<artifactId>jcl-over-slf4j</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
<exclusion>
<artifactId>spring-web</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
</exclusions>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-jsp</artifactId>
<version>2.1.2</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-jsp</artifactId>
<version>3.0.4</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<artifactId>jcl-over-slf4j</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
</exclusions>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-servlet</artifactId>
<version>2.1.2</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-servlet</artifactId>
<version>3.0.4</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<artifactId>jcl-over-slf4j</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
</exclusions>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.7.9</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.20</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-expression</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-oxm</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>rome</groupId>
<artifactId>rome</artifactId>
<version>1.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>velocity-tools</groupId>
<artifactId>velocity-tools-view</artifactId>
<version>1.4</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>velocity</groupId>
<artifactId>velocity</artifactId>
<version>1.5</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,85 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc-portlet</artifactId>
<version>3.2.18.RELEASE</version>
<name>Spring Web Portlet</name>
<description>Spring Web Portlet</description>
<url>https://github.com/SpringSource/spring-framework</url>
<organization>
<name>SpringSource</name>
<url>http://springsource.org/spring-framework</url>
</organization>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>jhoeller</id>
<name>Juergen Hoeller</name>
<email>jhoeller@gopivotal.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/SpringSource/spring-framework</connection>
<developerConnection>scm:git:git://github.com/SpringSource/spring-framework</developerConnection>
<url>https://github.com/SpringSource/spring-framework</url>
</scm>
<dependencies>
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>3.2.18.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>javax.portlet</groupId>
<artifactId>portlet-api</artifactId>
<version>2.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,99 @@
--- spring-framework-3.2.13.RELEASE/spring-jdbc/src/main/java/org/springframework/jdbc/datasource/embedded/DerbyEmbeddedDatabaseConfigurer.java 2014-12-30 17:22:59.000000000 +0100
+++ spring-framework-3.2.13.RELEASE/spring-jdbc/src/main/java/org/springframework/jdbc/datasource/embedded/DerbyEmbeddedDatabaseConfigurer.java.derby 2015-03-06 13:41:54.412646283 +0100
@@ -16,19 +16,16 @@
package org.springframework.jdbc.datasource.embedded;
-import java.io.File;
-import java.io.IOException;
import java.sql.SQLException;
import java.util.Properties;
import javax.sql.DataSource;
-import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.derby.impl.io.VFMemoryStorageFactory;
import org.apache.derby.jdbc.EmbeddedDriver;
/**
- * {@link EmbeddedDatabaseConfigurer} for the Apache Derby database.
+ * {@link EmbeddedDatabaseConfigurer} for the Apache Derby database 10.6+.
+ * <p>Call {@link #getInstance()} to get the singleton instance of this class.
*
* @author Oliver Gierke
* @author Juergen Hoeller
@@ -36,14 +33,9 @@
*/
final class DerbyEmbeddedDatabaseConfigurer implements EmbeddedDatabaseConfigurer {
- private static final Log logger = LogFactory.getLog(DerbyEmbeddedDatabaseConfigurer.class);
-
private static final String URL_TEMPLATE = "jdbc:derby:memory:%s;%s";
- // Error code that indicates successful shutdown
- private static final String SHUTDOWN_CODE = "08006";
-
- private static DerbyEmbeddedDatabaseConfigurer INSTANCE;
+ private static DerbyEmbeddedDatabaseConfigurer instance;
/**
@@ -52,18 +44,20 @@
* @throws ClassNotFoundException if Derby is not on the classpath
*/
public static synchronized DerbyEmbeddedDatabaseConfigurer getInstance() throws ClassNotFoundException {
- if (INSTANCE == null) {
+ if (instance == null) {
// disable log file
System.setProperty("derby.stream.error.method",
OutputStreamFactory.class.getName() + ".getNoopOutputStream");
- INSTANCE = new DerbyEmbeddedDatabaseConfigurer();
+ instance = new DerbyEmbeddedDatabaseConfigurer();
}
- return INSTANCE;
+ return instance;
}
+
private DerbyEmbeddedDatabaseConfigurer() {
}
+ @Override
public void configureConnectionProperties(ConnectionProperties properties, String databaseName) {
properties.setDriverClass(EmbeddedDriver.class);
properties.setUrl(String.format(URL_TEMPLATE, databaseName, "create=true"));
@@ -71,28 +65,16 @@
properties.setPassword("");
}
+ @Override
public void shutdown(DataSource dataSource, String databaseName) {
- EmbeddedDriver embeddedDriver = new EmbeddedDriver();
- boolean isAtLeastDotSix = (embeddedDriver.getMinorVersion() >= 6);
- String shutdownCommand = String.format("%s=true", isAtLeastDotSix ? "drop" : "shutdown");
try {
- embeddedDriver.connect(
- String.format(URL_TEMPLATE, databaseName, shutdownCommand), new Properties());
+ new EmbeddedDriver().connect(
+ String.format(URL_TEMPLATE, databaseName, "drop=true"), new Properties());
}
catch (SQLException ex) {
- if (!SHUTDOWN_CODE.equals(ex.getSQLState())) {
- logger.warn("Could not shutdown in-memory Derby database", ex);
- return;
- }
- if (!isAtLeastDotSix) {
- // Explicitly purge the in-memory database, to prevent it
- // from hanging around after being shut down.
- try {
- VFMemoryStorageFactory.purgeDatabase(new File(databaseName).getCanonicalPath());
- }
- catch (IOException ex2) {
- logger.warn("Could not purge in-memory Derby database", ex2);
- }
+ // Error code that indicates successful shutdown
+ if (!"08006".equals(ex.getSQLState())) {
+ LogFactory.getLog(getClass()).warn("Could not shutdown in-memory Derby database", ex);
}
}
}

View File

@ -0,0 +1,15 @@
diff --git a/spring-instrument-tomcat/src/main/java/org/springframework/instrument/classloading/tomcat/TomcatInstrumentableClassLoader.java b/spring-instrument-tomcat/src/main/java/org/springframework/instrument/classloading/tomcat/TomcatInstrumentableClassLoader.java
index d510918..7908ca1 100644
--- a/spring-instrument-tomcat/src/main/java/org/springframework/instrument/classloading/tomcat/TomcatInstrumentableClassLoader.java
+++ b/spring-instrument-tomcat/src/main/java/org/springframework/instrument/classloading/tomcat/TomcatInstrumentableClassLoader.java
@@ -110,8 +110,8 @@ public class TomcatInstrumentableClassLoader extends WebappClassLoader {
@Override
- protected ResourceEntry findResourceInternal(String name, String path) {
- ResourceEntry entry = super.findResourceInternal(name, path);
+ protected ResourceEntry findResourceInternal(String name, String path, boolean manifestRequired) {
+ ResourceEntry entry = super.findResourceInternal(name, path, manifestRequired);
if (entry != null && entry.binaryContent != null && path.endsWith(CLASS_SUFFIX)) {
String className = (name.endsWith(CLASS_SUFFIX) ? name.substring(0, name.length() - CLASS_SUFFIX.length()) : name);
entry.binaryContent = this.weavingTransformer.transformIfNecessary(className, entry.binaryContent);

View File

@ -0,0 +1,55 @@
diff -Nru spring-framework-3.2.14.RELEASE/build.gradle spring-framework-3.2.14.RELEASE.jopt-simple/build.gradle
--- spring-framework-3.2.14.RELEASE/build.gradle 2015-06-30 19:36:07.000000000 +0200
+++ spring-framework-3.2.14.RELEASE.jopt-simple/build.gradle 2015-07-03 13:18:15.951750946 +0200
@@ -242,7 +242,7 @@
compile(files(asmRepackJar))
compile("commons-logging:commons-logging:1.1.3")
optional("org.aspectj:aspectjweaver:${aspectjVersion}")
- optional("net.sf.jopt-simple:jopt-simple:3.3")
+ optional("net.sf.jopt-simple:jopt-simple:4.6")
optional("log4j:log4j:1.2.17")
testCompile("xmlunit:xmlunit:1.3")
testCompile("org.codehaus.woodstox:wstx-asl:3.2.7") {
diff -Nru spring-framework-3.2.14.RELEASE/spring-core/src/main/java/org/springframework/core/env/JOptCommandLinePropertySource.java spring-framework-3.2.14.RELEASE.jopt-simple/spring-core/src/main/java/org/springframework/core/env/JOptCommandLinePropertySource.java
--- spring-framework-3.2.14.RELEASE/spring-core/src/main/java/org/springframework/core/env/JOptCommandLinePropertySource.java 2015-06-30 19:36:07.000000000 +0200
+++ spring-framework-3.2.14.RELEASE.jopt-simple/spring-core/src/main/java/org/springframework/core/env/JOptCommandLinePropertySource.java 2015-07-03 13:28:05.299917137 +0200
@@ -21,6 +21,7 @@
import java.util.List;
import joptsimple.OptionSet;
+import joptsimple.OptionSpec;
import org.springframework.util.Assert;
@@ -43,10 +44,11 @@
*
* See {@link CommandLinePropertySource} for complete general usage examples.
*
- * <p>Requires JOpt version 3.0 or higher. Tested against JOpt up until 4.6.
+ * <p>Requires JOpt version 4.3 or higher. Tested against JOpt up until 4.6.
*
* @author Chris Beams
* @author Juergen Hoeller
+ * @author Dave Syer
* @since 3.1
* @see CommandLinePropertySource
* @see joptsimple.OptionParser
@@ -78,6 +80,18 @@
return this.source.has(name);
}
+ public String[] getPropertyNames() {
+ List<String> names = new ArrayList<String>();
+ for (OptionSpec<?> spec : this.source.specs()) {
+ List<String> aliases = new ArrayList<String>(spec.options());
+ if (!aliases.isEmpty()) {
+ // Only the longest name is used for enumerating
+ names.add(aliases.get(aliases.size() - 1));
+ }
+ }
+ return names.toArray(new String[names.size()]);
+ }
+
@Override
public List<String> getOptionValues(String name) {
List<?> argValues = this.source.valuesOf(name);

View File

@ -0,0 +1,649 @@
diff -Nru spring-framework-3.2.18.RELEASE/spring-orm-hibernate4/src/main/java/org/springframework/orm/hibernate4/ConfigurableJtaPlatform.java spring-framework-3.2.18.RELEASE.hibernate4.3/spring-orm-hibernate4/src/main/java/org/springframework/orm/hibernate4/ConfigurableJtaPlatform.java
--- spring-framework-3.2.18.RELEASE/spring-orm-hibernate4/src/main/java/org/springframework/orm/hibernate4/ConfigurableJtaPlatform.java 2016-12-21 19:42:08.000000000 +0100
+++ spring-framework-3.2.18.RELEASE.hibernate4.3/spring-orm-hibernate4/src/main/java/org/springframework/orm/hibernate4/ConfigurableJtaPlatform.java 2016-12-22 20:34:41.500296971 +0100
@@ -16,60 +16,133 @@
package org.springframework.orm.hibernate4;
+import java.lang.reflect.InvocationHandler;
+import java.lang.reflect.Method;
+import java.lang.reflect.Proxy;
+import javax.transaction.Status;
+import javax.transaction.Synchronization;
+import javax.transaction.SystemException;
+import javax.transaction.Transaction;
import javax.transaction.TransactionManager;
+import javax.transaction.TransactionSynchronizationRegistry;
import javax.transaction.UserTransaction;
-import org.hibernate.service.jta.platform.internal.AbstractJtaPlatform;
+import org.hibernate.TransactionException;
+import org.hibernate.service.Service;
import org.springframework.transaction.jta.UserTransactionAdapter;
import org.springframework.util.Assert;
/**
- * Implementation of Hibernate 4's {@link org.hibernate.service.jta.platform.spi.JtaPlatform}
- * SPI, exposing passed-in {@link TransactionManager} and {@link UserTransaction} references.
+ * Implementation of Hibernate 4's JtaPlatform SPI (which has a different package
+ * location in Hibernate 4.0-4.2 vs 4.3), exposing passed-in {@link TransactionManager},
+ * {@link UserTransaction} and {@link TransactionSynchronizationRegistry} references.
*
* @author Juergen Hoeller
* @since 3.1.2
*/
-@SuppressWarnings("serial")
-class ConfigurableJtaPlatform extends AbstractJtaPlatform {
+@SuppressWarnings({"serial", "unchecked"})
+class ConfigurableJtaPlatform implements InvocationHandler {
+
+ static final Class<? extends Service> jtaPlatformClass;
+
+ static {
+ Class<?> jpClass;
+ try {
+ // Try Hibernate 4.0-4.2 JtaPlatform variant
+ jpClass = SpringSessionContext.class.getClassLoader().loadClass(
+ "org.hibernate.service.jta.platform.spi.JtaPlatform");
+ }
+ catch (ClassNotFoundException ex) {
+ try {
+ // Try Hibernate 4.3 JtaPlatform variant
+ jpClass = SpringSessionContext.class.getClassLoader().loadClass(
+ "org.hibernate.engine.transaction.jta.platform.spi.JtaPlatform");
+ }
+ catch (ClassNotFoundException ex2) {
+ throw new IllegalStateException("Neither Hibernate 4.0-4.2 nor 4.3 variant of JtaPlatform found");
+ }
+ }
+ jtaPlatformClass = (Class<? extends Service>) jpClass;
+ }
+
+ static String getJtaPlatformBasePackage() {
+ String className = jtaPlatformClass.getName();
+ return className.substring(0, className.length() - "spi.JtaPlatform".length());
+ }
private final TransactionManager transactionManager;
private final UserTransaction userTransaction;
+ private final TransactionSynchronizationRegistry transactionSynchronizationRegistry;
/**
* Create a new ConfigurableJtaPlatform instance with the given
* JTA TransactionManager and optionally a given UserTransaction.
* @param tm the JTA TransactionManager reference (required)
* @param ut the JTA UserTransaction reference (optional)
+ * @param tsr the JTA 1.1 TransactionSynchronizationRegistry (optional)
*/
- public ConfigurableJtaPlatform(TransactionManager tm, UserTransaction ut) {
+ public ConfigurableJtaPlatform(TransactionManager tm, UserTransaction ut, TransactionSynchronizationRegistry tsr) {
Assert.notNull(tm, "TransactionManager reference must not be null");
this.transactionManager = tm;
this.userTransaction = (ut != null ? ut : new UserTransactionAdapter(tm));
+ this.transactionSynchronizationRegistry = tsr;
}
- @Override
- protected TransactionManager locateTransactionManager() {
+ public TransactionManager retrieveTransactionManager() {
return this.transactionManager;
}
- @Override
- protected UserTransaction locateUserTransaction() {
+ public UserTransaction retrieveUserTransaction() {
return this.userTransaction;
}
- @Override
- protected boolean canCacheTransactionManager() {
- return true;
+ public Object getTransactionIdentifier(Transaction transaction) {
+ return transaction;
+ }
+
+ public boolean canRegisterSynchronization() {
+ try {
+ return (this.transactionManager.getStatus() == Status.STATUS_ACTIVE);
+ }
+ catch (SystemException ex) {
+ throw new TransactionException("Could not determine JTA transaction status", ex);
+ }
+ }
+
+ public void registerSynchronization(Synchronization synchronization) {
+ if (this.transactionSynchronizationRegistry != null) {
+ this.transactionSynchronizationRegistry.registerInterposedSynchronization(synchronization);
+ }
+ else {
+ try {
+ this.transactionManager.getTransaction().registerSynchronization(synchronization);
+ }
+ catch (Exception ex) {
+ throw new TransactionException("Could not access JTA Transaction to register synchronization", ex);
+ }
+ }
+ }
+
+ public int getCurrentStatus() throws SystemException {
+ return this.transactionManager.getStatus();
}
- @Override
- protected boolean canCacheUserTransaction() {
- return true;
+ public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
+ Method targetMethod = getClass().getMethod(method.getName(), method.getParameterTypes());
+ return targetMethod.invoke(this, args);
}
+ /**
+ * Obtain a proxy that implements the current Hibernate version's JtaPlatform interface
+ * in the right package location, delegating all invocations to the same-named methods
+ * on this ConfigurableJtaPlatform class itself.
+ */
+ public Object getJtaPlatformProxy() {
+ return Proxy.newProxyInstance(getClass().getClassLoader(), new Class<?>[] {jtaPlatformClass}, this);
+ }
+
}
diff -Nru spring-framework-3.2.18.RELEASE/spring-orm-hibernate4/src/main/java/org/springframework/orm/hibernate4/LocalSessionFactoryBuilder.java spring-framework-3.2.18.RELEASE.hibernate4.3/spring-orm-hibernate4/src/main/java/org/springframework/orm/hibernate4/LocalSessionFactoryBuilder.java
--- spring-framework-3.2.18.RELEASE/spring-orm-hibernate4/src/main/java/org/springframework/orm/hibernate4/LocalSessionFactoryBuilder.java 2016-12-21 19:42:08.000000000 +0100
+++ spring-framework-3.2.18.RELEASE.hibernate4.3/spring-orm-hibernate4/src/main/java/org/springframework/orm/hibernate4/LocalSessionFactoryBuilder.java 2016-12-22 20:38:31.548142550 +0100
@@ -30,7 +30,6 @@
import org.hibernate.cfg.Configuration;
import org.hibernate.cfg.Environment;
import org.hibernate.engine.transaction.internal.jta.CMTTransactionFactory;
-import org.hibernate.service.jta.platform.internal.WebSphereExtendedJtaPlatform;
import org.springframework.core.io.Resource;
import org.springframework.core.io.ResourceLoader;
@@ -127,7 +126,7 @@
* instructing Hibernate to interact with externally managed transactions.
* <p>A passed-in Spring {@link JtaTransactionManager} needs to contain a JTA
* {@link TransactionManager} reference to be usable here, except for the WebSphere
- * case where we'll automatically set {@link WebSphereExtendedJtaPlatform} accordingly.
+ * case where we'll automatically set {@code WebSphereExtendedJtaPlatform} accordingly.
* <p>Note: If this is set, the Hibernate settings should not contain a JTA platform
* setting to avoid meaningless double configuration.
*/
@@ -136,7 +135,8 @@
if (jtaTransactionManager instanceof JtaTransactionManager) {
boolean webspherePresent = ClassUtils.isPresent("com.ibm.wsspi.uow.UOWManager", getClass().getClassLoader());
if (webspherePresent) {
- getProperties().put(AvailableSettings.JTA_PLATFORM, new WebSphereExtendedJtaPlatform());
+ getProperties().put(AvailableSettings.JTA_PLATFORM,
+ ConfigurableJtaPlatform.getJtaPlatformBasePackage() + "internal.WebSphereExtendedJtaPlatform");
}
else {
JtaTransactionManager jtaTm = (JtaTransactionManager) jtaTransactionManager;
@@ -145,12 +145,13 @@
"Can only apply JtaTransactionManager which has a TransactionManager reference set");
}
getProperties().put(AvailableSettings.JTA_PLATFORM,
- new ConfigurableJtaPlatform(jtaTm.getTransactionManager(), jtaTm.getUserTransaction()));
+ new ConfigurableJtaPlatform(jtaTm.getTransactionManager(), jtaTm.getUserTransaction(),
+ jtaTm.getTransactionSynchronizationRegistry()).getJtaPlatformProxy());
}
}
else if (jtaTransactionManager instanceof TransactionManager) {
getProperties().put(AvailableSettings.JTA_PLATFORM,
- new ConfigurableJtaPlatform((TransactionManager) jtaTransactionManager, null));
+ new ConfigurableJtaPlatform((TransactionManager) jtaTransactionManager, null, null).getJtaPlatformProxy());
}
else {
throw new IllegalArgumentException(
diff -Nru spring-framework-3.2.18.RELEASE/spring-orm-hibernate4/src/main/java/org/springframework/orm/hibernate4/SessionFactoryUtils.java spring-framework-3.2.18.RELEASE.hibernate4.3/spring-orm-hibernate4/src/main/java/org/springframework/orm/hibernate4/SessionFactoryUtils.java
--- spring-framework-3.2.18.RELEASE/spring-orm-hibernate4/src/main/java/org/springframework/orm/hibernate4/SessionFactoryUtils.java 2016-12-21 19:42:08.000000000 +0100
+++ spring-framework-3.2.18.RELEASE.hibernate4.3/spring-orm-hibernate4/src/main/java/org/springframework/orm/hibernate4/SessionFactoryUtils.java 2016-12-23 10:44:05.095253068 +0100
@@ -16,6 +16,7 @@
package org.springframework.orm.hibernate4;
+import java.lang.reflect.Method;
import javax.sql.DataSource;
import org.apache.commons.logging.Log;
@@ -41,7 +42,7 @@
import org.hibernate.exception.JDBCConnectionException;
import org.hibernate.exception.LockAcquisitionException;
import org.hibernate.exception.SQLGrammarException;
-import org.hibernate.service.jdbc.connections.spi.ConnectionProvider;
+import org.hibernate.service.spi.Wrapped;
import org.springframework.dao.CannotAcquireLockException;
import org.springframework.dao.DataAccessException;
@@ -52,6 +53,8 @@
import org.springframework.dao.InvalidDataAccessApiUsageException;
import org.springframework.dao.InvalidDataAccessResourceUsageException;
import org.springframework.jdbc.datasource.DataSourceUtils;
+import org.springframework.util.ClassUtils;
+import org.springframework.util.ReflectionUtils;
/**
* Helper class featuring methods for Hibernate Session handling.
@@ -78,6 +81,11 @@
static final Log logger = LogFactory.getLog(SessionFactoryUtils.class);
+ /**
+ * Bridging between the different ConnectionProvider package location in 4.0-4.2 vs 4.3.
+ */
+ private static final Method getConnectionProviderMethod =
+ ClassUtils.getMethodIfAvailable(SessionFactoryImplementor.class, "getConnectionProvider");
/**
* Determine the DataSource of the given SessionFactory.
@@ -86,8 +94,8 @@
* @see org.hibernate.engine.spi.SessionFactoryImplementor#getConnectionProvider
*/
public static DataSource getDataSource(SessionFactory sessionFactory) {
- if (sessionFactory instanceof SessionFactoryImplementor) {
- ConnectionProvider cp = ((SessionFactoryImplementor) sessionFactory).getConnectionProvider();
+ if (getConnectionProviderMethod != null && sessionFactory instanceof SessionFactoryImplementor) {
+ Wrapped cp = (Wrapped) ReflectionUtils.invokeMethod(getConnectionProviderMethod, sessionFactory);
return cp.unwrap(DataSource.class);
}
return null;
diff -Nru spring-framework-3.2.18.RELEASE/spring-orm-hibernate4/src/main/java/org/springframework/orm/hibernate4/SpringSessionContext.java spring-framework-3.2.18.RELEASE.hibernate4.3/spring-orm-hibernate4/src/main/java/org/springframework/orm/hibernate4/SpringSessionContext.java
--- spring-framework-3.2.18.RELEASE/spring-orm-hibernate4/src/main/java/org/springframework/orm/hibernate4/SpringSessionContext.java 2016-12-21 19:42:08.000000000 +0100
+++ spring-framework-3.2.18.RELEASE.hibernate4.3/spring-orm-hibernate4/src/main/java/org/springframework/orm/hibernate4/SpringSessionContext.java 2016-12-22 20:45:06.119514785 +0100
@@ -16,16 +16,16 @@
package org.springframework.orm.hibernate4;
-import javax.transaction.TransactionManager;
+import java.lang.reflect.Method;
import org.hibernate.FlushMode;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.context.spi.CurrentSessionContext;
import org.hibernate.engine.spi.SessionFactoryImplementor;
-import org.hibernate.service.jta.platform.spi.JtaPlatform;
import org.springframework.transaction.support.TransactionSynchronizationManager;
+import org.springframework.util.ReflectionUtils;
/**
* Implementation of Hibernate 3.1's CurrentSessionContext interface
@@ -44,7 +44,7 @@
private final SessionFactoryImplementor sessionFactory;
- private final CurrentSessionContext jtaSessionContext;
+ private CurrentSessionContext jtaSessionContext;
/**
@@ -53,15 +53,24 @@
*/
public SpringSessionContext(SessionFactoryImplementor sessionFactory) {
this.sessionFactory = sessionFactory;
- JtaPlatform jtaPlatform = sessionFactory.getServiceRegistry().getService(JtaPlatform.class);
- TransactionManager transactionManager = jtaPlatform.retrieveTransactionManager();
- this.jtaSessionContext = (transactionManager != null ? new SpringJtaSessionContext(sessionFactory) : null);
+ try {
+ Object jtaPlatform = sessionFactory.getServiceRegistry().getService(ConfigurableJtaPlatform.jtaPlatformClass);
+ Method rtmMethod = ConfigurableJtaPlatform.jtaPlatformClass.getMethod("retrieveTransactionManager");
+ Object transactionManager = ReflectionUtils.invokeMethod(rtmMethod, jtaPlatform);
+ if (transactionManager != null) {
+ this.jtaSessionContext = new SpringJtaSessionContext(sessionFactory);
+ }
+ }
+ catch (Exception ex) {
+ throw new IllegalStateException("Could not introspect Hibernate JtaPlatform for SpringJtaSessionContext", ex);
+ }
}
/**
* Retrieve the Spring-managed Session for the current thread, if any.
*/
+ @Override
public Session currentSession() throws HibernateException {
Object value = TransactionSynchronizationManager.getResource(this.sessionFactory);
if (value instanceof Session) {
@@ -70,15 +79,15 @@
else if (value instanceof SessionHolder) {
SessionHolder sessionHolder = (SessionHolder) value;
Session session = sessionHolder.getSession();
- if (!sessionHolder.isSynchronizedWithTransaction() &&
- TransactionSynchronizationManager.isSynchronizationActive()) {
+ if (TransactionSynchronizationManager.isSynchronizationActive() &&
+ !sessionHolder.isSynchronizedWithTransaction()) {
TransactionSynchronizationManager.registerSynchronization(
new SpringSessionSynchronization(sessionHolder, this.sessionFactory));
sessionHolder.setSynchronizedWithTransaction(true);
// Switch to FlushMode.AUTO, as we have to assume a thread-bound Session
// with FlushMode.MANUAL, which needs to allow flushing within the transaction.
FlushMode flushMode = session.getFlushMode();
- if (FlushMode.isManualFlushMode(flushMode) &&
+ if (flushMode.equals(FlushMode.MANUAL) &&
!TransactionSynchronizationManager.isCurrentTransactionReadOnly()) {
session.setFlushMode(FlushMode.AUTO);
sessionHolder.setPreviousFlushMode(flushMode);
diff -Nru spring-framework-3.2.18.RELEASE/spring-tx/src/main/java/org/springframework/transaction/jta/JtaTransactionManager.java spring-framework-3.2.18.RELEASE.hibernate4.3/spring-tx/src/main/java/org/springframework/transaction/jta/JtaTransactionManager.java
--- spring-framework-3.2.18.RELEASE/spring-tx/src/main/java/org/springframework/transaction/jta/JtaTransactionManager.java 2016-12-21 19:42:08.000000000 +0100
+++ spring-framework-3.2.18.RELEASE.hibernate4.3/spring-tx/src/main/java/org/springframework/transaction/jta/JtaTransactionManager.java 2016-12-22 21:08:45.109820257 +0100
@@ -28,7 +28,6 @@
import javax.transaction.NotSupportedException;
import javax.transaction.RollbackException;
import javax.transaction.Status;
-import javax.transaction.Synchronization;
import javax.transaction.SystemException;
import javax.transaction.Transaction;
import javax.transaction.TransactionManager;
@@ -50,7 +49,6 @@
import org.springframework.transaction.support.DefaultTransactionStatus;
import org.springframework.transaction.support.TransactionSynchronization;
import org.springframework.util.Assert;
-import org.springframework.util.ClassUtils;
import org.springframework.util.StringUtils;
/**
@@ -101,8 +99,8 @@
* JtaTransactionManager autodetects the TransactionSynchronizationRegistry and uses
* it for registering Spring-managed synchronizations when participating in an existing
* JTA transaction (e.g. controlled by EJB CMT). If no TransactionSynchronizationRegistry
- * is available (or the JTA 1.1 API isn't available), then such synchronizations will be
- * registered via the (non-EE) JTA TransactionManager handle.
+ * is available, then such synchronizations will be registered via the (non-EE) JTA
+ * TransactionManager handle.
*
* <p>This class is serializable. However, active synchronizations do not survive serialization.
*
@@ -148,22 +146,6 @@
"java:comp/TransactionSynchronizationRegistry";
- private static final String TRANSACTION_SYNCHRONIZATION_REGISTRY_CLASS_NAME =
- "javax.transaction.TransactionSynchronizationRegistry";
-
- private static Class<?> transactionSynchronizationRegistryClass;
-
- static {
- try {
- transactionSynchronizationRegistryClass = ClassUtils.forName(
- TRANSACTION_SYNCHRONIZATION_REGISTRY_CLASS_NAME, JtaTransactionManager.class.getClassLoader());
- }
- catch (ClassNotFoundException ex) {
- // JTA 1.1 API not available... simply proceed the JTA 1.0 way.
- }
- }
-
-
private transient JndiTemplate jndiTemplate = new JndiTemplate();
private transient UserTransaction userTransaction;
@@ -182,9 +164,11 @@
private boolean autodetectTransactionManager = true;
+ private transient TransactionSynchronizationRegistry transactionSynchronizationRegistry;
+
private String transactionSynchronizationRegistryName;
- private transient Object transactionSynchronizationRegistry;
+ private boolean autodetectTransactionSynchronizationRegistry = true;
private boolean allowCustomIsolationLevels = false;
@@ -352,6 +336,28 @@
}
/**
+ * Set the JTA 1.1 TransactionSynchronizationRegistry to use as direct reference.
+ * <p>A TransactionSynchronizationRegistry allows for interposed registration
+ * of transaction synchronizations, as an alternative to the regular registration
+ * methods on the JTA TransactionManager API. Also, it is an official part of the
+ * Java EE 5 platform, in contrast to the JTA TransactionManager itself.
+ * <p>Note that the TransactionSynchronizationRegistry will be autodetected in JNDI and
+ * also from the UserTransaction/TransactionManager object if implemented there as well.
+ * @see #setTransactionSynchronizationRegistryName
+ * @see #setAutodetectTransactionSynchronizationRegistry
+ */
+ public void setTransactionSynchronizationRegistry(TransactionSynchronizationRegistry transactionSynchronizationRegistry) {
+ this.transactionSynchronizationRegistry = transactionSynchronizationRegistry;
+ }
+
+ /**
+ * Return the JTA 1.1 TransactionSynchronizationRegistry that this transaction manager uses, if any.
+ */
+ public TransactionSynchronizationRegistry getTransactionSynchronizationRegistry() {
+ return this.transactionSynchronizationRegistry;
+ }
+
+ /**
* Set the JNDI name of the JTA TransactionManager.
* <p>A TransactionManager is necessary for suspending and resuming transactions,
* as this not supported by the UserTransaction interface.
@@ -393,6 +399,20 @@
}
/**
+ * Set whether to autodetect a JTA 1.1 TransactionSynchronizationRegistry object
+ * at its default JDNI location ("java:comp/TransactionSynchronizationRegistry")
+ * if the UserTransaction has also been obtained from JNDI, and also whether
+ * to fall back to checking whether the JTA UserTransaction/TransactionManager
+ * object implements the JTA TransactionSynchronizationRegistry interface too.
+ * <p>Default is "true", autodetecting the TransactionSynchronizationRegistry
+ * unless it has been specified explicitly. Can be turned off to delegate
+ * synchronization registration to the regular JTA TransactionManager API.
+ */
+ public void setAutodetectTransactionSynchronizationRegistry(boolean autodetectTransactionSynchronizationRegistry) {
+ this.autodetectTransactionSynchronizationRegistry = autodetectTransactionSynchronizationRegistry;
+ }
+
+ /**
* Set whether to allow custom isolation levels to be specified.
* <p>Default is "false", throwing an exception if a non-default isolation level
* is specified for a transaction. Turn this flag on if affected resource adapters
@@ -410,6 +430,7 @@
* Initialize the UserTransaction as well as the TransactionManager handle.
* @see #initUserTransactionAndTransactionManager()
*/
+ @Override
public void afterPropertiesSet() throws TransactionSystemException {
initUserTransactionAndTransactionManager();
checkUserTransactionAndTransactionManager();
@@ -421,38 +442,36 @@
* @throws TransactionSystemException if initialization failed
*/
protected void initUserTransactionAndTransactionManager() throws TransactionSystemException {
- // Fetch JTA UserTransaction from JNDI, if necessary.
if (this.userTransaction == null) {
+ // Fetch JTA UserTransaction from JNDI, if necessary.
if (StringUtils.hasLength(this.userTransactionName)) {
this.userTransaction = lookupUserTransaction(this.userTransactionName);
this.userTransactionObtainedFromJndi = true;
}
else {
this.userTransaction = retrieveUserTransaction();
+ if (this.userTransaction == null && this.autodetectUserTransaction) {
+ // Autodetect UserTransaction at its default JNDI location.
+ this.userTransaction = findUserTransaction();
+ }
}
}
- // Fetch JTA TransactionManager from JNDI, if necessary.
if (this.transactionManager == null) {
+ // Fetch JTA TransactionManager from JNDI, if necessary.
if (StringUtils.hasLength(this.transactionManagerName)) {
this.transactionManager = lookupTransactionManager(this.transactionManagerName);
}
else {
this.transactionManager = retrieveTransactionManager();
+ if (this.transactionManager == null && this.autodetectTransactionManager) {
+ // Autodetect UserTransaction object that implements TransactionManager,
+ // and check fallback JNDI locations otherwise.
+ this.transactionManager = findTransactionManager(this.userTransaction);
+ }
}
}
- // Autodetect UserTransaction at its default JNDI location.
- if (this.userTransaction == null && this.autodetectUserTransaction) {
- this.userTransaction = findUserTransaction();
- }
-
- // Autodetect UserTransaction object that implements TransactionManager,
- // and check fallback JNDI locations otherwise.
- if (this.transactionManager == null && this.autodetectTransactionManager) {
- this.transactionManager = findTransactionManager(this.userTransaction);
- }
-
// If only JTA TransactionManager specified, create UserTransaction handle for it.
if (this.userTransaction == null && this.transactionManager != null) {
this.userTransaction = buildUserTransaction(this.transactionManager);
@@ -494,15 +513,20 @@
* @throws TransactionSystemException if initialization failed
*/
protected void initTransactionSynchronizationRegistry() {
- if (StringUtils.hasLength(this.transactionSynchronizationRegistryName)) {
- this.transactionSynchronizationRegistry =
- lookupTransactionSynchronizationRegistry(this.transactionSynchronizationRegistryName);
- }
- else {
- this.transactionSynchronizationRegistry = retrieveTransactionSynchronizationRegistry();
- if (this.transactionSynchronizationRegistry == null) {
+ if (this.transactionSynchronizationRegistry == null) {
+ // Fetch JTA TransactionSynchronizationRegistry from JNDI, if necessary.
+ if (StringUtils.hasLength(this.transactionSynchronizationRegistryName)) {
this.transactionSynchronizationRegistry =
- findTransactionSynchronizationRegistry(this.userTransaction, this.transactionManager);
+ lookupTransactionSynchronizationRegistry(this.transactionSynchronizationRegistryName);
+ }
+ else {
+ this.transactionSynchronizationRegistry = retrieveTransactionSynchronizationRegistry();
+ if (this.transactionSynchronizationRegistry == null && this.autodetectTransactionSynchronizationRegistry) {
+ // Autodetect in JNDI if applicable, and check UserTransaction/TransactionManager
+ // object that implements TransactionSynchronizationRegistry otherwise.
+ this.transactionSynchronizationRegistry =
+ findTransactionSynchronizationRegistry(this.userTransaction, this.transactionManager);
+ }
}
}
@@ -586,16 +610,12 @@
* @see #setJndiTemplate
* @see #setTransactionSynchronizationRegistryName
*/
- protected Object lookupTransactionSynchronizationRegistry(String registryName) throws TransactionSystemException {
- if (transactionSynchronizationRegistryClass == null) {
- throw new TransactionSystemException(
- "JTA 1.1 [" + TRANSACTION_SYNCHRONIZATION_REGISTRY_CLASS_NAME + "] API not available");
- }
+ protected TransactionSynchronizationRegistry lookupTransactionSynchronizationRegistry(String registryName) throws TransactionSystemException {
try {
if (logger.isDebugEnabled()) {
logger.debug("Retrieving JTA TransactionSynchronizationRegistry from JNDI location [" + registryName + "]");
}
- return getJndiTemplate().lookup(registryName, transactionSynchronizationRegistryClass);
+ return getJndiTemplate().lookup(registryName, TransactionSynchronizationRegistry.class);
}
catch (NamingException ex) {
throw new TransactionSystemException(
@@ -637,7 +657,7 @@
* or {@code null} if none found
* @throws TransactionSystemException in case of errors
*/
- protected Object retrieveTransactionSynchronizationRegistry() throws TransactionSystemException {
+ protected TransactionSynchronizationRegistry retrieveTransactionSynchronizationRegistry() throws TransactionSystemException {
return null;
}
@@ -712,24 +732,15 @@
* or {@code null} if none found
* @throws TransactionSystemException in case of errors
*/
- protected Object findTransactionSynchronizationRegistry(UserTransaction ut, TransactionManager tm)
+ protected TransactionSynchronizationRegistry findTransactionSynchronizationRegistry(UserTransaction ut, TransactionManager tm)
throws TransactionSystemException {
- if (transactionSynchronizationRegistryClass == null) {
- // JTA 1.1 API not present - skip.
- if (logger.isDebugEnabled()) {
- logger.debug("JTA 1.1 [" + TRANSACTION_SYNCHRONIZATION_REGISTRY_CLASS_NAME + "] API not available");
- }
- return null;
- }
-
- // If we came here, we might be on Java EE 5, since the JTA 1.1 API is present.
if (this.userTransactionObtainedFromJndi) {
// UserTransaction has already been obtained from JNDI, so the
// TransactionSynchronizationRegistry probably sits there as well.
String jndiName = DEFAULT_TRANSACTION_SYNCHRONIZATION_REGISTRY_NAME;
try {
- Object tsr = getJndiTemplate().lookup(jndiName, transactionSynchronizationRegistryClass);
+ TransactionSynchronizationRegistry tsr = getJndiTemplate().lookup(jndiName, TransactionSynchronizationRegistry.class);
if (logger.isDebugEnabled()) {
logger.debug("JTA TransactionSynchronizationRegistry found at default JNDI location [" + jndiName + "]");
}
@@ -742,14 +753,13 @@
}
}
// Check whether the UserTransaction or TransactionManager implements it...
- if (transactionSynchronizationRegistryClass.isInstance(ut)) {
- return ut;
+ if (ut instanceof TransactionSynchronizationRegistry) {
+ return (TransactionSynchronizationRegistry) ut;
}
- if (transactionSynchronizationRegistryClass.isInstance(tm)) {
- return tm;
+ if (tm instanceof TransactionSynchronizationRegistry) {
+ return (TransactionSynchronizationRegistry) tm;
}
- // OK, so no JTA 1.1 TransactionSynchronizationRegistry is available,
- // despite the API being present...
+ // OK, so no JTA 1.1 TransactionSynchronizationRegistry is available...
return null;
}
@@ -1136,7 +1146,7 @@
if (this.transactionSynchronizationRegistry != null) {
// JTA 1.1 TransactionSynchronizationRegistry available - use it.
- new InterposedSynchronizationDelegate().registerInterposedSynchronization(
+ this.transactionSynchronizationRegistry.registerInterposedSynchronization(
new JtaAfterCompletionSynchronization(synchronizations));
}
@@ -1163,6 +1173,7 @@
// Implementation of TransactionFactory interface
//---------------------------------------------------------------------
+ @Override
public Transaction createTransaction(String name, int timeout) throws NotSupportedException, SystemException {
TransactionManager tm = getTransactionManager();
Assert.state(tm != null, "No JTA TransactionManager available");
@@ -1173,6 +1184,7 @@
return new ManagedTransactionAdapter(tm);
}
+ @Override
public boolean supportsResourceAdapterManagedTransactions() {
return false;
}
@@ -1194,16 +1206,4 @@
initTransactionSynchronizationRegistry();
}
-
- /**
- * Inner class to avoid a direct dependency on the JTA 1.1 API
- * (javax.transaction.TransactionSynchronizationRegistry interface).
- */
- private class InterposedSynchronizationDelegate {
-
- public void registerInterposedSynchronization(Synchronization synch) {
- ((TransactionSynchronizationRegistry) transactionSynchronizationRegistry).registerInterposedSynchronization(synch);
- }
- }
-
}

View File

@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- This is a dummy POM added just to ease building in the RPM platforms: -->
<project
xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework</groupId>
<artifactId>spring-project</artifactId>
<packaging>pom</packaging>
<version>3.2.18.RELEASE</version>
<modules>
<module>spring-core</module>
<module>spring-context</module>
<module>spring-context-support</module>
<module>spring-expression</module>
<module>spring-aop</module>
<module>spring-instrument</module>
<module>spring-instrument-tomcat</module>
<module>spring-beans</module>
<module>spring-jdbc</module>
<module>spring-jms</module>
<module>spring-orm</module>
<module>spring-web</module>
<module>spring-tx</module>
<module>spring-oxm</module>
<module>spring-struts</module>
<module>spring-webmvc</module>
<!--<module>spring-test</module>-->
<!--<module>spring-test-mvc</module>-->
<module>spring-webmvc-portlet</module>
</modules>
</project>

Binary file not shown.

View File

@ -0,0 +1,29 @@
From 991d188f7066f82c135555d2ec488d0267aa2d12 Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb@redhat.com>
Date: Wed, 15 Jan 2014 15:09:21 +0100
Subject: [PATCH] Fix exception java.io.IOException is never thrown error
---
.../java/org/springframework/ui/velocity/VelocityEngineFactory.java | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/spring-context-support/src/main/java/org/springframework/ui/velocity/VelocityEngineFactory.java b/spring-context-support/src/main/java/org/springframework/ui/velocity/VelocityEngineFactory.java
index 2e81188..bd57496 100644
--- a/spring-context-support/src/main/java/org/springframework/ui/velocity/VelocityEngineFactory.java
+++ b/spring-context-support/src/main/java/org/springframework/ui/velocity/VelocityEngineFactory.java
@@ -250,9 +250,9 @@ public class VelocityEngineFactory {
// Perform actual initialization.
velocityEngine.init();
}
- catch (IOException ex) {
- throw ex;
- }
+ //catch (IOException ex) {
+ // throw ex;
+ //}
catch (VelocityException ex) {
throw ex;
}
--
1.8.3.1

View File

@ -0,0 +1,29 @@
From 5c154a99226a74430cd244deb2acd37a586fd7a2 Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb@redhat.com>
Date: Fri, 17 Jan 2014 09:05:42 +0100
Subject: [PATCH] Port spring-jms to javax.resources 1.7
---
.../jms/listener/endpoint/JmsMessageEndpointFactory.java | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/spring-jms/src/main/java/org/springframework/jms/listener/endpoint/JmsMessageEndpointFactory.java b/spring-jms/src/main/java/org/springframework/jms/listener/endpoint/JmsMessageEndpointFactory.java
index 954dd49..17e2019 100644
--- a/spring-jms/src/main/java/org/springframework/jms/listener/endpoint/JmsMessageEndpointFactory.java
+++ b/spring-jms/src/main/java/org/springframework/jms/listener/endpoint/JmsMessageEndpointFactory.java
@@ -124,4 +124,12 @@ public class JmsMessageEndpointFactory extends AbstractMessageEndpointFactory {
}
}
+ public String getActivationName() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public Class<?> getEndpointClass() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
}
--
1.8.3.1

View File

@ -0,0 +1,40 @@
From 03c6edd57b8f0275ca344e24bdc5b992c723c987 Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb@redhat.com>
Date: Thu, 16 Jan 2014 11:05:10 +0100
Subject: [PATCH] Port spring-orm to javax.persistence 2.0
---
.../orm/jpa/persistenceunit/MutablePersistenceUnitInfo.java | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/spring-orm/src/main/java/org/springframework/orm/jpa/persistenceunit/MutablePersistenceUnitInfo.java b/spring-orm/src/main/java/org/springframework/orm/jpa/persistenceunit/MutablePersistenceUnitInfo.java
index dd2da77..263e52e 100644
--- a/spring-orm/src/main/java/org/springframework/orm/jpa/persistenceunit/MutablePersistenceUnitInfo.java
+++ b/spring-orm/src/main/java/org/springframework/orm/jpa/persistenceunit/MutablePersistenceUnitInfo.java
@@ -20,6 +20,9 @@ import java.net.URL;
import java.util.LinkedList;
import java.util.List;
import java.util.Properties;
+
+import javax.persistence.SharedCacheMode;
+import javax.persistence.ValidationMode;
import javax.persistence.spi.ClassTransformer;
import javax.persistence.spi.PersistenceUnitTransactionType;
import javax.sql.DataSource;
@@ -208,6 +211,13 @@ public class MutablePersistenceUnitInfo implements SmartPersistenceUnitInfo {
throw new UnsupportedOperationException("getNewTempClassLoader not supported");
}
+ public ValidationMode getValidationMode() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public SharedCacheMode getSharedCacheMode() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
@Override
public String toString() {
--
1.8.3.1

View File

@ -0,0 +1,293 @@
diff --git a/spring-test/src/main/java/org/springframework/mock/web/DelegatingServletInputStream.java b/spring-test/src/main/java/org/springframework/mock/web/DelegatingServletInputStream.java
index f97e60e..74703d6 100644
--- a/spring-test/src/main/java/org/springframework/mock/web/DelegatingServletInputStream.java
+++ b/spring-test/src/main/java/org/springframework/mock/web/DelegatingServletInputStream.java
@@ -18,6 +18,8 @@ package org.springframework.mock.web;
import java.io.IOException;
import java.io.InputStream;
+
+import javax.servlet.ReadListener;
import javax.servlet.ServletInputStream;
import org.springframework.util.Assert;
@@ -63,4 +65,18 @@ public class DelegatingServletInputStream extends ServletInputStream {
this.sourceStream.close();
}
+ @Override
+ public boolean isFinished() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ @Override
+ public boolean isReady() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ @Override
+ public void setReadListener(ReadListener arg0) {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
}
diff --git a/spring-test/src/main/java/org/springframework/mock/web/DelegatingServletOutputStream.java b/spring-test/src/main/java/org/springframework/mock/web/DelegatingServletOutputStream.java
index 2369417..f0d7475 100644
--- a/spring-test/src/main/java/org/springframework/mock/web/DelegatingServletOutputStream.java
+++ b/spring-test/src/main/java/org/springframework/mock/web/DelegatingServletOutputStream.java
@@ -18,7 +18,9 @@ package org.springframework.mock.web;
import java.io.IOException;
import java.io.OutputStream;
+
import javax.servlet.ServletOutputStream;
+import javax.servlet.WriteListener;
import org.springframework.util.Assert;
@@ -68,4 +70,13 @@ public class DelegatingServletOutputStream extends ServletOutputStream {
this.targetStream.close();
}
+ @Override
+ public boolean isReady() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ @Override
+ public void setWriteListener(WriteListener arg0) {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
}
diff --git a/spring-test/src/main/java/org/springframework/mock/web/MockHttpServletRequest.java b/spring-test/src/main/java/org/springframework/mock/web/MockHttpServletRequest.java
index 178dffd..e23ca59 100644
--- a/spring-test/src/main/java/org/springframework/mock/web/MockHttpServletRequest.java
+++ b/spring-test/src/main/java/org/springframework/mock/web/MockHttpServletRequest.java
@@ -36,14 +36,21 @@ import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.Set;
+
+import javax.servlet.AsyncContext;
+import javax.servlet.DispatcherType;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletInputStream;
+import javax.servlet.ServletRequest;
+import javax.servlet.ServletResponse;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
+import javax.servlet.http.HttpUpgradeHandler;
+import javax.servlet.http.Part;
import org.springframework.util.Assert;
import org.springframework.util.LinkedCaseInsensitiveMap;
@@ -914,4 +921,49 @@ public class MockHttpServletRequest implements HttpServletRequest {
this.authType = null;
}
+ public AsyncContext startAsync() throws IllegalStateException {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public AsyncContext startAsync(ServletRequest servletRequest,
+ ServletResponse servletResponse) throws IllegalStateException {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public boolean isAsyncStarted() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public boolean isAsyncSupported() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public AsyncContext getAsyncContext() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public DispatcherType getDispatcherType() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public Collection<Part> getParts() throws IOException, ServletException {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public Part getPart(String name) throws IOException, ServletException {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public long getContentLengthLong() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public String changeSessionId() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public <T extends HttpUpgradeHandler> T upgrade(Class<T> arg0)
+ throws IOException, ServletException {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
}
diff --git a/spring-test/src/main/java/org/springframework/mock/web/MockHttpServletResponse.java b/spring-test/src/main/java/org/springframework/mock/web/MockHttpServletResponse.java
index b575c40..52bf4db 100644
--- a/spring-test/src/main/java/org/springframework/mock/web/MockHttpServletResponse.java
+++ b/spring-test/src/main/java/org/springframework/mock/web/MockHttpServletResponse.java
@@ -29,6 +29,7 @@ import java.util.Collections;
import java.util.List;
import java.util.Locale;
import java.util.Map;
+
import javax.servlet.ServletOutputStream;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletResponse;
@@ -600,4 +601,8 @@ public class MockHttpServletResponse implements HttpServletResponse {
}
}
+
+ public void setContentLengthLong(long arg0) {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
}
diff --git a/spring-test/src/main/java/org/springframework/mock/web/MockServletContext.java b/spring-test/src/main/java/org/springframework/mock/web/MockServletContext.java
index 49b49e5..35303d8 100644
--- a/spring-test/src/main/java/org/springframework/mock/web/MockServletContext.java
+++ b/spring-test/src/main/java/org/springframework/mock/web/MockServletContext.java
@@ -23,20 +23,29 @@ import java.net.MalformedURLException;
import java.net.URL;
import java.util.Collections;
import java.util.Enumeration;
+import java.util.EventListener;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
import java.util.Map;
import java.util.Set;
+
import javax.activation.FileTypeMap;
+import javax.servlet.Filter;
+import javax.servlet.FilterRegistration;
import javax.servlet.RequestDispatcher;
import javax.servlet.Servlet;
import javax.servlet.ServletContext;
+import javax.servlet.ServletException;
+import javax.servlet.ServletRegistration;
+import javax.servlet.ServletRegistration.Dynamic;
+import javax.servlet.SessionCookieConfig;
+import javax.servlet.SessionTrackingMode;
+import javax.servlet.descriptor.JspConfigDescriptor;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-
import org.springframework.core.io.DefaultResourceLoader;
import org.springframework.core.io.Resource;
import org.springframework.core.io.ResourceLoader;
@@ -496,4 +505,100 @@ public class MockServletContext implements ServletContext {
}
}
+
+ public Dynamic addServlet(String servletName, String className) {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public Dynamic addServlet(String servletName, Servlet servlet) {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public Dynamic addServlet(String servletName,
+ Class<? extends Servlet> servletClass) {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public <T extends Servlet> T createServlet(Class<T> clazz)
+ throws ServletException {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public ServletRegistration getServletRegistration(String servletName) {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public Map<String, ? extends ServletRegistration> getServletRegistrations() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public javax.servlet.FilterRegistration.Dynamic addFilter(
+ String filterName, String className) {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public javax.servlet.FilterRegistration.Dynamic addFilter(
+ String filterName, Filter filter) {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public javax.servlet.FilterRegistration.Dynamic addFilter(
+ String filterName, Class<? extends Filter> filterClass) {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public <T extends Filter> T createFilter(Class<T> clazz)
+ throws ServletException {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public FilterRegistration getFilterRegistration(String filterName) {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public Map<String, ? extends FilterRegistration> getFilterRegistrations() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public SessionCookieConfig getSessionCookieConfig() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public void setSessionTrackingModes(
+ Set<SessionTrackingMode> sessionTrackingModes) {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public Set<SessionTrackingMode> getDefaultSessionTrackingModes() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public Set<SessionTrackingMode> getEffectiveSessionTrackingModes() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public void addListener(String className) {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public <T extends EventListener> void addListener(T t) {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public void addListener(Class<? extends EventListener> listenerClass) {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public <T extends EventListener> T createListener(Class<T> clazz)
+ throws ServletException {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public JspConfigDescriptor getJspConfigDescriptor() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public String getVirtualServerName() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
}

View File

@ -0,0 +1,67 @@
From a080bcf000f0fd18996b5f442698b6d0a99e9583 Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb@redhat.com>
Date: Thu, 16 Jan 2014 08:12:12 +0100
Subject: [PATCH] Port to javax.resources 1.7
---
.../jca/endpoint/GenericMessageEndpointFactory.java | 10 +++++++++-
.../springframework/jca/support/SimpleBootstrapContext.java | 11 +++++++++++
2 files changed, 20 insertions(+), 1 deletion(-)
diff --git a/spring-tx/src/main/java/org/springframework/jca/endpoint/GenericMessageEndpointFactory.java b/spring-tx/src/main/java/org/springframework/jca/endpoint/GenericMessageEndpointFactory.java
index 61f8db5..6b9137e 100644
--- a/spring-tx/src/main/java/org/springframework/jca/endpoint/GenericMessageEndpointFactory.java
+++ b/spring-tx/src/main/java/org/springframework/jca/endpoint/GenericMessageEndpointFactory.java
@@ -23,7 +23,6 @@ import javax.transaction.xa.XAResource;
import org.aopalliance.intercept.MethodInterceptor;
import org.aopalliance.intercept.MethodInvocation;
-
import org.springframework.aop.framework.ProxyFactory;
import org.springframework.aop.support.DelegatingIntroductionInterceptor;
import org.springframework.util.ReflectionUtils;
@@ -156,4 +155,13 @@ public class GenericMessageEndpointFactory extends AbstractMessageEndpointFactor
}
}
+
+ public String getActivationName() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public Class<?> getEndpointClass() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
}
diff --git a/spring-tx/src/main/java/org/springframework/jca/support/SimpleBootstrapContext.java b/spring-tx/src/main/java/org/springframework/jca/support/SimpleBootstrapContext.java
index d26fea7..4cf12e4 100644
--- a/spring-tx/src/main/java/org/springframework/jca/support/SimpleBootstrapContext.java
+++ b/spring-tx/src/main/java/org/springframework/jca/support/SimpleBootstrapContext.java
@@ -21,7 +21,9 @@ import java.util.Timer;
import javax.resource.spi.BootstrapContext;
import javax.resource.spi.UnavailableException;
import javax.resource.spi.XATerminator;
+import javax.resource.spi.work.WorkContext;
import javax.resource.spi.work.WorkManager;
+import javax.transaction.TransactionSynchronizationRegistry;
/**
* Simple implementation of the JCA 1.5 {@link javax.resource.spi.BootstrapContext}
@@ -77,4 +79,13 @@ public class SimpleBootstrapContext implements BootstrapContext {
return new Timer();
}
+ public boolean isContextSupported(
+ Class<? extends WorkContext> workContextClass) {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
+ public TransactionSynchronizationRegistry getTransactionSynchronizationRegistry() {
+ throw new UnsupportedOperationException("Not implemented yet");
+ }
+
}
--
1.8.3.1

View File

@ -0,0 +1,176 @@
From dcdec16e48847501a11d1015a08e1b81b70f91cd Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb@redhat.com>
Date: Wed, 15 Jan 2014 09:26:34 +0100
Subject: [PATCH] Port to hibernate validator 5
---
.../MessageSourceResourceBundleLocator.java | 2 +-
.../MethodValidationInterceptor.java | 89 ++++++++++++++++------
2 files changed, 66 insertions(+), 25 deletions(-)
diff --git a/spring-context/src/main/java/org/springframework/validation/beanvalidation/MessageSourceResourceBundleLocator.java b/spring-context/src/main/java/org/springframework/validation/beanvalidation/MessageSourceResourceBundleLocator.java
index 83c538e..dc73118 100644
--- a/spring-context/src/main/java/org/springframework/validation/beanvalidation/MessageSourceResourceBundleLocator.java
+++ b/spring-context/src/main/java/org/springframework/validation/beanvalidation/MessageSourceResourceBundleLocator.java
@@ -19,7 +19,7 @@ package org.springframework.validation.beanvalidation;
import java.util.Locale;
import java.util.ResourceBundle;
-import org.hibernate.validator.resourceloading.ResourceBundleLocator;
+import org.hibernate.validator.spi.resourceloading.ResourceBundleLocator;
import org.springframework.context.MessageSource;
import org.springframework.context.support.MessageSourceResourceBundle;
diff --git a/spring-context/src/main/java/org/springframework/validation/beanvalidation/MethodValidationInterceptor.java b/spring-context/src/main/java/org/springframework/validation/beanvalidation/MethodValidationInterceptor.java
index 3d4b907..83bb184 100644
--- a/spring-context/src/main/java/org/springframework/validation/beanvalidation/MethodValidationInterceptor.java
+++ b/spring-context/src/main/java/org/springframework/validation/beanvalidation/MethodValidationInterceptor.java
@@ -16,7 +16,11 @@
package org.springframework.validation.beanvalidation;
+import java.lang.reflect.Method;
import java.util.Set;
+
+import javax.validation.ConstraintViolation;
+import javax.validation.ConstraintViolationException;
import javax.validation.Validation;
import javax.validation.Validator;
import javax.validation.ValidatorFactory;
@@ -24,11 +28,8 @@ import javax.validation.ValidatorFactory;
import org.aopalliance.intercept.MethodInterceptor;
import org.aopalliance.intercept.MethodInvocation;
import org.hibernate.validator.HibernateValidator;
-import org.hibernate.validator.method.MethodConstraintViolation;
-import org.hibernate.validator.method.MethodConstraintViolationException;
-import org.hibernate.validator.method.MethodValidator;
-
import org.springframework.core.annotation.AnnotationUtils;
+import org.springframework.util.ReflectionUtils;
import org.springframework.validation.annotation.Validated;
/**
@@ -45,25 +46,48 @@ import org.springframework.validation.annotation.Validated;
* at the type level of the containing target class, applying to all public service methods
* of that class. By default, JSR-303 will validate against its default group only.
*
- * <p>As of Spring 3.1, this functionality requires Hibernate Validator 4.2 or higher.
- * Once Bean Validation 1.1 becomes available, this class will autodetect a compliant
- * provider and automatically use the standard method validation support there.
+ * <p>As of Spring 4.0, this functionality requires either a Bean Validation 1.1 provider
+ * (such as Hibernate Validator 5.0) or the Bean Validation 1.0 API with Hibernate Validator
+ * 4.2 or 4.3. The actual provider will be autodetected and automatically adapted.
*
* @author Juergen Hoeller
* @since 3.1
* @see MethodValidationPostProcessor
+ * @see javax.validation.executable.ExecutableValidator
* @see org.hibernate.validator.method.MethodValidator
*/
public class MethodValidationInterceptor implements MethodInterceptor {
- private final MethodValidator validator;
+ private static Method forExecutablesMethod;
+
+ private static Method validateParametersMethod;
+
+ private static Method validateReturnValueMethod;
+
+ static {
+ try {
+ forExecutablesMethod = Validator.class.getMethod("forExecutables");
+ Class<?> executableValidatorClass = forExecutablesMethod.getReturnType();
+ validateParametersMethod = executableValidatorClass.getMethod(
+ "validateParameters", Object.class, Method.class, Object[].class, Class[].class);
+ validateReturnValueMethod = executableValidatorClass.getMethod(
+ "validateReturnValue", Object.class, Method.class, Object.class, Class[].class);
+ }
+ catch (Exception ex) {
+ // Bean Validation 1.1 ExecutableValidator API not available
+ }
+ }
+
+
+ private final Validator validator;
/**
* Create a new MethodValidationInterceptor using a default JSR-303 validator underneath.
*/
public MethodValidationInterceptor() {
- this(Validation.byProvider(HibernateValidator.class).configure().buildValidatorFactory());
+ this(forExecutablesMethod != null ? Validation.buildDefaultValidatorFactory() :
+ HibernateValidatorDelegate.buildValidatorFactory());
}
/**
@@ -79,24 +103,32 @@ public class MethodValidationInterceptor implements MethodInterceptor {
* @param validator the JSR-303 Validator to use
*/
public MethodValidationInterceptor(Validator validator) {
- this.validator = validator.unwrap(MethodValidator.class);
+ this.validator = validator;
}
+ @SuppressWarnings("unchecked")
public Object invoke(MethodInvocation invocation) throws Throwable {
- Class[] groups = determineValidationGroups(invocation);
- Set<MethodConstraintViolation<Object>> result = this.validator.validateAllParameters(
- invocation.getThis(), invocation.getMethod(), invocation.getArguments(), groups);
- if (!result.isEmpty()) {
- throw new MethodConstraintViolationException(result);
- }
- Object returnValue = invocation.proceed();
- result = this.validator.validateReturnValue(
- invocation.getThis(), invocation.getMethod(), returnValue, groups);
- if (!result.isEmpty()) {
- throw new MethodConstraintViolationException(result);
+ Class<?>[] groups = determineValidationGroups(invocation);
+ if (forExecutablesMethod != null) {
+ Object executableValidator = ReflectionUtils.invokeMethod(forExecutablesMethod, this.validator);
+ Set<ConstraintViolation<?>> result = (Set<ConstraintViolation<?>>)
+ ReflectionUtils.invokeMethod(validateParametersMethod, executableValidator,
+ invocation.getThis(), invocation.getMethod(), invocation.getArguments(), groups);
+ if (!result.isEmpty()) {
+ throw new ConstraintViolationException(result);
+ }
+ Object returnValue = invocation.proceed();
+ result = (Set<ConstraintViolation<?>>)
+ ReflectionUtils.invokeMethod(validateReturnValueMethod, executableValidator,
+ invocation.getThis(), invocation.getMethod(), returnValue, groups);
+ if (!result.isEmpty()) {
+ throw new ConstraintViolationException(result);
+ }
+ return returnValue;
}
- return returnValue;
+
+ return invocation.proceed();
}
/**
@@ -106,9 +138,18 @@ public class MethodValidationInterceptor implements MethodInterceptor {
* @param invocation the current MethodInvocation
* @return the applicable validation groups as a Class array
*/
- protected Class[] determineValidationGroups(MethodInvocation invocation) {
+ protected Class<?>[] determineValidationGroups(MethodInvocation invocation) {
Validated valid = AnnotationUtils.findAnnotation(invocation.getThis().getClass(), Validated.class);
- return (valid != null ? valid.value() : new Class[0]);
+ return (valid != null ? valid.value() : new Class<?>[0]);
}
+ /**
+ * Inner class to avoid a hard-coded Hibernate Validator 4.2/4.3 dependency.
+ */
+ private static class HibernateValidatorDelegate {
+
+ public static ValidatorFactory buildValidatorFactory() {
+ return Validation.byProvider(HibernateValidator.class).configure().buildValidatorFactory();
+ }
+ }
}
--
1.8.3.1

431
springframework.spec Normal file
View File

@ -0,0 +1,431 @@
Name: springframework
Version: 3.2.18
Release: 5
Summary: The Spring Java Application Framework
Epoch: 0
License: ASL 2.0
URL: http://projects.spring.io/spring-framework/
Source0: https://github.com/spring-projects/spring-framework/archive/v3.2.18.RELEASE/springframework-3.2.18.RELEASE.tar.gz
Source101: springframework-3.2.18.RELEASE.pom
Source102: https://repo1.maven.org/maven2/org/springframework/spring-core/3.2.18.RELEASE/spring-core-3.2.18.RELEASE.pom
Source103: https://repo1.maven.org/maven2/org/springframework/spring-expression/3.2.18.RELEASE/spring-expression-3.2.18.RELEASE.pom
Source104: https://repo1.maven.org/maven2/org/springframework/spring-context/3.2.18.RELEASE/spring-context-3.2.18.RELEASE.pom
Source105: https://repo1.maven.org/maven2/org/springframework/spring-aop/3.2.18.RELEASE/spring-aop-3.2.18.RELEASE.pom
Source106: https://repo1.maven.org/maven2/org/springframework/spring-instrument/3.2.18.RELEASE/spring-instrument-3.2.18.RELEASE.pom
Source107: https://repo1.maven.org/maven2/org/springframework/spring-beans/3.2.18.RELEASE/spring-beans-3.2.18.RELEASE.pom
Source108: https://repo1.maven.org/maven2/org/springframework/spring-orm/3.2.18.RELEASE/spring-orm-3.2.18.RELEASE.pom
Source109: https://repo1.maven.org/maven2/org/springframework/spring-test/3.2.18.RELEASE/spring-test-3.2.18.RELEASE.pom
Source110: https://repo1.maven.org/maven2/org/springframework/spring-context-support/3.2.18.RELEASE/spring-context-support-3.2.18.RELEASE.pom
Source111: https://repo1.maven.org/maven2/org/springframework/spring-instrument-tomcat/3.2.18.RELEASE/spring-instrument-tomcat-3.2.18.RELEASE.pom
Source112: https://repo1.maven.org/maven2/org/springframework/spring-jdbc/3.2.18.RELEASE/spring-jdbc-3.2.18.RELEASE.pom
Source113: https://repo1.maven.org/maven2/org/springframework/spring-jms/3.2.18.RELEASE/spring-jms-3.2.18.RELEASE.pom
Source114: https://repo1.maven.org/maven2/org/springframework/spring-tx/3.2.18.RELEASE/spring-tx-3.2.18.RELEASE.pom
Source115: https://repo1.maven.org/maven2/org/springframework/spring-web/3.2.18.RELEASE/spring-web-3.2.18.RELEASE.pom
Source116: https://repo1.maven.org/maven2/org/springframework/spring-oxm/3.2.18.RELEASE/spring-oxm-3.2.18.RELEASE.pom
Source117: https://repo1.maven.org/maven2/org/springframework/spring-struts/3.2.18.RELEASE/spring-struts-3.2.18.RELEASE.pom
Source118: https://repo1.maven.org/maven2/org/springframework/spring-webmvc/3.2.18.RELEASE/spring-webmvc-3.2.18.RELEASE.pom
Source119: https://repo1.maven.org/maven2/org/springframework/spring-webmvc-portlet/3.2.18.RELEASE/spring-webmvc-portlet-3.2.18.RELEASE.pom
Source120: spring-test-mvc-3.2.18.RELEASE.pom
Source121: spring-orm-hibernate4-template.pom
Patch0: springframework-3.2.6-java.io.IOException-is-never-thrown.patch
Patch1: springframework-3.2.6-port-spring-jms-to-javax.resources-1.7.patch
Patch2: springframework-3.2.6-port-spring-orm-to-javax.persistence-2.0.patch
Patch3: springframework-3.2.6-port-spring-test-to-servlet-3.1.patch
Patch4: springframework-3.2.6-port-spring-tx-to-javax.resources-1.7.patch
Patch5: springframework-3.2.6-port-to-hibernate-validator-5.patch
Patch6: springframework-3.2.13-derby.patch
Patch7: springframework-3.2.14-jopt-simple.patch
Patch8: springframework-3.2.14-build-with-tomcat8.patch
Patch9: springframework-3.2.18-hibernate4.3.patch
BuildRequires: maven-local mvn(aopalliance:aopalliance) mvn(c3p0:c3p0) mvn(com.caucho:hessian)
BuildRequires: mvn(com.fasterxml.jackson.core:jackson-databind) mvn(com.h2database:h2)
BuildRequires: mvn(com.jamonapi:jamon) mvn(com.lowagie:itext) mvn(com.rometools:rome)
BuildRequires: mvn(commons-beanutils:commons-beanutils)
BuildRequires: mvn(commons-fileupload:commons-fileupload)
BuildRequires: mvn(commons-httpclient:commons-httpclient) mvn(commons-io:commons-io)
BuildRequires: mvn(commons-logging:commons-logging) mvn(commons-pool:commons-pool)
BuildRequires: mvn(com.thoughtworks.xstream:xstream) mvn(hsqldb:hsqldb:1)
BuildRequires: mvn(jasperreports:jasperreports) mvn(javax.ejb:ejb-api)
BuildRequires: mvn(javax.faces:jsf-api) mvn(javax.inject:javax.inject) mvn(javax.jdo:jdo-api)
BuildRequires: mvn(javax.mail:mail) mvn(javax.portlet:portlet-api)
BuildRequires: mvn(javax.servlet:javax.servlet-api) mvn(javax.servlet.jsp:jsp-api)
BuildRequires: mvn(javax.servlet:jstl) mvn(javax.servlet:servlet-api)
BuildRequires: mvn(javax.xml:jaxrpc-api) mvn(javax.xml.soap:saaj-api) mvn(joda-time:joda-time)
BuildRequires: mvn(junit:junit) mvn(log4j:log4j) mvn(net.sf.cglib:cglib)
BuildRequires: mvn(net.sf.ehcache:ehcache-core) mvn(net.sourceforge.jexcelapi:jxl)
BuildRequires: mvn(org.apache.derby:derby) mvn(org.apache.derby:derbyclient)
BuildRequires: mvn(org.apache.felix:maven-bundle-plugin)
BuildRequires: mvn(org.apache.geronimo.specs:geronimo-interceptor_3.0_spec)
BuildRequires: mvn(org.apache.geronimo.specs:geronimo-jms_1.1_spec)
BuildRequires: mvn(org.apache.geronimo.specs:geronimo-jta_1.1_spec)
BuildRequires: mvn(org.apache.geronimo.specs:geronimo-validation_1.0_spec)
BuildRequires: mvn(org.apache.httpcomponents:httpclient) mvn(org.apache.openjpa:openjpa-lib)
BuildRequires: mvn(org.apache.openjpa:openjpa-persistence) mvn(org.apache.poi:poi)
BuildRequires: mvn(org.apache.struts:struts-core) mvn(org.apache.struts:struts-extras)
BuildRequires: mvn(org.apache.struts:struts-tiles) mvn(org.apache.tiles:tiles-api)
BuildRequires: mvn(org.apache.tiles:tiles-core) mvn(org.apache.tiles:tiles-el)
BuildRequires: mvn(org.apache.tiles:tiles-jsp) mvn(org.apache.tiles:tiles-servlet)
BuildRequires: mvn(org.apache.tomcat:tomcat-catalina) mvn(org.apache.tomcat:tomcat-el-api)
BuildRequires: mvn(org.apache.tomcat:tomcat-jsp-api) mvn(org.apache.tomcat:tomcat-servlet-api)
BuildRequires: mvn(org.apache.xmlbeans:xmlbeans) mvn(org.aspectj:aspectjweaver)
BuildRequires: mvn(org.beanshell:bsh) mvn(org.codehaus.castor:castor-xml)
BuildRequires: mvn(org.codehaus.groovy:groovy) mvn(org.codehaus.jackson:jackson-mapper-asl)
BuildRequires: mvn(org.eclipse.jetty:jetty-server) mvn(org.eclipse.jetty:jetty-servlet)
BuildRequires: mvn(org.eclipse.persistence:org.eclipse.persistence.core)
BuildRequires: mvn(org.eclipse.persistence:org.eclipse.persistence.jpa)
BuildRequires: mvn(org.freemarker:freemarker) mvn(org.hamcrest:hamcrest-core)
BuildRequires: mvn(org.hibernate:hibernate-core:4) mvn(org.hibernate:hibernate-core:3)
BuildRequires: mvn(org.hibernate:hibernate-entitymanager:4)
BuildRequires: mvn(org.hibernate:hibernate-entitymanager:3)
BuildRequires: mvn(org.hibernate:hibernate-validator)
BuildRequires: mvn(org.hibernate.javax.persistence:hibernate-jpa-2.0-api)
BuildRequires: mvn(org.hibernate.javax.persistence:hibernate-jpa-2.1-api)
BuildRequires: mvn(org.jboss.spec.javax.resource:jboss-connector-api_1.7_spec)
BuildRequires: mvn(org.jibx:jibx-run) mvn(org.jruby.extras:bytelist) mvn(org.jruby:jruby)
BuildRequires: mvn(org.ow2.asm:asm) mvn(org.quartz-scheduler:quartz) mvn(org.slf4j:slf4j-api)
BuildRequires: mvn(org.testng:testng) mvn(toplink.essentials:toplink-essentials)
BuildRequires: mvn(velocity-tools:velocity-tools-view) mvn(velocity:velocity)
BuildRequires: mvn(xmlunit:xmlunit) mvn(org.apache.taglibs:taglibs-standard-jstlel)
BuildRequires: mvn(javax.servlet:jstl) mvn(org.apache.taglibs:taglibs-standard-spec)
BuildRequires: mvn(com.jayway.jsonpath:json-path) mvn(net.sf.jopt-simple:jopt-simple) xmvn
Obsoletes: springframework-instrument-tomcat < %{version}-%{release}
BuildArch: noarch
%description
The spring is based on code pubilshed in Expert One-on-One J2EE Design and Dvelopment
by Rod Johnson (Wrox, 2002).it is a layered Java/J2ee application framework.
%package help
Summary: Provides the Javadoc for springframework
Provides: springframework-javadoc = %{version}-%{release}
Obsoletes: springframework-javadoc < %{version}-%{release}
%description help
This help package provide the javadoc for springframework.
%package aop
Summary: Provode the Spring Aspect Oriented Framework
%description aop
The package is an enabling technology,it allows the implementation of custom
aspects and provides declarative transaction management without EJB.
%package beans
Summary: Provide the Spring Bean Factory
%description beans
The Package provides an advanced configuration mechanism capable of
managing beans of any nature, using potentially any kind of storage facility.
%package context
Summary: Provide the Spring Application Context
%description context
The package is a complete superset of a bean factory, and
adds enhanced capabilities to it, some of them more J2EE and
enterprise-centric.
%package context-support
Summary: Spring Context Support
%description context-support
This package provide Quartz/CommonJ scheduling,
UI templating, mail and caching.
%package expression
Summary: Spring Expression Language (SpEL)
%description expression
The package is a powerful expression
language that supports querying and manipulating an object graph at runtime.
%package instrument
Summary: Spring Instrumentation
%description instrument
The Package exposes performance and
resource utilization metrics for the Spring container and
gives you runtime control of the container.
%package jdbc
Summary: Spring JDBC
%description jdbc
The jdbc takes care of all the low-level details associated to the
development with JDBC.
%package jms
Summary: Spring jms
%description jms
Spring jms provide Java Message Service 1.0.2/1.1 support.
%package orm
Summary: Spring ORM
%description orm
Spring orm provide JDO support, JPA support, Hibernate
support, TopLink support.
%package orm-hibernate4
Summary: Spring ORM Hibernate 4 Support
%description orm-hibernate4
orm-hibernate4 provide Hibernate 4 support.
%package oxm
Summary: Spring OXM
%description oxm
This package provide marshaling and unmarshalling
for XML with JAXB context and JiBX binding factories.
%package struts
Summary: Spring Web Struts
%description struts
This package provide integrate a Struts
application with Spring
%package devel
Summary: Spring test context and MVC framework
Provides: springframework-test = %{version}-%{release}
Provides: springframework-test-mvc = %{version}-%{release}
Obsoletes: springframework-test < %{version}-%{release}
Obsoletes: springframework-test-mvc < %{version}-%{release}
%description devel
Spring's test MVC framework and Spring's test context framework. Also includes common Servlet and
Portlet API mocks.
%package tx
Summary: Spring Transaction Management
%description tx
Spring provides a consistent abstraction for transaction management that
provides a consistent programming model across different transaction APIs,
supports declarative transaction management, provides a simpler API for
programmatic transaction management and integrates with Spring's various data
access abstractions.
%package web
Summary: Spring Web
%description web
This package provide web application context, multipart
resolver, HTTP-based remoting support.
%package webmvc
Summary: Spring Web Servlet
%description webmvc
This package provide framework servlets, web MVC framework,
web controllers, web views for JSP, Velocity, Tiles,
iText and POI.
%package webmvc-portlet
Summary: Spring Web Portlet
%description webmvc-portlet
This package provide support development of Portlet
applications with Spring.
%prep
%autosetup -n spring-framework-3.2.18.RELEASE -p1
find -name "*.class" -delete
find -name "*.jar" -print -delete
cp %{SOURCE101} pom.xml
cp %{SOURCE102} spring-core/pom.xml
cp %{SOURCE103} spring-expression/pom.xml
cp %{SOURCE104} spring-context/pom.xml
cp %{SOURCE105} spring-aop/pom.xml
cp %{SOURCE106} spring-instrument/pom.xml
cp %{SOURCE107} spring-beans/pom.xml
cp %{SOURCE108} spring-orm/pom.xml
cp %{SOURCE109} spring-test/pom.xml
cp %{SOURCE110} spring-context-support/pom.xml
%pom_disable_module spring-instrument-tomcat
cp %{SOURCE112} spring-jdbc/pom.xml
cp %{SOURCE113} spring-jms/pom.xml
cp %{SOURCE114} spring-tx/pom.xml
cp %{SOURCE115} spring-web/pom.xml
cp %{SOURCE116} spring-oxm/pom.xml
cp %{SOURCE117} spring-struts/pom.xml
cp %{SOURCE118} spring-webmvc/pom.xml
cp %{SOURCE119} spring-webmvc-portlet/pom.xml
cp %{SOURCE120} spring-test-mvc/pom.xml
cp %{SOURCE121} spring-orm-hibernate4/pom.xml
sed -i "s|@VERSION@|3.2.18.RELEASE|" spring-orm-hibernate4/pom.xml
%pom_xpath_inject pom:modules "<module>spring-orm-hibernate4</module>"
%pom_change_dep -r org.hibernate: ::4 spring-orm-hibernate4
%pom_remove_dep :hibernate-entitymanager spring-orm
%pom_add_dep org.hibernate:hibernate-entitymanager:3 spring-orm
%pom_remove_dep :hibernate-core spring-orm
%pom_add_dep org.hibernate:hibernate-core:3 spring-orm
%pom_remove_dep struts:struts spring-struts
%pom_add_dep org.apache.struts:struts-core spring-struts
%pom_add_dep org.apache.struts:struts-extras spring-struts
%pom_add_dep org.apache.struts:struts-tiles spring-struts
%pom_remove_dep org.apache.tiles:tiles-extras spring-webmvc
%pom_change_dep :tiles-el ::2.1.2 spring-webmvc
%pom_remove_dep ::3.0.4 spring-webmvc
%pom_remove_dep javax.resource:connector-api spring-tx
%pom_add_dep org.jboss.spec.javax.resource:jboss-connector-api_1.7_spec spring-tx
%pom_remove_dep com.ibm.websphere:uow spring-tx
rm spring-tx/src/main/java/org/springframework/transaction/jta/WebSphereUowTransactionManager.java \
spring-tx/src/test/java/org/springframework/transaction/jta/WebSphereUowTransactionManagerTests.java
%pom_remove_dep :hibernate-annotations spring-orm
%pom_remove_dep :hibernate-core spring-orm
%pom_add_dep org.hibernate:hibernate-core:3 spring-orm
rm -rf spring-orm/src/main/java/org/springframework/orm/ibatis/*
%pom_remove_dep :ibatis-sqlmap spring-orm
%pom_remove_dep :openjpa spring-orm
%pom_add_dep org.apache.openjpa:openjpa-lib spring-orm
%pom_add_dep org.apache.openjpa:openjpa-persistence spring-orm
%pom_remove_dep javax.resource:connector-api spring-jms
%pom_add_dep org.jboss.spec.javax.resource:jboss-connector-api_1.7_spec spring-jms
%pom_remove_dep hsqldb:hsqldb spring-jdbc
%pom_add_dep hsqldb:hsqldb:1 spring-jdbc
rm -Rf spring-context-support/src/main/java/org/springframework/cache/jcache/
%pom_remove_dep javax.cache:cache-api spring-context-support
rm -Rf spring-context-support/src/main/java/org/springframework/scheduling/
%pom_remove_dep org.codehaus.fabric3.api:commonj spring-context-support
file = 'beans,web,webmvc'
for p in ${file};
do
%pom_remove_dep :el-api spring-${p}
%pom_add_dep org.apache.tomcat:tomcat-el-api spring-${p}
done
%pom_remove_dep :persistence-api spring-context
%pom_add_dep org.hibernate.javax.persistence:hibernate-jpa-2.0-api spring-context
%pom_remove_dep :validation-api spring-context
%pom_add_dep org.apache.geronimo.specs:geronimo-validation_1.0_spec spring-context
%pom_add_dep org.apache.geronimo.specs:geronimo-interceptor_3.0_spec spring-context
%pom_add_dep org.jruby.extras:bytelist spring-context
%pom_remove_dep :persistence-api spring-orm
%pom_add_dep org.hibernate.javax.persistence:hibernate-jpa-2.0-api spring-orm
%pom_remove_dep javax.servlet:servlet-api spring-orm
%pom_add_dep org.apache.tomcat:tomcat-servlet-api spring-context
%pom_remove_dep :persistence-api spring-test
%pom_add_dep org.apache.tomcat:tomcat-el-api spring-test
%pom_remove_dep javax.servlet.jsp:jsp-api spring-test
%pom_add_dep org.apache.tomcat:tomcat-jsp-api spring-test
%pom_remove_dep -r javax.activation:activation
%pom_add_dep org.apache.taglibs:taglibs-standard-jstlel spring-test '<optional>true</optional>'
%pom_add_dep javax.servlet:jstl spring-web '<optional>true</optional>'
%pom_remove_dep taglibs:standard spring-web
%pom_add_dep org.apache.taglibs:taglibs-standard-spec spring-webmvc '<optional>true</optional>'
rm spring-context/src/main/java/org/springframework/scripting/bsh/BshScriptFactory.java
rm spring-context/src/main/java/org/springframework/scripting/bsh/BshScriptUtils.java
%pom_remove_dep :backport-util-concurrent spring-context
%pom_add_dep org.ow2.asm:asm spring-core
%pom_add_dep net.sf.cglib:cglib:4.2 spring-core
%pom_xpath_set "pom:dependencies/pom:dependency[pom:groupId = 'org.codehaus.groovy']/pom:artifactId" groovy spring-context
find ./ -name "*.java" -exec sed -i "s/org.springframework.asm/org.objectweb.asm/g" {} +
find ./ -name "*.java" -exec sed -i "s/org.springframework.cglib/net.sf.cglib/g" {} +
find ./ -name "*.java" -exec sed -i "/edu.emory.mathcs.backport/d" {} +
%pom_change_dep -r :rome com.rometools: spring-test-mvc spring-web spring-webmvc
find ./spring-test-mvc -name "*.java" -exec sed -i "s/com.sun.syndication/com.rometools.rome/g" {} +
find ./spring-web -name "*.java" -exec sed -i "s/com.sun.syndication/com.rometools.rome/g" {} +
find ./spring-webmvc -name "*.java" -exec sed -i "s/com.sun.syndication/com.rometools.rome/g" {} +
rm spring-context/src/main/java/org/springframework/scheduling/backportconcurrent/*
cp -p src/dist/* .
mkdir -p spring-context/src/main/resources/org/springframework/remoting/rmi
cp -p spring-context/src/main/java/org/springframework/remoting/rmi/RmiInvocationWrapperRTD.xml \
spring-context/src/main/resources/org/springframework/remoting/rmi/
mkdir -p spring-context-support/src/main/resources/org/springframework/mail/javamail
cp -p spring-context-support/src/main/java/org/springframework/mail/javamail/mime.types \
spring-context-support/src/main/resources/org/springframework/mail/javamail/
mkdir -p spring-web/src/main/resources/org/springframework/web/context
cp -p spring-web/src/main/java/org/springframework/web/context/ContextLoader.properties \
spring-web/src/main/resources/org/springframework/web/context/
mkdir -p spring-webmvc/src/main/resources/org/springframework/web/servlet/view/velocity
cp -p spring-webmvc/src/main/java/org/springframework/web/servlet/DispatcherServlet.properties \
spring-webmvc/src/main/resources/org/springframework/web/servlet/
cp -p spring-webmvc/src/main/java/org/springframework/web/servlet/view/velocity/spring.vm \
spring-webmvc/src/main/resources/org/springframework/web/servlet/view/velocity
mkdir -p spring-webmvc/src/main/resources/org/springframework/web/servlet/view/freemarker
cp -p spring-webmvc/src/main/java/org/springframework/web/servlet/view/freemarker/spring.ftl \
spring-webmvc/src/main/resources/org/springframework/web/servlet/view/freemarker/
mkdir -p spring-webmvc-portlet/src/main/resources/org/springframework/web/portlet
cp -p spring-webmvc-portlet/src/main/java/org/springframework/web/portlet/DispatcherPortlet.properties \
spring-webmvc-portlet/src/main/resources/org/springframework/web/portlet/
for p in aop beans context context-support core \
expression instrument jdbc jms orm oxm struts \
test test-mvc tx web webmvc webmvc-portlet;
do
%pom_xpath_inject "pom:project" "<packaging>bundle</packaging>" spring-${p}
%pom_add_plugin org.apache.felix:maven-bundle-plugin:2.5.4 spring-${p} "
<extensions>true</extensions>
<configuration>
<instructions>
<Bundle-SymbolicName>\${project.groupId}.${p}</Bundle-SymbolicName>
<Bundle-Name>\${project.name}</Bundle-Name>
<Bundle-Version>\${project.version}</Bundle-Version>
</instructions>
</configuration>
<executions>
<execution>
<id>bundle-manifest</id>
<phase>process-classes</phase>
<goals>
<goal>manifest</goal>
</goals>
</execution>
</executions>"
done
%pom_xpath_inject "pom:project" "<packaging>bundle</packaging>" spring-orm-hibernate4
%pom_add_plugin org.apache.felix:maven-bundle-plugin:2.5.4 spring-orm-hibernate4 "
<extensions>true</extensions>
<configuration>
<instructions>
<Bundle-SymbolicName>\${project.groupId}.orm.hibernate4</Bundle-SymbolicName>
<Bundle-Name>\${project.name}</Bundle-Name>
<Bundle-Version>\${project.version}</Bundle-Version>
</instructions>
</configuration>
<executions>
<execution>
<id>bundle-manifest</id>
<phase>process-classes</phase>
<goals>
<goal>manifest</goal>
</goals>
</execution>
</executions>"
%mvn_package ":spring-core" springframework
%mvn_package :spring-project __noinstall
%build
%mvn_build -X -f -s -- -Dproject.build.sourceEncoding=ISO-8859-1 -Dmaven.test.skip=true
%install
%mvn_install -- -Dmaven.test.skip=true
%files -f .mfiles-springframework
%license license.txt notice.txt
%files help -f .mfiles-javadoc
%doc README.md
%license license.txt notice.txt
%files aop -f .mfiles-spring-aop
%files beans -f .mfiles-spring-beans
%files context -f .mfiles-spring-context
%files context-support -f .mfiles-spring-context-support
%files expression -f .mfiles-spring-expression
%files instrument -f .mfiles-spring-instrument
%license license.txt notice.txt
%files jdbc -f .mfiles-spring-jdbc
%files jms -f .mfiles-spring-jms
%files orm -f .mfiles-spring-orm
%files orm-hibernate4 -f .mfiles-spring-orm-hibernate4
%files oxm -f .mfiles-spring-oxm
%files struts -f .mfiles-spring-struts
%files tx -f .mfiles-spring-tx
%files web -f .mfiles-spring-web
%files webmvc -f .mfiles-spring-webmvc
%files webmvc-portlet -f .mfiles-spring-webmvc-portlet
%changelog
* Tue Jun 9 2020 yaokai <yaoaki13@huawei.com> - 3.2.18-5
- package init