Merge pull request #1646 from 4Science/DS-3482

Add the spring-rest overlay to allow building of the new rest7
This commit is contained in:
Tim Donohue
2017-02-23 10:34:40 -06:00
committed by GitHub
5 changed files with 139 additions and 10 deletions

View File

@@ -22,13 +22,14 @@
# DSpace Settings # DSpace Settings
# #
# DSpace installation directory # DSpace installation directory
dspace.dir=d:/install/dspace7 dspace.dir=${dspace.dir}
#dspace.dir=d:/install/dspace7
######################## ########################
# Spring Boot Settings # Spring Boot Settings
# #
# Testing an "application Name" # Testing an "application Name"
spring.application.name = DSpace Spring Data Rest spring.application.name = DSpace Spring Rest
######################## ########################
# Spring DATA Rest settings # Spring DATA Rest settings

View File

@@ -83,7 +83,7 @@
<module>swordv2</module> <module>swordv2</module>
</modules> </modules>
</profile> </profile>
<profile> <!-- <profile>
<id>dspace-solr</id> <id>dspace-solr</id>
<activation> <activation>
<file> <file>
@@ -94,7 +94,7 @@
<module>solr</module> <module>solr</module>
</modules> </modules>
</profile> </profile>
<profile> --> <profile>
<id>dspace-oai</id> <id>dspace-oai</id>
<activation> <activation>
<file> <file>
@@ -105,5 +105,16 @@
<module>oai</module> <module>oai</module>
</modules> </modules>
</profile> </profile>
<profile>
<id>dspace-spring-rest</id>
<activation>
<file>
<exists>spring-rest/pom.xml</exists>
</file>
</activation>
<modules>
<module>spring-rest</module>
</modules>
</profile>
</profiles> </profiles>
</project> </project>

View File

@@ -0,0 +1,109 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.dspace.modules</groupId>
<artifactId>spring-rest</artifactId>
<packaging>war</packaging>
<name>DSpace Spring Rest:: Local Customizations</name>
<description>Overlay REST customizations.
This is probably a temporary solution to the build problems. We like to investigate about
the possibility to remove the overlays enable a more flexible extension mechanism.
The use of web-fragment and spring mvc technology allow us to add request handlers
just adding new jar in the classloader</description>
<parent>
<artifactId>modules</artifactId>
<groupId>org.dspace</groupId>
<version>7.0-SNAPSHOT</version>
<relativePath>..</relativePath>
</parent>
<properties>
<!-- This is the path to the root [dspace-src] directory. -->
<root.basedir>${basedir}/../../..</root.basedir>
</properties>
<build>
<plugins>
<!-- Unpack the "additions" module into our target directory,
so that any custom classes in that module can be included
into this WAR's WEB-INF/classes (see maven-war-plugin below). -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack</id>
<phase>prepare-package</phase>
<goals>
<goal>unpack-dependencies</goal>
</goals>
<configuration>
<includeGroupIds>org.dspace.modules</includeGroupIds>
<includeArtifactIds>additions</includeArtifactIds>
<!--NOTE: by default this will also unpack transitive dependencies. To disable, uncomment this next line:
<excludeTransitive>true</excludeTransitive>
-->
<outputDirectory>${project.build.directory}/additions</outputDirectory>
<excludes>META-INF/**</excludes>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<archiveClasses>false</archiveClasses>
<!-- Filter the web.xml (needed for IDE compatibility/debugging) -->
<filteringDeploymentDescriptors>true</filteringDeploymentDescriptors>
<!-- Copy any 'additions' (see m-dependency-p above) into WEB-INF/classes.
This ensures they are loaded prior to dependencies in WEB-INF/lib
(per Servlet 3.0 spec, section 10.5), and allows them to override
default classes in this WAR -->
<webResources>
<resource>
<directory>${project.build.directory}/additions</directory>
<targetPath>WEB-INF/classes</targetPath>
</resource>
</webResources>
</configuration>
<executions>
<execution>
<phase>prepare-package</phase>
</execution>
</executions>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>oracle-support</id>
<activation>
<property>
<name>db.name</name>
<value>oracle</value>
</property>
</activation>
<dependencies>
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
</dependency>
</dependencies>
</profile>
</profiles>
<dependencies>
<dependency>
<groupId>org.dspace.modules</groupId>
<artifactId>additions</artifactId>
</dependency>
<dependency>
<groupId>org.dspace</groupId>
<artifactId>dspace-spring-rest</artifactId>
<type>war</type>
</dependency>
</dependencies>
</project>

View File

@@ -668,6 +668,7 @@ Common usage:
<fileset dir="webapps"> <fileset dir="webapps">
<exclude name="**/web.xml" /> <exclude name="**/web.xml" />
<exclude name="**/robots.txt" /> <exclude name="**/robots.txt" />
<exclude name="**/application.properties" />
</fileset> </fileset>
</copy> </copy>
@@ -676,6 +677,7 @@ Common usage:
<fileset dir="webapps"> <fileset dir="webapps">
<include name="**/web.xml" /> <include name="**/web.xml" />
<include name="**/robots.txt" /> <include name="**/robots.txt" />
<include name="**/application.properties" />
</fileset> </fileset>
<filterchain> <filterchain>
<expandproperties /> <expandproperties />

