Preparing for Jakarta Validation update - removed own packaging
Jakarta Validation and Hibernate Validator is OSGi compatible and does
not need to be re-packaged anymore.
Signed-off-by: arjantijms <arjan.tijms@gmail.com>
diff --git a/nucleus/bean-validator-cdi/pom.xml b/nucleus/bean-validator-cdi/pom.xml
deleted file mode 100644
index 91588db..0000000
--- a/nucleus/bean-validator-cdi/pom.xml
+++ /dev/null
@@ -1,235 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
- Copyright (c) 1997, 2020 Oracle and/or its affiliates. All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v. 2.0, which is available at
- http://www.eclipse.org/legal/epl-2.0.
-
- This Source Code may also be made available under the following Secondary
- Licenses when the conditions for such availability set forth in the
- Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
- version 2 with the GNU Classpath Exception, which is available at
- https://www.gnu.org/software/classpath/license.html.
-
- SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
-
--->
-
-<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">
-
- <parent>
- <groupId>org.glassfish.main</groupId>
- <artifactId>glassfish-nucleus-parent</artifactId>
- <version>6.0.0-SNAPSHOT</version>
- <relativePath>../pom.xml</relativePath>
- </parent>
- <groupId>org.glassfish.main.bean-validator-cdi</groupId>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>bean-validator-cdi</artifactId>
- <name>HV. CDI portable extension as OSGi bundle</name>
- <description>Validation API (JSR 380) version ${javax.validation.version}, Hibernate Validator CDI portable extension version ${hibernate-validator.version} and its dependencies repackaged as OSGi bundle</description>
-
- <properties>
- <findbugs.skip>true</findbugs.skip>
- </properties>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <configuration>
- <useDefaultManifestFile>true</useDefaultManifestFile>
- <archive>
- <manifest>
- <addClasspath>true</addClasspath>
- <classpathLayoutType>custom</classpathLayoutType>
- <customClasspathLayout>${artifact.artifactId}.${artifact.extension}</customClasspathLayout>
- </manifest>
- </archive>
- <excludes>
- <exclude>**/.ade_path/**</exclude>
- </excludes>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- <version>2.4.0</version>
- <configuration>
- <instructions>
- <Embed-Dependency>
- <!-- Only specify root artifacts that need to be embedded, everything else
- will be pulled in automatically based on Private-Package settings. -->
- *; artifactId=hibernate-validator-cdi; inline=true
- </Embed-Dependency>
- <Export-Package>
- org.hibernate.validator.cdi.internal; version=${hibernate-validator.version},
- org.hibernate.validator.cdi.internal.interceptor; version=${hibernate-validator.version},
- </Export-Package>
-
- <Import-Package>
- javax.enterprise.inject,
- javax.enterprise.inject.*,
- *
- </Import-Package>
- <Implementation-Version>
- ${hibernate-validator.version}
- </Implementation-Version>
- </instructions>
- <!-- Maven uses the output directory (target/classes)
- rather than the final bundle, when compiling against
- projects in the same reactor (ie. the same build).
- Since this jar comprises of classes that come from
- some other jar and other modules depend on this
- artifact, we need to unpack.
- -->
- <unpackBundle>true</unpackBundle>
- </configuration>
- <executions>
- <execution>
- <id>osgi-bundle</id>
- <phase>package</phase>
- <goals>
- <goal>bundle</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>build-helper-maven-plugin</artifactId>
- <executions>
- <execution>
- <id>add-source</id>
- <phase>package</phase>
- <goals>
- <goal>add-source</goal>
- </goals>
- <configuration>
- <sources>
- <source>${project.build.directory}/alternateLocation</source>
- </sources>
- </configuration>
- </execution>
- <!--<execution>
- <id>attach-artifacts</id>
- <phase>package</phase>
- <goals>
- <goal>attach-artifact</goal>
- </goals>
- <configuration>
- <artifacts>
- <artifact>
- <file>${project.build.directory}/hibernate-validator-cdi-javadoc.jar</file>
- <classifier>javadoc</classifier>
- </artifact>
- </artifacts>
- </configuration>
- </execution>-->
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-dependency-plugin</artifactId>
- <executions>
- <execution>
- <id>get-sources</id>
- <phase>process-sources</phase>
- <goals>
- <goal>unpack</goal>
- </goals>
- <configuration>
- <outputDirectory>${project.build.directory}/alternateLocation</outputDirectory>
- <stripVersion>true</stripVersion>
- <artifactItems>
- <artifactItem>
- <groupId>org.hibernate.validator</groupId>
- <artifactId>hibernate-validator</artifactId>
- <version>${hibernate-validator.version}</version>
- <classifier>sources</classifier>
- <overWrite>false</overWrite>
- </artifactItem>
- </artifactItems>
- </configuration>
- </execution>
- <!--<execution>
- <id>get-javadoc</id>
- <phase>process-sources</phase>
- <goals>
- <goal>copy</goal>
- </goals>
- <configuration>
- <outputDirectory>${project.build.directory}</outputDirectory>
- <stripVersion>true</stripVersion>
- <artifactItems>
- <artifactItem>
- <groupId>org.hibernate.validator</groupId>
- <artifactId>hibernate-validator-cdi</artifactId>
- <version>${hibernate-validator.version}</version>
- <classifier>javadoc</classifier>
- <overWrite>false</overWrite>
- </artifactItem>
- </artifactItems>
- </configuration>
- </execution>-->
- </executions>
- </plugin>
- </plugins>
- </build>
-
- <dependencies>
- <dependency>
- <groupId>org.hibernate.validator</groupId>
- <artifactId>hibernate-validator-cdi</artifactId>
- <optional>true</optional>
- </dependency>
- </dependencies>
-
- <!--
- This module repackages various maven artifacts and artifacts like hibernate-validator
- and hibernate-validator-cdi does not have java-docs published. Hence, we cannot
- repackage the java-docs. We skip java-doc generation and use empty java-doc plugin
- to make Nexus release job succeed.
- -->
- <profiles>
- <profile>
- <!-- generate empty javadoc jar -->
- <id>release-phase2</id>
- <activation>
- <activeByDefault>false</activeByDefault>
- </activation>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-javadoc-plugin</artifactId>
- <configuration>
- <skip>true</skip>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <executions>
- <execution>
- <id>create-empty-javadoc-jar</id>
- <goals>
- <goal>jar</goal>
- </goals>
- <configuration>
- <classesDirectory>
- ${project.build.directory}/javadoc
- </classesDirectory>
- <classifier>javadoc</classifier>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
- </profiles>
-</project>
diff --git a/nucleus/bean-validator/pom.xml b/nucleus/bean-validator/pom.xml
deleted file mode 100644
index 0f5566f..0000000
--- a/nucleus/bean-validator/pom.xml
+++ /dev/null
@@ -1,300 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
- Copyright (c) 1997, 2020 Oracle and/or its affiliates. All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v. 2.0, which is available at
- http://www.eclipse.org/legal/epl-2.0.
-
- This Source Code may also be made available under the following Secondary
- Licenses when the conditions for such availability set forth in the
- Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
- version 2 with the GNU Classpath Exception, which is available at
- https://www.gnu.org/software/classpath/license.html.
-
- SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
-
--->
-
-<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">
-
- <parent>
- <groupId>org.glassfish.main</groupId>
- <artifactId>glassfish-nucleus-parent</artifactId>
- <version>6.0.0-SNAPSHOT</version>
- <relativePath>../pom.xml</relativePath>
- </parent>
- <groupId>org.glassfish.main.bean-validator</groupId>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>bean-validator</artifactId>
- <name>javax.validation:${javax.validation.version} as OSGi bundle</name>
- <description>JSR 380's RI, Hibernate Validator version ${hibernate-validator.version} and its dependencies repackaged as OSGi bundle</description>
-
- <properties>
- <findbugs.skip>true</findbugs.skip>
- </properties>
-
- <developers>
- <developer>
- <id>ss141213</id>
- <name>Sahoo</name>
- <organization>Sun Microsystems, Inc.</organization>
- <roles>
- <role>developer</role>
- </roles>
- </developer>
- </developers>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <configuration>
- <useDefaultManifestFile>true</useDefaultManifestFile>
- <archive>
- <manifest>
- <addClasspath>true</addClasspath>
- <classpathLayoutType>custom</classpathLayoutType>
- <customClasspathLayout>${artifact.artifactId}.${artifact.extension}</customClasspathLayout>
- </manifest>
- </archive>
- <excludes>
- <exclude>**/.ade_path/**</exclude>
- </excludes>
- </configuration>
- </plugin>
-
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- <version>2.4.0</version>
- <configuration>
- <instructions>
- <Embed-Dependency>
- <!-- Only specify root artifacts that need to be embedded, everything else
- will be pulled in automatically based on Private-Package settings. -->
- *; artifactId=hibernate-validator; inline=true
- </Embed-Dependency>
- <Export-Package>
- javax.validation.*; version=${javax.validation.osgi.version},
- org.hibernate.validator.*; version=${hibernate-validator.version},
- org.glassfish.validation; version=${hibernate-validator.version}
- </Export-Package>
-
- <Private-Package>
- <!-- JBoss logging is used by Hibernate Validator as of version 4.3.0.Final.
- We must repackage it privately in this bundle.
- -->
- org.jboss.logging.*,com.fasterxml.*
- </Private-Package>
-
- <Import-Package>
- <!--
- - bean validator has optional dependency on JPA API. More over, it relies on
- JPA 2.0, as it tries to dynamically load javax.persistence.PersistenceUtil.class,
- which is a JPA 2 class.
- - jboss.logging has the following optional dependencies (see manifest in
- jboss-logging-*.jar):
- org.apache.log4j, org.jboss.logmanager, org.slf4j, org.slf4j.spi
- - Hibernate Validator has optional dependencies on (see manifest in
- hibernate-validator-*.jar): javax.persistence, org.joda.time, org.jsoup, org.jsoup.safety
- javax.enterprise.inject.*; resolution:=optional,
- -->
- org.slf4j; org.slf4j.spi; org.slf4j.helpers; version=${slf4j.version}; resolution:=optional,
- javax.persistence.*; version="2.0"; resolution:=optional,
- org.joda.time; resolution:=optional; version="[2.0.0,3.0.0)",
- javax.money;version="[1.0.0,2.0.0)";resolution:=optional,
- org.jsoup.*; resolution:=optional; version="[1.5.2,2.0.0)",
- org.apache.log4j; resolution:=optional,javax.script.*;version="0",
- org.jboss.logmanager; resolution:=optional,
- javax.el;version="[2.2,4]",
- com.sun.el,
- com.sun.el.*,
- com.sun.el.lang.*,
- com.sun.el.util.*,
- javax.enterprise.inject.*; resolution:=optional,
- javax.enterprise.context.*; resolution:=optional,
- javax.enterprise.event.*; resolution:=optional,
- javax.enterprise.util.*; resolution:=optional,
- javax.interceptor.*; resolution:=optional,
- com.thoughtworks.paranamer.*; resolution:=optional,
- javafx.beans.value.*; resolution:=optional,
- javafx.beans.property.*; resolution:=optional,
- javafx.application; resolution:=optional,
- org.apache.logging.log4j.*; resolution:=optional,
- org.hibernate.validator.*; version=${hibernate-validator.version},
- *
- </Import-Package>
- <!--
- See https://hibernate.onjira.com/browse/HV-562 which I have filed against hibernate validator.
- It's a bug in hibernate validator the way it detects JPA. It uses thread's context classloader to
- see if JPA classes are available and then goes onto instantiate its JPATraversableResolver which
- has staic dependency on JPA classes. It should have used its own class loader to detect existence
- of JPA classes. If we don't add this DynamicImport-Package, what could happen is that at the time
- of resolution of hibernate-validator, it's optional dependency on javax.persistence may not be
- satisfied, so this bundle won't be able to load jpa classes, yet when it uses TCL to detect JPA,
- that might return true. Based on this outcome, it could go onto use JPATraversableResolver and
- eventually fail with NCDFE. Adding a DynamicImport-Package helps rewiring this bundle to JPA late.
- -->
- <DynamicImport-Package>javax.persistence; javax.persistence.*; version="2.0"</DynamicImport-Package>
- <Implementation-Version>
- ${hibernate-validator.version}
- </Implementation-Version>
- </instructions>
- <!-- Maven uses the output directory (target/classes)
- rather than the final bundle, when compiling against
- projects in the same reactor (ie. the same build).
- Since this jar comprises of classes that come from
- some other jar and other modules depend on this
- artifact, we need to unpack.
- -->
- <unpackBundle>true</unpackBundle>
- </configuration>
- <executions>
- <execution>
- <id>osgi-bundle</id>
- <phase>package</phase>
- <goals>
- <goal>bundle</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-dependency-plugin</artifactId>
- <executions>
- <execution>
- <id>get-sources</id>
- <phase>process-sources</phase>
- <goals>
- <goal>unpack</goal>
- </goals>
- <configuration>
- <outputDirectory>${project.build.directory}/sources</outputDirectory>
- <stripVersion>true</stripVersion>
- <artifactItems>
- <artifactItem>
- <groupId>org.hibernate.validator</groupId>
- <artifactId>hibernate-validator</artifactId>
- <version>${hibernate-validator.version}</version>
- <classifier>sources</classifier>
- <overWrite>false</overWrite>
- </artifactItem>
- </artifactItems>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>build-helper-maven-plugin</artifactId>
- <executions>
- <execution>
- <id>add-source</id>
- <phase>compile</phase>
- <goals>
- <goal>add-source</goal>
- </goals>
- <configuration>
- <sources>
- <source>${project.build.directory}/sources</source>
- </sources>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- <dependencies>
- <dependency>
- <groupId>org.hibernate.validator</groupId>
- <artifactId>hibernate-validator</artifactId>
- <optional>true</optional>
- </dependency>
- <!-- This dependency is not required in latest hibernate jars. Keeping this in commented form for reference.
- <dependency>-->
- <!--
- Although hibernate validator uses maven-shade-plugin to repackage com.googlecode.jtype classes
- bu org.hibernate.validator.jtype classes, the shade plugin seems to leave behind some
- constant pool entries referring to google classes, so we need to package google jtype classes as well.
- I have asked Emmanuel Bernard about this. It appears to be a bug in shade plugin or HV.
- Because of shade-plugin, the dependency is remove from hibernate-validator pom, so we need to add it
- here so that we can package these classes.
- -->
- <!--<groupId>com.googlecode.jtype</groupId>
- <artifactId>jtype</artifactId>
- <optional>true</optional>
- </dependency>-->
- <dependency>
- <groupId>org.jboss.logging</groupId>
- <artifactId>jboss-logging</artifactId>
- <optional>true</optional>
- </dependency>
- <!--
- Remove this once HK2 config bean generation issue is fixed when using 2.0.0 based version of javax.validation APIs.
- Maven bundle plugin while determining dependencies of hibernate-validator will find javax.validation.validation-api in its
- dependencies list and pick the version value based on the javax.validation.validation-api dependency defined
- in parent project i.e., nuclues' pom.xml.
- Hence explicitly adding the required version as we use different version for compilation purposes.
- -->
- <dependency>
- <groupId>javax.validation</groupId>
- <artifactId>validation-api</artifactId>
- <version>${javax.validation.version}</version>
- <optional>true</optional>
- </dependency>
- <dependency>
- <groupId>org.jboss.logging</groupId>
- <artifactId>jboss-logging-annotations</artifactId>
- <optional>true</optional>
- </dependency>
- </dependencies>
-
- <!--
- This module repackages various maven artifacts and artifacts like hibernate-validator does not
- have java-docs published. Hence, we cannot repackage the java-docs. We skip java-doc
- generation and use empty java-doc plugin
- to make Nexus release job succeed.
- -->
- <profiles>
- <profile>
- <!-- generate empty javadoc jar -->
- <id>release-phase2</id>
- <activation>
- <activeByDefault>false</activeByDefault>
- </activation>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-javadoc-plugin</artifactId>
- <configuration>
- <skip>true</skip>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <executions>
- <execution>
- <id>create-empty-javadoc-jar</id>
- <goals>
- <goal>jar</goal>
- </goals>
- <configuration>
- <classesDirectory>
- ${project.build.directory}/javadoc
- </classesDirectory>
- <classifier>javadoc</classifier>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
- </profiles>
-</project>
diff --git a/nucleus/featuresets/atomic/pom.xml b/nucleus/featuresets/atomic/pom.xml
index 0ebdb03..b3688e7 100644
--- a/nucleus/featuresets/atomic/pom.xml
+++ b/nucleus/featuresets/atomic/pom.xml
@@ -316,9 +316,12 @@
</exclusions>
</dependency>
<dependency>
- <groupId>org.glassfish.main.bean-validator</groupId>
- <artifactId>bean-validator</artifactId>
- <version>${project.version}</version>
+ <groupId>javax.validation</groupId>
+ <artifactId>validation-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.hibernate.validator</groupId>
+ <artifactId>hibernate-validator</artifactId>
<exclusions>
<exclusion>
<groupId>*</groupId>
@@ -327,9 +330,8 @@
</exclusions>
</dependency>
<dependency>
- <groupId>org.glassfish.main.bean-validator-cdi</groupId>
- <artifactId>bean-validator-cdi</artifactId>
- <version>${project.version}</version>
+ <groupId>org.hibernate.validator</groupId>
+ <artifactId>hibernate-validator-cdi</artifactId>
<exclusions>
<exclusion>
<groupId>*</groupId>
diff --git a/nucleus/pom.xml b/nucleus/pom.xml
index 7639465..27fa150 100644
--- a/nucleus/pom.xml
+++ b/nucleus/pom.xml
@@ -79,8 +79,6 @@
<module>flashlight</module>
<module>grizzly</module>
<module>deployment</module>
- <module>bean-validator</module>
- <module>bean-validator-cdi</module>
<module>distributions</module>
<module>security</module>
<module>test-utils</module>