3 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
4 xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
5 <modelVersion>4.0.0</modelVersion>
7 <!-- This is the Maven project object model (POM) file for VID web application
8 based on the ECOMP SDK distribution. This file stands alone; it does not
9 inherit from a parent maven module. -->
10 <groupId>org.onap.vid</groupId>
11 <artifactId>vid-app-common</artifactId>
12 <version>5.0.3-SNAPSHOT</version>
13 <packaging>war</packaging>
14 <name>VID Common</name>
15 <description>VID Common code for opensource version</description>
18 <groupId>org.onap.oparent</groupId>
19 <artifactId>oparent</artifactId>
20 <version>2.0.0</version>
25 <encoding>UTF-8</encoding>
26 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
27 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
28 <epsdk.version>2.5.0</epsdk.version>
29 <springframework.version>5.1.9.RELEASE</springframework.version>
30 <springframework.orm.version>4.3.22.RELEASE</springframework.orm.version>
31 <!-- epsdk-core is importing this class, which is only on spring-orm 4 but not in orm 5:
32 org.springframework.orm.hibernate4.HibernateTransactionManager
33 so following orm.version lets epsdk-core find it -->
34 <hibernate.version>4.3.11.Final</hibernate.version>
35 <jackson.version>2.9.9</jackson.version>
36 <jackson.databind.version>2.9.9.3</jackson.databind.version>
37 <jersey.version>2.29</jersey.version>
38 <surefire.version>2.22.1</surefire.version>
39 <selenium.version>3.141.59</selenium.version>
40 <sonar.coverage.exclusions>**/webapp/**/*,**/*.js</sonar.coverage.exclusions>
42 <!--Specify path to load jacoco xml report, as Sonar can't load Kotlin coverage from binary report. -->
43 <sonar.coverage.jacoco.xmlReportPaths>
44 ${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml
45 </sonar.coverage.jacoco.xmlReportPaths>
47 <!-- Skip assembling the zip by default -->
48 <skipassembly>true</skipassembly>
49 <nexusproxy>https://nexus.onap.org</nexusproxy>
50 <snapshotNexusPath>content/repositories/snapshots/</snapshotNexusPath>
51 <releaseNexusPath>content/repositories/releases/</releaseNexusPath>
52 <stagingNexusPath>content/repositories/staging/</stagingNexusPath>
53 <sitePath>content/sites/site/org/onap/vid/${project.version}</sitePath>
55 <aspectj.version>1.8.9</aspectj.version>
56 <kotlin.version>1.3.30</kotlin.version>
57 <kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget>
59 <eirslett.version>1.6</eirslett.version>
60 <node.version>v8.9.4</node.version>
61 <npm.version>5.6.0</npm.version>
63 <!-- override using -Drelease_version=foo -Dpatch_version=bar -->
64 <release_version>${env.release_version}</release_version>
67 <reportportal.argline>-javaagent:${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar -Drp.enable=true -Drp.mode=DEFAULT -Drp.tags="CICD;BE_UNIT;BUILD_${env.BUILD_NUMBER}"</reportportal.argline>
68 <frontendTestsPhase>generate-resources</frontendTestsPhase>
74 <id>no-frontend-tests</id>
76 <frontendTestsPhase>none</frontendTestsPhase>
82 <!-- this should be commented for local debugging -->
83 <!-- <deployenv>local</deployenv> -->
87 <id>ecomp-releases</id>
88 <name>VID Release Repository</name>
89 <url>${nexusproxy}/${releaseNexusPath}</url>
92 <id>ecomp-snapshots</id>
93 <name>VID Snapshot Repository</name>
94 <url>${nexusproxy}/${snapshotNexusPath}</url>
97 <id>ecomp-staging</id>
98 <name>VID Staging Repository</name>
99 <url>${nexusproxy}/${stagingNexusPath}</url>
102 <!-- Snapshots repository has ECOMP snapshot artifacts -->
103 <id>oss-snapshots</id>
104 <name>oss Central - Snapshots</name>
105 <url>https://oss.sonatype.org/service/local/repositories/releases/content/</url>
109 <distributionManagement>
111 <id>ecomp-releases</id>
112 <name>VID Release Repository</name>
113 <url>${nexusproxy}/${releaseNexusPath}</url>
116 <id>ecomp-snapshots</id>
117 <name>VID Snapshot Repository</name>
118 <url>${nexusproxy}/${snapshotNexusPath}</url>
119 </snapshotRepository>
120 <!-- added for javadoc -->
123 <url>dav:${nexusproxy}/${sitePath}</url>
125 </distributionManagement>
128 <finalName>vid-common</finalName>
133 <artifactId>kotlin-maven-plugin</artifactId>
134 <groupId>org.jetbrains.kotlin</groupId>
135 <version>${kotlin.version}</version>
139 <goals> <goal>compile</goal> </goals>
142 <sourceDir>${project.basedir}/src/main/java</sourceDir>
147 <id>test-compile</id>
148 <goals> <goal>test-compile</goal> </goals>
151 <sourceDir>${project.basedir}/src/test/java</sourceDir>
158 <groupId>org.sonarsource.scanner.maven</groupId>
159 <artifactId>sonar-maven-plugin</artifactId>
160 <version>3.6.0.1398</version>
163 <groupId>org.jacoco</groupId>
164 <artifactId>jacoco-maven-plugin</artifactId>
165 <version>0.8.4</version>
168 <id>default-prepare-agent</id>
170 <goal>prepare-agent</goal>
174 <id>default-report</id>
182 <groupId>org.apache.tomcat.maven</groupId>
183 <artifactId>tomcat6-maven-plugin</artifactId>
184 <version>2.2</version>
187 <groupId>org.apache.tomcat.maven</groupId>
188 <artifactId>tomcat7-maven-plugin</artifactId>
189 <version>2.2</version>
193 <groupId>com.github.eirslett</groupId>
194 <artifactId>frontend-maven-plugin</artifactId>
195 <version>${eirslett.version}</version>
198 <id>install node and npm</id>
200 <goal>install-node-and-npm</goal>
202 <phase>${frontendTestsPhase}</phase>
204 <npmVersion>${npm.version}</npmVersion>
205 <nodeVersion>${node.version}</nodeVersion>
209 <id>npm config list</id>
211 <arguments>config ls -l</arguments>
216 <phase>${frontendTestsPhase}</phase>
221 <arguments>install</arguments>
226 <phase>${frontendTestsPhase}</phase>
229 <id>npm run-script build</id>
231 <arguments>run-script build</arguments>
236 <phase>${frontendTestsPhase}</phase>
242 <groupId>org.apache.maven.plugins</groupId>
243 <artifactId>maven-compiler-plugin</artifactId>
244 <version>3.5.1</version>
251 <!-- Replacing default-compile as it is treated specially by maven -->
253 <id>default-compile</id>
256 <!-- Replacing default-testCompile as it is treated specially by maven -->
258 <id>default-testCompile</id>
262 <id>java-compile</id>
263 <phase>compile</phase>
264 <goals> <goal>compile</goal> </goals>
267 <id>java-test-compile</id>
268 <phase>test-compile</phase>
269 <goals> <goal>testCompile</goal> </goals>
276 <groupId>com.google.code.maven-replacer-plugin</groupId>
277 <artifactId>replacer</artifactId>
278 <version>1.5.3</version>
281 <phase>prepare-package</phase>
289 <file>${project.basedir}/src/main/webapp/app/vid/scripts/constants/version.json</file>
292 <token>BUILD_NUMBER</token>
293 <value>${release_version}.${patch_version}.${env.BUILD_NUMBER}</value>
300 <groupId>org.apache.maven.plugins</groupId>
301 <artifactId>maven-surefire-plugin</artifactId>
302 <version>${surefire.version}</version>
305 <include>**/Test*.java</include>
306 <include>**/*Test.java</include>
307 <include>**/*TestCase.java</include>
310 <exclude>**/selenium/*.java</exclude>
311 <exclude>**/integrationTest/*.java</exclude>
313 <additionalClasspathElements>
314 <additionalClasspathElement>${basedir}/war</additionalClasspathElement>
315 </additionalClasspathElements>
316 <systemPropertyVariables>
317 <container.classpath>classpath:</container.classpath>
318 </systemPropertyVariables>
319 <useSystemClassLoader>false</useSystemClassLoader>
322 <!-- avoid running JUnit tests within surefire-testng provider -->
327 <name>usedefaultlisteners</name>
331 <threadCount>1</threadCount>
334 <!-- Running TestNG and JUnit Tests -->
335 <!-- https://maven.apache.org/surefire/maven-surefire-plugin/examples/testng.html -->
337 <groupId>org.apache.maven.surefire</groupId>
338 <artifactId>surefire-junit47</artifactId>
339 <version>${surefire.version}</version>
342 <groupId>org.apache.maven.surefire</groupId>
343 <artifactId>surefire-testng</artifactId>
344 <version>${surefire.version}</version>
350 <artifactId>maven-assembly-plugin</artifactId>
352 <skipAssembly>${skipassembly}</skipAssembly>
354 <descriptor>${basedir}/distribution.xml</descriptor>
359 <id>make-assembly</id>
360 <phase>package</phase>
370 <groupId>org.apache.maven.plugins</groupId>
371 <artifactId>maven-war-plugin</artifactId>
372 <version>3.0.0</version>
374 <!-- Build a jar with all the Java classes -->
375 <attachClasses>true</attachClasses>
376 <!-- Do not put any jars in the war -->
377 <packagingExcludes>WEB-INF/lib/*.jar</packagingExcludes>
381 <groupId>org.apache.maven.plugins</groupId>
382 <artifactId>maven-site-plugin</artifactId>
383 <version>3.6</version>
386 <groupId>org.apache.maven.wagon</groupId>
387 <artifactId>wagon-webdav-jackrabbit</artifactId>
388 <version>2.10</version>
393 <groupId>pl.project13.maven</groupId>
394 <artifactId>git-commit-id-plugin</artifactId>
395 <version>2.2.4</version>
398 <id>get-the-git-infos</id>
400 <goal>revision</goal>
405 <dotGitDirectory>${project.basedir}/.git</dotGitDirectory>
406 <dateFormat>yyyy-MM-dd'T'HH:mm:ssZ</dateFormat>
407 <dateFormatTimeZone>${user.timezone}</dateFormatTimeZone>
408 <generateGitPropertiesFile>true</generateGitPropertiesFile>
409 <generateGitPropertiesFilename>${project.build.outputDirectory}/git.properties</generateGitPropertiesFilename>
410 <includeOnlyProperties>
411 <includeOnlyProperty>^git.commit.id$</includeOnlyProperty>
412 <includeOnlyProperty>^git.commit.message.short$</includeOnlyProperty>
413 <includeOnlyProperty>^git.commit.time$</includeOnlyProperty>
414 </includeOnlyProperties>
420 Replace phase "none" with "process-sources" to enable.
421 Set organizationName as desired.
422 Then run `mvn license:check-file-header`, or even `mvn
423 license:update-file-header`.
425 <groupId>org.codehaus.mojo</groupId>
426 <artifactId>license-maven-plugin</artifactId>
427 <version>1.17</version>
433 <goal>update-file-header</goal>
435 <!-- replace phase "none" with "process-sources" to enable -->
441 <canUpdateCopyright>false</canUpdateCopyright>
442 <canUpdateDescription>false</canUpdateDescription>
443 <licenseName>apache_v2</licenseName>
444 <processStartTag>============LICENSE_START=======================================================</processStartTag>
445 <processEndTag>============LICENSE_END=========================================================</processEndTag>
446 <sectionDelimiter>================================================================================</sectionDelimiter>
447 <projectName>VID</projectName>
448 <inceptionYear>2017</inceptionYear>
449 <organizationName>AT&T Intellectual Property. All rights reserved.</organizationName>
450 <canUpdateLicense>true</canUpdateLicense>
451 <addJavaLicenseAfterPackage>false</addJavaLicenseAfterPackage>
452 <emptyLineAfterHeader>true</emptyLineAfterHeader>
453 <verbose>false</verbose>
456 <include>**/*.java</include>
457 <include>**/*.kt</include>
458 <include>**/*.jsp</include>
459 <include>**/*.xml</include>
460 <include>**/*.js</include>
461 <include>**/*.ts</include>
462 <include>**/*.html</include>
463 <include>**/*.css</include>
464 <include>**/*.sql</include>
472 <root>src/main</root>
473 <root>src/test</root>
477 <exclude>**/app/vid/external/**/*</exclude>
478 <exclude>**/main/webapp/WEB-INF/**/*</exclude>
479 <exclude>**/test/resources/WEB-INF/**/*</exclude>
480 <exclude>**/app/vid/scripts/angular-ui-tree.js</exclude>
492 <groupId>org.apache.maven.plugins</groupId>
493 <artifactId>maven-javadoc-plugin</artifactId>
494 <version>2.10.4</version>
496 <failOnError>false</failOnError>
497 <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
499 <groupId>org.umlgraph</groupId>
500 <artifactId>umlgraph</artifactId>
501 <version>5.6</version>
503 <additionalparam>-views</additionalparam>
504 <useStandardDocletOptions>true</useStandardDocletOptions>
513 <groupId>com.opencsv</groupId>
514 <artifactId>opencsv</artifactId>
515 <version>4.6</version>
521 <groupId>io.joshworks.unirest</groupId>
522 <artifactId>unirest-java</artifactId>
523 <version>0.2.1</version>
526 <groupId>org.apache.httpcomponents</groupId>
527 <artifactId>httpclient</artifactId>
528 <version>4.5.9</version>
531 <groupId>org.apache.httpcomponents</groupId>
532 <artifactId>httpasyncclient</artifactId>
533 <version>4.1.4</version>
536 <groupId>org.apache.httpcomponents</groupId>
537 <artifactId>httpmime</artifactId>
538 <version>4.5.9</version>
541 <groupId>com.xebialabs.restito</groupId>
542 <artifactId>restito</artifactId>
543 <version>0.9.3</version>
547 <groupId>org.jeasy</groupId>
548 <artifactId>easy-random-core</artifactId>
549 <version>4.0.0</version>
555 <groupId>io.vavr</groupId>
556 <artifactId>vavr</artifactId>
557 <version>0.10.2</version>
560 <!-- SDK overlay war -->
562 <groupId>org.onap.portal.sdk</groupId>
563 <artifactId>epsdk-app-overlay</artifactId>
564 <version>${epsdk.version}</version>
568 <groupId>org.onap.portal.sdk</groupId>
569 <artifactId>epsdk-app-common</artifactId>
570 <version>${epsdk.version}</version>
575 <groupId>org.onap.portal.sdk</groupId>
576 <artifactId>epsdk-core</artifactId>
577 <version>${epsdk.version}</version>
580 <groupId>org.onap.portal.sdk</groupId>
581 <artifactId>epsdk-analytics</artifactId>
582 <version>${epsdk.version}</version>
585 <groupId>com.lowagie</groupId>
586 <artifactId>itext</artifactId>
591 <groupId>org.onap.portal.sdk</groupId>
592 <artifactId>epsdk-workflow</artifactId>
593 <version>${epsdk.version}</version>
596 <groupId>com.att.eelf</groupId>
597 <artifactId>eelf-core</artifactId>
598 <version>1.0.0</version>
601 <artifactId>powermock-api-mockito</artifactId>
602 <groupId>org.powermock</groupId>
607 <groupId>ch.qos.logback</groupId>
608 <artifactId>logback-classic</artifactId>
612 <groupId>org.jetbrains.kotlin</groupId>
613 <artifactId>kotlin-stdlib-jdk8</artifactId>
614 <version>${kotlin.version}</version>
619 <groupId>com.fasterxml.jackson.core</groupId>
620 <artifactId>jackson-annotations</artifactId>
621 <version>${jackson.version}</version>
624 <groupId>com.fasterxml.jackson.core</groupId>
625 <artifactId>jackson-core</artifactId>
626 <version>${jackson.version}</version>
629 <groupId>com.fasterxml.jackson.core</groupId>
630 <artifactId>jackson-databind</artifactId>
631 <version>${jackson.databind.version}</version>
634 <groupId>com.fasterxml.jackson.module</groupId>
635 <artifactId>jackson-module-kotlin</artifactId>
636 <version>${jackson.version}</version>
638 <!-- c3p0 is to override epsdk-app-common's c3p0 0.9.5.2 vulnerability -->
640 <groupId>com.mchange</groupId>
641 <artifactId>c3p0</artifactId>
642 <version>0.9.5.4</version>
645 <groupId>io.searchbox</groupId>
646 <artifactId>jest</artifactId>
647 <version>6.3.1</version>
650 <groupId>commons-logging</groupId>
651 <artifactId>commons-logging</artifactId>
656 <groupId>javax.servlet</groupId>
657 <artifactId>javax.servlet-api</artifactId>
658 <version>4.0.1</version>
659 <scope>provided</scope>
662 <groupId>junit</groupId>
663 <artifactId>junit</artifactId>
664 <version>4.12</version>
668 <groupId>commons-io</groupId>
669 <artifactId>commons-io</artifactId>
670 <version>2.6</version>
671 <!--<scope>test</scope>-->
674 <groupId>com.google.code.bean-matchers</groupId>
675 <artifactId>bean-matchers</artifactId>
676 <version>0.11</version>
680 <groupId>org.json</groupId>
681 <artifactId>json</artifactId>
682 <version>20190722</version>
685 <groupId>org.quartz-scheduler</groupId>
686 <artifactId>quartz</artifactId>
687 <version>2.3.1</version>
689 <!-- exclude 0.9.1.1 to avoid dupe of com.mchange:c3p0:0.9.2.1 -->
691 <groupId>c3p0</groupId>
692 <artifactId>c3p0</artifactId>
696 <!-- bridge to implement commons-logging using slf4j -->
698 <groupId>org.slf4j</groupId>
699 <artifactId>jcl-over-slf4j</artifactId>
700 <version>1.7.27</version>
703 <!-- springframework to override epsdk-app-common's and epsdk-core's versions -->
705 <groupId>org.springframework</groupId>
706 <artifactId>spring-core</artifactId>
707 <version>${springframework.version}</version>
710 <groupId>commons-logging</groupId>
711 <artifactId>commons-logging</artifactId>
716 <groupId>org.springframework</groupId>
717 <artifactId>spring-test</artifactId>
718 <version>${springframework.version}</version>
721 <groupId>org.springframework</groupId>
722 <artifactId>spring-tx</artifactId>
723 <version>${springframework.version}</version>
726 <groupId>org.springframework</groupId>
727 <artifactId>spring-web</artifactId>
728 <version>${springframework.version}</version>
731 <groupId>org.springframework</groupId>
732 <artifactId>spring-webmvc</artifactId>
733 <version>${springframework.version}</version>
736 <groupId>org.springframework</groupId>
737 <artifactId>spring-context-support</artifactId>
738 <version>${springframework.version}</version>
741 <groupId>org.springframework</groupId>
742 <artifactId>spring-orm</artifactId>
743 <version>${springframework.orm.version}</version>
746 <groupId>org.springframework</groupId>
747 <artifactId>spring-aop</artifactId>
748 <version>${springframework.version}</version>
752 <groupId>org.glassfish.jersey.core</groupId>
753 <artifactId>jersey-client</artifactId>
754 <version>${jersey.version}</version>
757 <groupId>org.glassfish.jersey.connectors</groupId>
758 <artifactId>jersey-jetty-connector</artifactId>
759 <version>${jersey.version}</version>
761 <!--https://stackoverflow.com/questions/44088493/jersey-stopped-working-with-injectionmanagerfactory-not-found-->
763 <groupId>org.glassfish.jersey.inject</groupId>
764 <artifactId>jersey-hk2</artifactId>
765 <version>${jersey.version}</version>
768 <groupId>com.fasterxml.jackson.jaxrs</groupId>
769 <artifactId>jackson-jaxrs-json-provider</artifactId>
770 <version>${jackson.version}</version>
773 <groupId>commons-beanutils</groupId>
774 <artifactId>commons-beanutils</artifactId>
777 <groupId>com.googlecode.json-simple</groupId>
778 <artifactId>json-simple</artifactId>
779 <version>1.1.1</version>
782 <groupId>org.seleniumhq.selenium</groupId>
783 <artifactId>selenium-java</artifactId>
784 <version>${selenium.version}</version>
788 <groupId>org.seleniumhq.selenium</groupId>
789 <artifactId>selenium-api</artifactId>
790 <version>${selenium.version}</version>
794 <groupId>org.testng</groupId>
795 <artifactId>testng</artifactId>
796 <version>6.14.3</version>
800 <groupId>org.mockito</groupId>
801 <artifactId>mockito-core</artifactId>
802 <version>2.23.0</version>
806 <groupId>org.seleniumhq.selenium</groupId>
807 <artifactId>selenium-firefox-driver</artifactId>
808 <version>${selenium.version}</version>
811 <groupId>xml-apis</groupId>
812 <artifactId>xml-apis</artifactId>
813 <version>2.0.2</version>
816 <groupId>org.yaml</groupId>
817 <artifactId>snakeyaml</artifactId>
818 <version>1.24</version>
821 <groupId>org.skyscreamer</groupId>
822 <artifactId>jsonassert</artifactId>
823 <version>1.5.0</version>
827 <groupId>org.onap.sdc.sdc-tosca</groupId>
828 <artifactId>sdc-tosca</artifactId>
829 <version>1.6.0</version>
830 <scope>compile</scope>
833 <groupId>net.javacrumbs.json-unit</groupId>
834 <artifactId>json-unit</artifactId>
835 <version>2.8.0</version>
839 <groupId>org.glassfish.jersey.media</groupId>
840 <artifactId>jersey-media-json-jackson</artifactId>
841 <version>${jersey.version}</version>
845 <groupId>org.apache.commons</groupId>
846 <artifactId>commons-lang3</artifactId>
847 <version>3.9</version>
850 <groupId>org.apache.commons</groupId>
851 <artifactId>commons-text</artifactId>
852 <version>1.7</version>
855 <groupId>org.apache.commons</groupId>
856 <artifactId>commons-proxy</artifactId>
857 <version>1.0</version>
860 <groupId>org.apache.commons</groupId>
861 <artifactId>commons-collections4</artifactId>
862 <version>4.4</version>
865 <groupId>org.hamcrest</groupId>
866 <artifactId>java-hamcrest</artifactId>
867 <version>2.0.0.0</version>
871 <groupId>org.togglz</groupId>
872 <artifactId>togglz-spring-core</artifactId>
873 <version>2.6.1.Final</version>
876 <groupId>com.h2database</groupId>
877 <artifactId>h2</artifactId>
878 <version>1.4.199</version>
882 <groupId>javax.xml.bind</groupId>
883 <artifactId>jaxb-api</artifactId>
884 <version>2.3.1</version>
888 <groupId>org.assertj</groupId>
889 <artifactId>assertj-core</artifactId>
890 <version>3.13.2</version>
894 <groupId>com.google.guava</groupId>
895 <artifactId>guava</artifactId>
896 <version>28.0-jre</version>
899 <groupId>io.springfox</groupId>
900 <artifactId>springfox-swagger2</artifactId>
901 <version>2.9.2</version>
904 <groupId>org.apache.maven</groupId>
905 <artifactId>maven-artifact</artifactId>
906 <version>3.6.1</version>