18
pom.xml
View File

@@ -65,7 +65,7 @@
</configuration> </configuration>
</execution> </execution>
<!-- Make sure that we do not have conflicting dependencies--> <!-- Make sure that we do not have conflicting dependencies-->
<execution> <!-- <execution>
<id>enforce-versions</id> <id>enforce-versions</id>
<goals> <goals>
<goal>enforce</goal> <goal>enforce</goal>
@@ -75,7 +75,7 @@
<DependencyConvergence /> <DependencyConvergence />
</rules> </rules>
</configuration> </configuration>
</execution> </execution> -->
</executions> </executions>
</plugin> </plugin>
<!-- Used to compile all Java classes --> <!-- Used to compile all Java classes -->
@@ -646,7 +646,7 @@
<!-- <!--
Builds SOLR WAR for DSpace Builds SOLR WAR for DSpace
--> -->
<profile> <!-- <profile>
<id>dspace-solr</id> <id>dspace-solr</id>
<activation> <activation>
<file> <file>
@@ -656,7 +656,7 @@
<modules> <modules>
<module>dspace-solr</module> <module>dspace-solr</module>
</modules> </modules>
</profile> </profile>-->
<!-- <!--
Builds SWORDv2 WAR for DSpace Builds SWORDv2 WAR for DSpace
@@ -703,7 +703,7 @@
<module>dspace-rdf</module> <module>dspace-rdf</module>
<module>dspace-rest</module> <module>dspace-rest</module>
<module>dspace-services</module> <module>dspace-services</module>
<module>dspace-solr</module> <!-- <module>dspace-solr</module> -->
<module>dspace-sword</module> <module>dspace-sword</module>
<module>dspace-swordv2</module> <module>dspace-swordv2</module>
<module>dspace-spring-rest</module> <module>dspace-spring-rest</module>
@@ -857,6 +857,12 @@
<type>war</type> <type>war</type>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.dspace</groupId>
<artifactId>dspace-spring-rest</artifactId>
<version>7.0-SNAPSHOT</version>
<type>war</type>
</dependency>
<!-- <dependency>
<groupId>org.dspace</groupId> <groupId>org.dspace</groupId>
<artifactId>dspace-solr</artifactId> <artifactId>dspace-solr</artifactId>
<version>7.0-SNAPSHOT</version> <version>7.0-SNAPSHOT</version>
@@ -870,7 +876,7 @@
<type>war</type> <type>war</type>
<classifier>skinny</classifier> <classifier>skinny</classifier>
</dependency> </dependency>
-->
<!-- DSpace Localization Packages --> <!-- DSpace Localization Packages -->
<dependency> <dependency>
<groupId>org.dspace</groupId> <groupId>org.dspace</groupId>