Skip to content

Commit

Permalink
b153-Switch JAX-RS API dependencies to jakarta.ws.rs-api (#500)
Browse files Browse the repository at this point in the history
Updated dependencies and imports to switch to jakarta EE9 (javax vs jakarta)
---------

Co-authored-by: Jad El-khoury <jad.elkhoury@lynxwork.com>
Co-authored-by: Andrew Berezovskyi <andriib@kth.se>
  • Loading branch information
3 people committed Apr 5, 2024
1 parent f5c2f62 commit 17ca363
Show file tree
Hide file tree
Showing 127 changed files with 1,494 additions and 1,404 deletions.
5 changes: 4 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,17 +7,20 @@
- Introducing capability to set the servletUri to be used by the OAuthConfiguration

### Changed

- 🧨Migrated from Javax to Jakarta packages
- upgrade to Jersey 3.1.5
- Kotlin 1.9.0 is used; `kotlin-stdlib-jdk8` dependency was replaced with `kotlin-stdlib` due to [Kotlin updates](https://kotlinlang.org/docs/whatsnew18.html#updated-jvm-compilation-target).
- Allow application to reset the oauth token cached within the server, when it deems that it is no longer valid
- 🧨Corrected cardinality and range of the oslc_config:acceptedBy property (from String[0..1] to Resource[0..*])
- changed scope of dependencies in oauth-webapp to avoid inclusion multiple times during runtime.
- Migrated from Javax to Jakarta packages, including upgrade to Jersey 3.1.5

### Deprecated

### Removed

- 🧨 Support for JDK 11 (and all versions below 17) is removed. **JDK 17 is the new baseline for Eclipse Lyo.** The SDK and sample code has been tested using JDK 17, 20, and 21-ea.
- 🧨 Support for Java EE and Jakarta EE 8 is removed.

### Fixed

Expand Down
335 changes: 177 additions & 158 deletions client/oslc-client/pom.xml
Original file line number Diff line number Diff line change
@@ -1,167 +1,186 @@
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<parent>
<groupId>org.eclipse.lyo.clients</groupId>
<artifactId>clients-parent</artifactId>
<version>6.0.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>

<artifactId>oslc-client</artifactId>
<parent>
<groupId>org.eclipse.lyo.clients</groupId>
<artifactId>clients-parent</artifactId>
<version>6.0.0-SNAPSHOT</version>
<name>Lyo :: Client :: OSLC JAX-RS 2.0 (new)</name>
<description>Eclipse Lyo OSLC Java client based on OSLC4J and JAX-RS 2.0</description>
<relativePath>../pom.xml</relativePath>
</parent>

<dependencies>
<dependency>
<groupId>org.eclipse.lyo.clients</groupId>
<artifactId>oslc-client-base</artifactId>
<version>${v.lyo}</version>
</dependency>
<artifactId>oslc-client</artifactId>
<version>6.0.0-SNAPSHOT</version>
<name>Lyo :: Client :: OSLC JAX-RS 2.0 (new)</name>
<description>Eclipse Lyo OSLC Java client based on OSLC4J and JAX-RS 2.0</description>

<dependencies>
<dependency>
<groupId>org.eclipse.lyo.clients</groupId>
<artifactId>oslc-client-base</artifactId>
<version>${v.lyo}</version>
</dependency>

<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${v.slf4j}</version>
</dependency>
<dependency>
<groupId>org.apache.jena</groupId>
<artifactId>apache-jena-libs</artifactId>
<type>pom</type>
<version>${v.jena}</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>${v.httpclient}</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>${v.slf4j}</version>
</dependency>
<dependency>
<groupId>net.oauth.core</groupId>
<artifactId>oauth</artifactId>
<version>20100527</version>
</dependency>
<dependency>
<groupId>net.oauth.core</groupId>
<artifactId>oauth-consumer</artifactId>
<version>20100527</version>
</dependency>
<dependency>
<groupId>net.oauth.core</groupId>
<artifactId>oauth-httpclient4</artifactId>
<version>20090913</version>
<exclusions>
<exclusion>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.eclipse.lyo.oslc4j.core</groupId>
<artifactId>oslc4j-core</artifactId>
<version>${v.lyo}</version>
</dependency>
<dependency>
<groupId>org.eclipse.lyo.oslc4j.core</groupId>
<artifactId>oslc4j-jena-provider</artifactId>
<version>${v.lyo}</version>
</dependency>
<dependency>
<groupId>org.eclipse.lyo.oslc4j.core</groupId>
<artifactId>oslc4j-json4j-provider</artifactId>
<version>${v.lyo}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${v.slf4j}</version>
</dependency>
<dependency>
<groupId>org.apache.jena</groupId>
<artifactId>apache-jena-libs</artifactId>
<type>pom</type>
<version>${v.jena}</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>${v.httpclient}</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>${v.slf4j}</version>
</dependency>
<dependency>
<groupId>org.eclipse.lyo.server</groupId>
<artifactId>net.oauth.core-oauth-jakarta</artifactId>
<version>${v.lyo}</version>
<!-- Now that we have the Jakarta binary, exclude the non-jakarta binary.
Otherwise, both the Jakarta & non-Jakarta jar files appear in the war file,
causing warnings that classes are scanned from multiple locations -->
<exclusions>
<exclusion>
<groupId>net.oauth.core</groupId>
<artifactId>oauth</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.eclipse.lyo.server</groupId>
<artifactId>net.oauth.core-oauth-consumer-jakarta</artifactId>
<version>${v.lyo}</version>
<!-- Now that we have the Jakarta binary, exclude the non-jakarta binary.
Otherwise, both the Jakarta & non-Jakarta jar files appear in the war file,
causing warnings that classes are scanned from multiple locations -->
<exclusions>
<exclusion>
<groupId>net.oauth.core</groupId>
<artifactId>oauth-consumer</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.eclipse.lyo.server</groupId>
<artifactId>net.oauth.core-oauth-httpclient4-jakarta</artifactId>
<version>${v.lyo}</version>
<!-- Now that we have the Jakarta binary, exclude the non-jakarta binary.
Otherwise, both the Jakarta & non-Jakarta jar files appear in the war file,
causing warnings that classes are scanned from multiple locations -->
<exclusions>
<exclusion>
<groupId>net.oauth.core</groupId>
<artifactId>oauth-httpclient4</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.eclipse.lyo.oslc4j.core</groupId>
<artifactId>oslc4j-core</artifactId>
<version>${v.lyo}</version>
</dependency>
<dependency>
<groupId>org.eclipse.lyo.oslc4j.core</groupId>
<artifactId>oslc4j-jena-provider</artifactId>
<version>${v.lyo}</version>
</dependency>
<dependency>
<groupId>org.eclipse.lyo.oslc4j.core</groupId>
<artifactId>oslc4j-json4j-provider</artifactId>
<version>${v.lyo}</version>
</dependency>

<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<!--FIXME https://bugs.eclipse.org/bugs/show_bug.cgi?id=513048-->
<!-- <scope>provided</scope>-->
</dependency>
<dependency>
<groupId>jakarta.ws.rs</groupId>
<artifactId>jakarta.ws.rs-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>jakarta.servlet</groupId>
<artifactId>jakarta.servlet-api</artifactId>
</dependency>
<dependency>
<groupId>jakarta.ws.rs</groupId>
<artifactId>jakarta.ws.rs-api</artifactId>
</dependency>

<!--TEST-->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>${v.slf4j}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<!--CQ 13719-->
<groupId>org.assertj</groupId>
<artifactId>assertj-core</artifactId>
<scope>test</scope>
</dependency>
<!--TEST-->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>${v.slf4j}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<!--CQ 13719-->
<groupId>org.assertj</groupId>
<artifactId>assertj-core</artifactId>
<scope>test</scope>
</dependency>

<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-client</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.inject</groupId>
<artifactId>jersey-hk2</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-client</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.inject</groupId>
<artifactId>jersey-hk2</artifactId>
<scope>test</scope>
</dependency>

</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
</plugin>
</plugins>
</build>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,9 @@
package org.eclipse.lyo.client;

import java.util.Map;
import javax.ws.rs.client.Client;
import javax.ws.rs.core.Response;

import jakarta.ws.rs.client.Client;
import jakarta.ws.rs.core.Response;

/**
* An OSLC Client that extends the JAX-RS 2.0 REST client with OSLC specific CRUD and
Expand Down
Loading

0 comments on commit 17ca363

Please sign in to comment.