Skip to content

Commit

Permalink
Upgrade Jersey to 2.29 (#813)
Browse files Browse the repository at this point in the history
* Test with Jersey Release Candidate.

Signed-off-by: Tomas Langer <tomas.langer@oracle.com>

* Fixes for update to Jersey RC

Signed-off-by: Tomas Langer <tomas.langer@oracle.com>

* Excluded hk2 jakarta.inject

Signed-off-by: Tomas Langer <tomas.langer@oracle.com>

* Copyright fixes

Signed-off-by: Tomas Langer <tomas.langer@oracle.com>

* Upgrade to Jersey 2.29 released version

Signed-off-by: Tomas Langer <tomas.langer@oracle.com>

* Upgrade to Jersey 2.29 released version

Signed-off-by: Tomas Langer <tomas.langer@oracle.com>

* Force updates to try fix issue with socket reset

Signed-off-by: Tomas Langer <tomas.langer@oracle.com>

* Modules for jersey to exclude jakarta and include javax

Signed-off-by: Tomas Langer <tomas.langer@oracle.com>

* module-info fixes for json and health

Signed-off-by: Tomas Langer <tomas.langer@oracle.com>

* Copyright fixes

Signed-off-by: Tomas Langer <tomas.langer@oracle.com>

* Spotbugs fix

Signed-off-by: Tomas Langer <tomas.langer@oracle.com>

* Jersey dependency fix

Signed-off-by: Tomas Langer <tomas.langer@oracle.com>

* Better assertion to troubleshoot test failures.

Signed-off-by: Tomas Langer <tomas.langer@oracle.com>
  • Loading branch information
tomas-langer authored Jun 27, 2019
1 parent c1a6917 commit e2d2a03
Show file tree
Hide file tree
Showing 39 changed files with 469 additions and 130 deletions.
2 changes: 1 addition & 1 deletion examples/quickstarts/helidon-quickstart-mp/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ repositories {
dependencies {
compile "io.helidon:helidon-bom:${project.helidonversion}"
compile 'io.helidon.microprofile.bundles:helidon-microprofile-1.2'
compile 'org.glassfish.jersey.media:jersey-media-json-binding:2.26'
compile 'org.glassfish.jersey.media:jersey-media-json-binding:2.29'
runtime 'org.jboss:jandex:2.0.4.Final'
runtime 'javax.activation:javax.activation-api:1.2.0'
testCompile 'org.junit.jupiter:junit-jupiter-api:5.1.0'
Expand Down
2 changes: 1 addition & 1 deletion examples/quickstarts/helidon-quickstart-mp/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -171,7 +171,7 @@
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-json-binding</artifactId>
<version>2.26</version>
<version>2.29</version>
</dependency>
</dependencies>
</dependencyManagement>
Expand Down
2 changes: 1 addition & 1 deletion examples/todo-app/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@
<version.lib.helidon>${project.version}</version.lib.helidon>

<version.lib.cassandra>3.4.0</version.lib.cassandra>
<version.lib.jersey>2.26</version.lib.jersey>
<version.lib.jersey>2.29</version.lib.jersey>
<version.lib.jackson>2.9.5</version.lib.jackson>
<version.lib.guava>16.0.1</version.lib.guava>

Expand Down
4 changes: 2 additions & 2 deletions grpc/client/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -85,8 +85,8 @@
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.json</groupId>
<artifactId>javax.json-api</artifactId>
<groupId>org.glassfish</groupId>
<artifactId>javax.json</artifactId>
<scope>test</scope>
</dependency>
<dependency>
Expand Down
4 changes: 2 additions & 2 deletions grpc/core/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -85,8 +85,8 @@
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.json</groupId>
<artifactId>javax.json-api</artifactId>
<groupId>org.glassfish</groupId>
<artifactId>javax.json</artifactId>
<scope>test</scope>
</dependency>
<dependency>
Expand Down
4 changes: 2 additions & 2 deletions grpc/metrics/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -60,8 +60,8 @@
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.json</groupId>
<artifactId>javax.json-api</artifactId>
<groupId>org.glassfish</groupId>
<artifactId>javax.json</artifactId>
<scope>test</scope>
</dependency>
<dependency>
Expand Down
5 changes: 0 additions & 5 deletions grpc/server/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -80,11 +80,6 @@
<artifactId>hamcrest-all</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.json</groupId>
<artifactId>javax.json-api</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.json</artifactId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@
import zipkin2.Span;
import zipkin2.junit.ZipkinRule;

import static org.hamcrest.CoreMatchers.containsString;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.CoreMatchers.notNullValue;
import static org.hamcrest.CoreMatchers.not;
Expand Down Expand Up @@ -119,11 +120,11 @@ public void shouldTraceMethodNameAndHeaders() {

String sTraces = listTraces.toString();

assertThat("The traces should include method name", sTraces.contains("grpc.method_name"));
assertThat("The traces should include Echo method", sTraces.contains("EchoService/Echo"));
assertThat("The traces should include method name", sTraces, containsString("grpc.method_name"));
assertThat("The traces should include Echo method", sTraces, containsString("EchoService/Echo"));

assertThat("Tha traces should include headers", sTraces.contains("grpc.headers"));
assertThat("Tha traces should include attributes", sTraces.contains("grpc.call_attributes"));
assertThat("Tha traces should include headers", sTraces, containsString("grpc.headers"));
assertThat("Tha traces should include attributes", sTraces, containsString("grpc.call_attributes"));
}

@Test
Expand Down
6 changes: 3 additions & 3 deletions health/health-checks/src/main/java9/module-info.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2018 Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2018, 2019 Oracle and/or its affiliates. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand All @@ -22,11 +22,11 @@
requires java.management;

requires static cdi.api;
requires javax.inject;
requires static javax.inject;

requires io.helidon.common;
requires io.helidon.health;
requires microprofile.config.api;
requires static microprofile.config.api;
requires microprofile.health.api;

exports io.helidon.health.checks;
Expand Down
3 changes: 2 additions & 1 deletion health/health/src/main/java9/module-info.java
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,8 @@
requires transitive microprofile.health.api;
requires io.helidon.webserver;
requires io.helidon.media.jsonp.server;
requires org.glassfish.java.json;
requires java.json;

exports io.helidon.health;
provides org.eclipse.microprofile.health.spi.HealthCheckResponseProvider with io.helidon.health.HealthCheckResponseProviderImpl;
}
78 changes: 78 additions & 0 deletions jersey/client/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2019 Oracle and/or its affiliates. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->

<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">
<parent>
<groupId>io.helidon.jersey</groupId>
<artifactId>helidon-jersey-project</artifactId>
<version>1.1.3-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

<artifactId>helidon-jersey-client</artifactId>

<dependencies>
<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-client</artifactId>
<version>${version.lib.jersey}</version>
<exclusions>
<exclusion>
<groupId>jakarta.annotation</groupId>
<artifactId>jakarta.annotation-api</artifactId>
</exclusion>
<exclusion>
<groupId>com.sun.activation</groupId>
<artifactId>jakarta.activation</artifactId>
</exclusion>
<exclusion>
<groupId>org.glassfish.hk2.external</groupId>
<artifactId>jakarta.inject</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.inject</groupId>
<artifactId>jersey-hk2</artifactId>
<exclusions>
<exclusion>
<groupId>org.glassfish.hk2.external</groupId>
<artifactId>javax.inject</artifactId>
</exclusion>
<exclusion>
<groupId>jakarta.annotation</groupId>
<artifactId>jakarta.annotation-api</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>javax.activation-api</artifactId>
</dependency>
<dependency>
<!-- needed for correct module name -->
<groupId>javax.annotation</groupId>
<artifactId>javax.annotation-api</artifactId>
</dependency>
<dependency>
<groupId>javax.inject</groupId>
<artifactId>javax.inject</artifactId>
</dependency>
</dependencies>
</project>
27 changes: 27 additions & 0 deletions jersey/client/src/main/java9/module-info.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
/*
* Copyright (c) 2018, 2019 Oracle and/or its affiliates. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

/**
* Jersey client.
*/
module io.helidon.jersey.client {
requires transitive java.ws.rs;
requires transitive jersey.common;
requires transitive jersey.client;

requires transitive java.annotation;
requires transitive javax.inject;
}
52 changes: 52 additions & 0 deletions jersey/jsonp/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2019 Oracle and/or its affiliates. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->

<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">
<parent>
<artifactId>helidon-jersey-project</artifactId>
<groupId>io.helidon.jersey</groupId>
<version>1.1.3-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

<artifactId>helidon-jersey-media-jsonp</artifactId>

<dependencies>
<dependency>
<!-- Jersey support for JSON-P -->
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-json-processing</artifactId>
<exclusions>
<exclusion>
<groupId>org.glassfish</groupId>
<artifactId>jakarta.json</artifactId>
</exclusion>
<exclusion>
<groupId>jakarta.annotation</groupId>
<artifactId>jakarta.annotation-api</artifactId>
</exclusion>
<exclusion>
<!-- this is provided anyway -->
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-common</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</project>
22 changes: 22 additions & 0 deletions jersey/jsonp/src/main/java9/module-info.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
/*
* Copyright (c) 2018, 2019 Oracle and/or its affiliates. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

/**
* Jersey Media Json Processing.
*/
module io.helidon.jersey.media.jsonp {
requires transitive jersey.media.json.processing;
}
48 changes: 48 additions & 0 deletions jersey/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2019 Oracle and/or its affiliates. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->

<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">
<parent>
<artifactId>helidon-project</artifactId>
<groupId>io.helidon</groupId>
<version>1.1.3-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<packaging>pom</packaging>

<groupId>io.helidon.jersey</groupId>
<artifactId>helidon-jersey-project</artifactId>
<name>Helidon Jersey</name>

<description>
Helidon wrapping of Jersey modules to correct classpath.
Currently used to fix dependencies from jakarta namespace to javax namespace
</description>

<modules>
<module>client</module>
<module>server</module>
<module>jsonp</module>
</modules>

<properties>
<!-- these modules do not contain source code -->
<spotbugs.skip>true</spotbugs.skip>
</properties>
</project>
Loading

0 comments on commit e2d2a03

Please sign in to comment.