55ebb2e8cfbaef97301db90a55c11724a8aa8633
[cdmlib.git] / cdmlib-remote-webapp / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3 <modelVersion>4.0.0</modelVersion>
4 <parent>
5 <artifactId>cdmlib-parent</artifactId>
6 <groupId>eu.etaxonomy</groupId>
7 <version>3.13.0-SNAPSHOT</version>
8 <relativePath>../pom.xml</relativePath>
9 </parent>
10
11 <groupId>eu.etaxonomy</groupId>
12 <artifactId>cdmlib-remote-webapp</artifactId>
13 <name>CDM Remote Webapp</name>
14 <packaging>war</packaging>
15
16 <properties>
17 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
18 </properties>
19
20 <scm>
21 <connection>
22 scm:svn:http://dev.e-taxonomy.eu/svn/trunk/cdmlib/cdmlib-remote/
23 </connection>
24 <developerConnection>
25 scm:svn:https://dev.e-taxonomy.eu/svn/trunk/cdmlib/cdmlib-remote/
26 </developerConnection>
27 <url>
28 http://dev.e-taxonomy.eu/trac/browser/trunk/cdmlib/cdmlib-remote/
29 </url>
30 </scm>
31
32 <profiles>
33 <profile>
34 <id>local-repository</id>
35 <activation>
36 <property>
37 <name>localrepo</name>
38 </property>
39 </activation>
40 <repositories>
41 <repository>
42 <id>EditLocalRepository</id>
43 <url>file://${localrepo}/eu/etaxonomy/</url>
44 <releases>
45 <enabled>false</enabled>
46 <updatePolicy>always</updatePolicy>
47 </releases>
48 <snapshots>
49 <enabled>true</enabled>
50 <updatePolicy>always</updatePolicy>
51 </snapshots>
52 </repository>
53 </repositories>
54 </profile>
55 </profiles>
56
57 <dependencies>
58 <dependency>
59 <groupId>eu.etaxonomy</groupId>
60 <artifactId>cdmlib-remote</artifactId>
61 <exclusions>
62 <!--
63 exclude all jdbc drivers from the war.
64 Jdbc drivers must only be added to {APPLICATION_CONTAINER}/lib
65 see http://dev.e-taxonomy.eu/trac/ticket/4955
66 and http://stackoverflow.com/questions/6981564/why-must-the-jdbc-driver-be-put-in-tomcat-home-lib-folder
67 -->
68 <exclusion>
69 <groupId>net.sourceforge.jtds</groupId>
70 <artifactId>jtds</artifactId>
71 </exclusion>
72 <exclusion>
73 <groupId>mysql</groupId>
74 <artifactId>mysql-connector-java</artifactId>
75 </exclusion>
76 <exclusion>
77 <groupId>org.postgresql</groupId>
78 <artifactId>postgresql</artifactId>
79 </exclusion>
80 <exclusion>
81 <groupId>org.hsqldb</groupId>
82 <artifactId>hsqldb</artifactId>
83 </exclusion>
84 <exclusion>
85 <groupId>com.microsoft.sqlserver</groupId>
86 <artifactId>jdbc4</artifactId>
87 </exclusion>
88 <exclusion>
89 <groupId>oracle</groupId>
90 <artifactId>ojdbc14</artifactId>
91 </exclusion>
92 <exclusion>
93 <groupId>com.h2database</groupId>
94 <artifactId>h2</artifactId>
95 </exclusion>
96 <exclusion>
97 <groupId>com.mchange</groupId>
98 <artifactId>c3p0</artifactId>
99 </exclusion>
100 </exclusions>
101 </dependency>
102 <dependency>
103 <groupId>commons-io</groupId>
104 <artifactId>commons-io</artifactId>
105 </dependency>
106 <dependency>
107 <groupId>eu.etaxonomy</groupId>
108 <artifactId>cdmlib-test</artifactId>
109 <scope>test</scope>
110 </dependency>
111 <dependency>
112 <!-- TODO this is also offered by cdmlib-remote, can it be removed?
113 What does provided mean? -->
114 <groupId>javax.servlet</groupId>
115 <artifactId>javax.servlet-api</artifactId>
116 <scope>provided</scope>
117 </dependency>
118
119 <dependency>
120 <groupId>xmlunit</groupId>
121 <artifactId>xmlunit</artifactId>
122 </dependency>
123 <!-- JsonView -->
124 <!--
125 -->
126 <dependency>
127 <groupId>org.springframework</groupId>
128 <artifactId>spring-oxm</artifactId>
129 </dependency>
130
131 <!-- XmlView
132 -->
133 <dependency>
134 <groupId>com.thoughtworks.xstream</groupId>
135 <artifactId>xstream</artifactId>
136 </dependency>
137 <dependency>
138 <groupId>xpp3</groupId>
139 <artifactId>xpp3</artifactId>
140 </dependency>
141 <dependency>
142 <groupId>stax</groupId>
143 <artifactId>stax</artifactId>
144 </dependency>
145
146 <!-- JSP TAG LIBS -->
147 <dependency>
148 <groupId>taglibs</groupId>
149 <artifactId>standard</artifactId>
150 <version>1.1.2</version>
151 </dependency>
152 <dependency>
153 <groupId>taglibs</groupId>
154 <artifactId>x</artifactId>
155 <version>1.1.2</version>
156 <type>tld</type>
157 </dependency>
158 <!-- swagger -->
159 <dependency>
160 <groupId>io.springfox</groupId>
161 <artifactId>springfox-swagger2</artifactId>
162 </dependency>
163 <!-- dependencies for swagger-springmvc, added explicitly -->
164 <dependency>
165 <groupId>com.fasterxml.jackson.core</groupId>
166 <artifactId>jackson-databind</artifactId>
167 </dependency>
168 <dependency>
169 <groupId>com.fasterxml.jackson.core</groupId>
170 <artifactId>jackson-core</artifactId>
171 </dependency>
172 <dependency>
173 <groupId>com.fasterxml.jackson.core</groupId>
174 <artifactId>jackson-annotations</artifactId>
175 </dependency>
176 <!-- END of dependencies for swagger-springmvc, added explicitely -->
177
178 <!-- testing -->
179 <dependency>
180 <groupId>junit</groupId>
181 <artifactId>junit</artifactId>
182 <scope>test</scope>
183 </dependency>
184
185 <!-- Connection Pooling and jdbc -->
186 <dependency>
187 <groupId>org.hibernate</groupId>
188 <artifactId>hibernate-c3p0</artifactId>
189 <scope>test</scope>
190 </dependency>
191 <dependency>
192 <artifactId>c3p0</artifactId>
193 <groupId>com.mchange</groupId>
194 <scope>test</scope>
195 </dependency>
196 <!-- Profiling -->
197 <dependency>
198 <groupId>com.yourkit</groupId>
199 <artifactId>yjp-controller-api-redist</artifactId>
200 <scope>test</scope>
201 </dependency>
202 </dependencies>
203
204 <build>
205 <resources>
206 <!-- ${basedir}/src/test/resources -->
207 <resource>
208 <!-- replace the place holders like ${...} in datasources.xml -->
209 <targetPath>${project.build.directory}/test-classes</targetPath>
210 <filtering>true</filtering>
211 <directory>${basedir}/src/test/resources</directory>
212 <includes>
213 <include>datasources.xml</include>
214 </includes>
215 </resource>
216 <resource>
217 <!-- all other test resources without filtering -->
218 <targetPath>test-classes</targetPath>
219 <directory>${basedir}/src/test/resources</directory>
220 <excludes>
221 <exclude>datasources.xml</exclude>
222 </excludes>
223 </resource>
224 <resource>
225 <!-- all main resources without filtering -->
226 <targetPath>classes</targetPath>
227 <directory>${basedir}/src/test/resources</directory>
228 </resource>
229 </resources>
230 <plugins>
231 <plugin>
232 <artifactId>maven-failsafe-plugin</artifactId>
233 <version>2.16</version>
234 <configuration>
235 <forkCount>3</forkCount>
236 <reuseForks>true</reuseForks>
237 </configuration>
238 <executions>
239 <execution>
240 <goals>
241 <goal>integration-test</goal>
242 <goal>verify</goal>
243 </goals>
244 </execution>
245 </executions>
246 </plugin>
247
248 <plugin>
249 <groupId>org.eclipse.jetty</groupId>
250 <artifactId>jetty-maven-plugin</artifactId>
251 <version>9.1.3.v20140225</version><!-- do not update, since later versions are no longer compatible to java 7 -->
252 <configuration>
253 <stopKey>stop</stopKey>
254 <stopPort>9199</stopPort>
255 <scanIntervalSeconds>10</scanIntervalSeconds>
256 <useTestScope>true</useTestScope>
257 <jettyXml>${basedir}/src/test/resources/etc/jetty/jetty.xml,${basedir}/src/test/resources/etc/jetty/jetty-http.xml</jettyXml>
258 <!-- <jettyXml>./src/test/resources/etc/jetty/jetty.xml,./src/test/resources/etc/jetty/jetty-http.xml,./src/test/resources/etc/jetty/jetty-ssl.xml,./src/test/resources/etc/jetty/jetty-https.xml</jettyXml> -->
259 <systemProperties>
260 <force>true</force>
261 <systemProperty>
262 <name>cdm.datasource</name>
263 <value>h2_cdmTest</value>
264 </systemProperty>
265 <systemProperty>
266 <!--
267 The lucene index should be placed into the target folder,
268 so user.home needs to be set to this folder.
269 user.home needs to be overriden since it already
270 exists, thus the force option is turned on above
271 -->
272 <name>user.home</name>
273 <value>${basedir}/target/</value>
274 </systemProperty>
275 <systemProperty>
276 <!-- datasources.xml is prepared by <plugins><resources>..</resources>
277 above -->
278 <name>cdm.beanDefinitionFile</name>
279 <value>${project.build.directory}/test-classes/datasources.xml</value>
280 </systemProperty>
281 </systemProperties>
282 </configuration>
283 <executions>
284 <execution>
285 <id>start-jetty</id>
286 <phase>pre-integration-test</phase>
287 <goals>
288 <goal>start</goal>
289 </goals>
290 <configuration>
291 <scanIntervalSeconds>0</scanIntervalSeconds>
292 <daemon>true</daemon>
293 </configuration>
294 </execution>
295 <execution>
296 <id>stop-jetty</id>
297 <phase>post-integration-test</phase>
298 <goals>
299 <goal>stop</goal>
300 </goals>
301 </execution>
302 </executions>
303 </plugin>
304 </plugins>
305 </build>
306 </project>