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.2-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 <jersey.version>2.29</jersey.version>
37 <surefire.version>2.22.1</surefire.version>
38 <selenium.version>3.141.59</selenium.version>
39 <sonar.coverage.exclusions>**/webapp/**/*,**/*.js</sonar.coverage.exclusions>
41 <!--Specify path to load jacoco xml report, as Sonar can't load Kotlin coverage from binary report. -->
42 <sonar.coverage.jacoco.xmlReportPaths>
43 ${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml
44 </sonar.coverage.jacoco.xmlReportPaths>
46 <!-- Skip assembling the zip by default -->
47 <skipassembly>true</skipassembly>
48 <nexusproxy>https://nexus.onap.org</nexusproxy>
49 <snapshotNexusPath>content/repositories/snapshots/</snapshotNexusPath>
50 <releaseNexusPath>content/repositories/releases/</releaseNexusPath>
51 <stagingNexusPath>content/repositories/staging/</stagingNexusPath>
52 <sitePath>content/sites/site/org/onap/vid/${project.version}</sitePath>
54 <aspectj.version>1.8.9</aspectj.version>
55 <kotlin.version>1.3.30</kotlin.version>
56 <kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget>
58 <eirslett.version>1.6</eirslett.version>
59 <node.version>v8.9.4</node.version>
60 <npm.version>5.6.0</npm.version>
62 <!-- override using -Drelease_version=foo -Dpatch_version=bar -->
63 <release_version>${env.release_version}</release_version>
66 <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>
71 <!-- this should be commented for local debugging -->
72 <!-- <deployenv>local</deployenv> -->
76 <id>ecomp-releases</id>
77 <name>VID Release Repository</name>
78 <url>${nexusproxy}/${releaseNexusPath}</url>
81 <id>ecomp-snapshots</id>
82 <name>VID Snapshot Repository</name>
83 <url>${nexusproxy}/${snapshotNexusPath}</url>
86 <id>ecomp-staging</id>
87 <name>VID Staging Repository</name>
88 <url>${nexusproxy}/${stagingNexusPath}</url>
91 <!-- Snapshots repository has ECOMP snapshot artifacts -->
92 <id>oss-snapshots</id>
93 <name>oss Central - Snapshots</name>
94 <url>https://oss.sonatype.org/service/local/repositories/releases/content/</url>
98 <distributionManagement>
100 <id>ecomp-releases</id>
101 <name>VID Release Repository</name>
102 <url>${nexusproxy}/${releaseNexusPath}</url>
105 <id>ecomp-snapshots</id>
106 <name>VID Snapshot Repository</name>
107 <url>${nexusproxy}/${snapshotNexusPath}</url>
108 </snapshotRepository>
109 <!-- added for javadoc -->
112 <url>dav:${nexusproxy}/${sitePath}</url>
114 </distributionManagement>
117 <finalName>vid-common</finalName>
122 <artifactId>kotlin-maven-plugin</artifactId>
123 <groupId>org.jetbrains.kotlin</groupId>
124 <version>${kotlin.version}</version>
128 <goals> <goal>compile</goal> </goals>
131 <sourceDir>${project.basedir}/src/main/java</sourceDir>
136 <id>test-compile</id>
137 <goals> <goal>test-compile</goal> </goals>
140 <sourceDir>${project.basedir}/src/test/java</sourceDir>
147 <groupId>org.sonarsource.scanner.maven</groupId>
148 <artifactId>sonar-maven-plugin</artifactId>
149 <version>3.6.0.1398</version>
152 <groupId>org.jacoco</groupId>
153 <artifactId>jacoco-maven-plugin</artifactId>
154 <version>0.8.4</version>
157 <id>default-prepare-agent</id>
159 <goal>prepare-agent</goal>
163 <id>default-report</id>
171 <groupId>org.apache.tomcat.maven</groupId>
172 <artifactId>tomcat6-maven-plugin</artifactId>
173 <version>2.2</version>
176 <groupId>org.apache.tomcat.maven</groupId>
177 <artifactId>tomcat7-maven-plugin</artifactId>
178 <version>2.2</version>
182 <groupId>com.github.eirslett</groupId>
183 <artifactId>frontend-maven-plugin</artifactId>
184 <version>${eirslett.version}</version>
187 <id>install node and npm</id>
189 <goal>install-node-and-npm</goal>
191 <phase>generate-resources</phase>
193 <npmVersion>${npm.version}</npmVersion>
194 <nodeVersion>${node.version}</nodeVersion>
198 <id>npm config list</id>
200 <arguments>config ls -l</arguments>
205 <phase>generate-resources</phase>
210 <arguments>install</arguments>
215 <phase>generate-resources</phase>
218 <id>npm run-script build</id>
220 <arguments>run-script build</arguments>
225 <phase>generate-resources</phase>
231 <groupId>org.apache.maven.plugins</groupId>
232 <artifactId>maven-compiler-plugin</artifactId>
233 <version>3.5.1</version>
240 <!-- Replacing default-compile as it is treated specially by maven -->
242 <id>default-compile</id>
245 <!-- Replacing default-testCompile as it is treated specially by maven -->
247 <id>default-testCompile</id>
251 <id>java-compile</id>
252 <phase>compile</phase>
253 <goals> <goal>compile</goal> </goals>
256 <id>java-test-compile</id>
257 <phase>test-compile</phase>
258 <goals> <goal>testCompile</goal> </goals>
265 <groupId>com.google.code.maven-replacer-plugin</groupId>
266 <artifactId>replacer</artifactId>
267 <version>1.5.3</version>
270 <phase>prepare-package</phase>
278 <file>${project.basedir}/src/main/webapp/app/vid/scripts/constants/version.json</file>
281 <token>BUILD_NUMBER</token>
282 <value>${release_version}.${patch_version}.${env.BUILD_NUMBER}</value>
289 <groupId>org.apache.maven.plugins</groupId>
290 <artifactId>maven-surefire-plugin</artifactId>
291 <version>${surefire.version}</version>
294 <include>**/Test*.java</include>
295 <include>**/*Test.java</include>
296 <include>**/*TestCase.java</include>
299 <exclude>**/selenium/*.java</exclude>
300 <exclude>**/integrationTest/*.java</exclude>
302 <additionalClasspathElements>
303 <additionalClasspathElement>${basedir}/war</additionalClasspathElement>
304 </additionalClasspathElements>
305 <systemPropertyVariables>
306 <container.classpath>classpath:</container.classpath>
307 </systemPropertyVariables>
308 <useSystemClassLoader>false</useSystemClassLoader>
311 <!-- avoid running JUnit tests within surefire-testng provider -->
316 <name>usedefaultlisteners</name>
320 <threadCount>1</threadCount>
323 <!-- Running TestNG and JUnit Tests -->
324 <!-- https://maven.apache.org/surefire/maven-surefire-plugin/examples/testng.html -->
326 <groupId>org.apache.maven.surefire</groupId>
327 <artifactId>surefire-junit47</artifactId>
328 <version>${surefire.version}</version>
331 <groupId>org.apache.maven.surefire</groupId>
332 <artifactId>surefire-testng</artifactId>
333 <version>${surefire.version}</version>
339 <artifactId>maven-assembly-plugin</artifactId>
341 <skipAssembly>${skipassembly}</skipAssembly>
343 <descriptor>${basedir}/distribution.xml</descriptor>
348 <id>make-assembly</id>
349 <phase>package</phase>
359 <groupId>org.apache.maven.plugins</groupId>
360 <artifactId>maven-war-plugin</artifactId>
361 <version>3.0.0</version>
363 <!-- Build a jar with all the Java classes -->
364 <attachClasses>true</attachClasses>
365 <!-- Do not put any jars in the war -->
366 <packagingExcludes>WEB-INF/lib/*.jar</packagingExcludes>
370 <groupId>org.apache.maven.plugins</groupId>
371 <artifactId>maven-site-plugin</artifactId>
372 <version>3.6</version>
375 <groupId>org.apache.maven.wagon</groupId>
376 <artifactId>wagon-webdav-jackrabbit</artifactId>
377 <version>2.10</version>
382 <groupId>pl.project13.maven</groupId>
383 <artifactId>git-commit-id-plugin</artifactId>
384 <version>2.2.4</version>
387 <id>get-the-git-infos</id>
389 <goal>revision</goal>
394 <dotGitDirectory>${project.basedir}/.git</dotGitDirectory>
395 <dateFormat>yyyy-MM-dd'T'HH:mm:ssZ</dateFormat>
396 <dateFormatTimeZone>${user.timezone}</dateFormatTimeZone>
397 <generateGitPropertiesFile>true</generateGitPropertiesFile>
398 <generateGitPropertiesFilename>${project.build.outputDirectory}/git.properties</generateGitPropertiesFilename>
399 <includeOnlyProperties>
400 <includeOnlyProperty>^git.commit.id$</includeOnlyProperty>
401 <includeOnlyProperty>^git.commit.message.short$</includeOnlyProperty>
402 <includeOnlyProperty>^git.commit.time$</includeOnlyProperty>
403 </includeOnlyProperties>
409 Replace phase "none" with "process-sources" to enable.
410 Set organizationName as desired.
411 Then run `mvn license:check-file-header`, or even `mvn
412 license:update-file-header`.
414 <groupId>org.codehaus.mojo</groupId>
415 <artifactId>license-maven-plugin</artifactId>
416 <version>1.17</version>
422 <goal>update-file-header</goal>
424 <!-- replace phase "none" with "process-sources" to enable -->
430 <canUpdateCopyright>false</canUpdateCopyright>
431 <canUpdateDescription>false</canUpdateDescription>
432 <licenseName>apache_v2</licenseName>
433 <processStartTag>============LICENSE_START=======================================================</processStartTag>
434 <processEndTag>============LICENSE_END=========================================================</processEndTag>
435 <sectionDelimiter>================================================================================</sectionDelimiter>
436 <projectName>VID</projectName>
437 <inceptionYear>2017</inceptionYear>
438 <organizationName>AT&T Intellectual Property. All rights reserved.</organizationName>
439 <canUpdateLicense>true</canUpdateLicense>
440 <addJavaLicenseAfterPackage>false</addJavaLicenseAfterPackage>
441 <emptyLineAfterHeader>true</emptyLineAfterHeader>
442 <verbose>false</verbose>
445 <include>**/*.java</include>
446 <include>**/*.kt</include>
447 <include>**/*.jsp</include>
448 <include>**/*.xml</include>
449 <include>**/*.js</include>
450 <include>**/*.ts</include>
451 <include>**/*.html</include>
452 <include>**/*.css</include>
453 <include>**/*.sql</include>
461 <root>src/main</root>
462 <root>src/test</root>
466 <exclude>**/app/vid/external/**/*</exclude>
467 <exclude>**/main/webapp/WEB-INF/**/*</exclude>
468 <exclude>**/test/resources/WEB-INF/**/*</exclude>
469 <exclude>**/app/vid/scripts/angular-ui-tree.js</exclude>
481 <groupId>org.apache.maven.plugins</groupId>
482 <artifactId>maven-javadoc-plugin</artifactId>
483 <version>2.10.4</version>
485 <failOnError>false</failOnError>
486 <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
488 <groupId>org.umlgraph</groupId>
489 <artifactId>umlgraph</artifactId>
490 <version>5.6</version>
492 <additionalparam>-views</additionalparam>
493 <useStandardDocletOptions>true</useStandardDocletOptions>
502 <groupId>com.opencsv</groupId>
503 <artifactId>opencsv</artifactId>
504 <version>4.6</version>
510 <groupId>io.joshworks.unirest</groupId>
511 <artifactId>unirest-java</artifactId>
512 <version>0.2.1</version>
515 <groupId>org.apache.httpcomponents</groupId>
516 <artifactId>httpclient</artifactId>
517 <version>4.5.9</version>
520 <groupId>org.apache.httpcomponents</groupId>
521 <artifactId>httpasyncclient</artifactId>
522 <version>4.1.4</version>
525 <groupId>org.apache.httpcomponents</groupId>
526 <artifactId>httpmime</artifactId>
527 <version>4.5.9</version>
530 <groupId>com.xebialabs.restito</groupId>
531 <artifactId>restito</artifactId>
532 <version>0.9.3</version>
536 <groupId>org.jeasy</groupId>
537 <artifactId>easy-random-core</artifactId>
538 <version>4.0.0</version>
544 <groupId>io.vavr</groupId>
545 <artifactId>vavr</artifactId>
546 <version>0.10.2</version>
549 <!-- SDK overlay war -->
551 <groupId>org.onap.portal.sdk</groupId>
552 <artifactId>epsdk-app-overlay</artifactId>
553 <version>${epsdk.version}</version>
557 <groupId>org.onap.portal.sdk</groupId>
558 <artifactId>epsdk-app-common</artifactId>
559 <version>${epsdk.version}</version>
564 <groupId>org.onap.portal.sdk</groupId>
565 <artifactId>epsdk-core</artifactId>
566 <version>${epsdk.version}</version>
569 <groupId>org.onap.portal.sdk</groupId>
570 <artifactId>epsdk-analytics</artifactId>
571 <version>${epsdk.version}</version>
574 <groupId>com.lowagie</groupId>
575 <artifactId>itext</artifactId>
580 <groupId>org.onap.portal.sdk</groupId>
581 <artifactId>epsdk-workflow</artifactId>
582 <version>${epsdk.version}</version>
585 <groupId>com.att.eelf</groupId>
586 <artifactId>eelf-core</artifactId>
587 <version>1.0.0</version>
590 <artifactId>powermock-api-mockito</artifactId>
591 <groupId>org.powermock</groupId>
596 <groupId>ch.qos.logback</groupId>
597 <artifactId>logback-classic</artifactId>
601 <groupId>org.jetbrains.kotlin</groupId>
602 <artifactId>kotlin-stdlib-jdk8</artifactId>
603 <version>${kotlin.version}</version>
608 <groupId>com.fasterxml.jackson.core</groupId>
609 <artifactId>jackson-annotations</artifactId>
610 <version>${jackson.version}</version>
613 <groupId>com.fasterxml.jackson.core</groupId>
614 <artifactId>jackson-core</artifactId>
615 <version>${jackson.version}</version>
618 <groupId>com.fasterxml.jackson.core</groupId>
619 <artifactId>jackson-databind</artifactId>
620 <version>${jackson.version}</version>
623 <groupId>com.fasterxml.jackson.module</groupId>
624 <artifactId>jackson-module-kotlin</artifactId>
625 <version>${jackson.version}</version>
627 <!-- c3p0 is to override epsdk-app-common's c3p0 0.9.5.2 vulnerability -->
629 <groupId>com.mchange</groupId>
630 <artifactId>c3p0</artifactId>
631 <version>0.9.5.4</version>
634 <groupId>io.searchbox</groupId>
635 <artifactId>jest</artifactId>
636 <version>6.3.1</version>
639 <groupId>commons-logging</groupId>
640 <artifactId>commons-logging</artifactId>
645 <groupId>javax.servlet</groupId>
646 <artifactId>javax.servlet-api</artifactId>
647 <version>4.0.1</version>
648 <scope>provided</scope>
651 <groupId>junit</groupId>
652 <artifactId>junit</artifactId>
653 <version>4.12</version>
657 <groupId>commons-io</groupId>
658 <artifactId>commons-io</artifactId>
659 <version>2.6</version>
660 <!--<scope>test</scope>-->
663 <groupId>com.google.code.bean-matchers</groupId>
664 <artifactId>bean-matchers</artifactId>
665 <version>0.11</version>
669 <groupId>org.json</groupId>
670 <artifactId>json</artifactId>
671 <version>20190722</version>
674 <groupId>org.quartz-scheduler</groupId>
675 <artifactId>quartz</artifactId>
676 <version>2.3.1</version>
678 <!-- exclude 0.9.1.1 to avoid dupe of com.mchange:c3p0:0.9.2.1 -->
680 <groupId>c3p0</groupId>
681 <artifactId>c3p0</artifactId>
685 <!-- bridge to implement commons-logging using slf4j -->
687 <groupId>org.slf4j</groupId>
688 <artifactId>jcl-over-slf4j</artifactId>
689 <version>1.7.27</version>
692 <!-- springframework to override epsdk-app-common's and epsdk-core's versions -->
694 <groupId>org.springframework</groupId>
695 <artifactId>spring-core</artifactId>
696 <version>${springframework.version}</version>
699 <groupId>commons-logging</groupId>
700 <artifactId>commons-logging</artifactId>
705 <groupId>org.springframework</groupId>
706 <artifactId>spring-test</artifactId>
707 <version>${springframework.version}</version>
710 <groupId>org.springframework</groupId>
711 <artifactId>spring-tx</artifactId>
712 <version>${springframework.version}</version>
715 <groupId>org.springframework</groupId>
716 <artifactId>spring-web</artifactId>
717 <version>${springframework.version}</version>
720 <groupId>org.springframework</groupId>
721 <artifactId>spring-webmvc</artifactId>
722 <version>${springframework.version}</version>
725 <groupId>org.springframework</groupId>
726 <artifactId>spring-context-support</artifactId>
727 <version>${springframework.version}</version>
730 <groupId>org.springframework</groupId>
731 <artifactId>spring-orm</artifactId>
732 <version>${springframework.orm.version}</version>
735 <groupId>org.springframework</groupId>
736 <artifactId>spring-aop</artifactId>
737 <version>${springframework.version}</version>
741 <groupId>org.glassfish.jersey.core</groupId>
742 <artifactId>jersey-client</artifactId>
743 <version>${jersey.version}</version>
746 <groupId>org.glassfish.jersey.connectors</groupId>
747 <artifactId>jersey-jetty-connector</artifactId>
748 <version>${jersey.version}</version>
750 <!--https://stackoverflow.com/questions/44088493/jersey-stopped-working-with-injectionmanagerfactory-not-found-->
752 <groupId>org.glassfish.jersey.inject</groupId>
753 <artifactId>jersey-hk2</artifactId>
754 <version>${jersey.version}</version>
757 <groupId>com.fasterxml.jackson.jaxrs</groupId>
758 <artifactId>jackson-jaxrs-json-provider</artifactId>
759 <version>${jackson.version}</version>
762 <groupId>commons-beanutils</groupId>
763 <artifactId>commons-beanutils</artifactId>
766 <groupId>com.googlecode.json-simple</groupId>
767 <artifactId>json-simple</artifactId>
768 <version>1.1.1</version>
771 <groupId>org.seleniumhq.selenium</groupId>
772 <artifactId>selenium-java</artifactId>
773 <version>${selenium.version}</version>
777 <groupId>org.seleniumhq.selenium</groupId>
778 <artifactId>selenium-api</artifactId>
779 <version>${selenium.version}</version>
783 <groupId>org.testng</groupId>
784 <artifactId>testng</artifactId>
785 <version>6.14.3</version>
789 <groupId>org.mockito</groupId>
790 <artifactId>mockito-core</artifactId>
791 <version>2.23.0</version>
795 <groupId>org.seleniumhq.selenium</groupId>
796 <artifactId>selenium-firefox-driver</artifactId>
797 <version>${selenium.version}</version>
800 <groupId>xml-apis</groupId>
801 <artifactId>xml-apis</artifactId>
802 <version>2.0.2</version>
805 <groupId>org.yaml</groupId>
806 <artifactId>snakeyaml</artifactId>
807 <version>1.24</version>
810 <groupId>org.skyscreamer</groupId>
811 <artifactId>jsonassert</artifactId>
812 <version>1.5.0</version>
816 <groupId>org.onap.sdc.sdc-tosca</groupId>
817 <artifactId>sdc-tosca</artifactId>
818 <version>1.6.0</version>
819 <scope>compile</scope>
822 <groupId>net.javacrumbs.json-unit</groupId>
823 <artifactId>json-unit</artifactId>
824 <version>2.8.0</version>
828 <groupId>org.glassfish.jersey.media</groupId>
829 <artifactId>jersey-media-json-jackson</artifactId>
830 <version>${jersey.version}</version>
834 <groupId>org.apache.commons</groupId>
835 <artifactId>commons-lang3</artifactId>
836 <version>3.9</version>
839 <groupId>org.apache.commons</groupId>
840 <artifactId>commons-text</artifactId>
841 <version>1.7</version>
844 <groupId>org.apache.commons</groupId>
845 <artifactId>commons-proxy</artifactId>
846 <version>1.0</version>
849 <groupId>org.apache.commons</groupId>
850 <artifactId>commons-collections4</artifactId>
851 <version>4.4</version>
854 <groupId>org.hamcrest</groupId>
855 <artifactId>java-hamcrest</artifactId>
856 <version>2.0.0.0</version>
860 <groupId>org.togglz</groupId>
861 <artifactId>togglz-spring-core</artifactId>
862 <version>2.6.1.Final</version>
865 <groupId>com.h2database</groupId>
866 <artifactId>h2</artifactId>
867 <version>1.4.199</version>
871 <groupId>javax.xml.bind</groupId>
872 <artifactId>jaxb-api</artifactId>
873 <version>2.3.1</version>
877 <groupId>org.assertj</groupId>
878 <artifactId>assertj-core</artifactId>
879 <version>3.13.2</version>
883 <groupId>com.google.guava</groupId>
884 <artifactId>guava</artifactId>
885 <version>28.0-jre</version>
888 <groupId>io.springfox</groupId>
889 <artifactId>springfox-swagger2</artifactId>
890 <version>2.9.2</version>
893 <groupId>org.apache.maven</groupId>
894 <artifactId>maven-artifact</artifactId>
895 <version>3.6.1</version>