aboutsummaryrefslogtreecommitdiffstats
path: root/configserver
diff options
context:
space:
mode:
authorgjoranv <gv@verizonmedia.com>2022-03-29 13:30:58 +0200
committerGitHub <noreply@github.com>2022-03-29 13:30:58 +0200
commit84ba77ae7d59a04d6aa33cd1270af35cd1398e2d (patch)
tree1990ea50eab6f3f6dd28d0b8d382b3db977de976 /configserver
parent322e58f2f45288bb9522aff6ef434a24fee255f2 (diff)
parent81758a3041005db5be1eaebe9ed171177b08f39c (diff)
Merge pull request #21859 from vespa-engine/remove-jersey-media-bundles_3
Remove jersey media bundles 3 [run-systemtest]
Diffstat (limited to 'configserver')
-rw-r--r--configserver/pom.xml44
-rw-r--r--configserver/src/main/java/com/fasterxml/jackson/jaxrs/json/package-info.java5
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/serviceview/StateRequestHandler.java2
3 files changed, 51 insertions, 0 deletions
diff --git a/configserver/pom.xml b/configserver/pom.xml
index 8e604b930f6..110099421d1 100644
--- a/configserver/pom.xml
+++ b/configserver/pom.xml
@@ -194,11 +194,39 @@
<scope>provided</scope>
</dependency>
<dependency>
+ <!-- Do not remove, as long as this is provided by jdisc and configserver uses jersey-client -->
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-annotations</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <!-- Do not remove, as long as this is provided by jdisc and configserver uses jersey-client -->
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-core</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
+ <groupId>com.fasterxml.jackson.jaxrs</groupId>
+ <artifactId>jackson-jaxrs-json-provider</artifactId>
+ <exclusions>
+ <exclusion>
+ <!-- Conflicts with javax.activation:javax.activation-api:1.2.0, which is "exported" via jdisc_core. -->
+ <groupId>jakarta.activation</groupId>
+ <artifactId>jakarta.activation-api</artifactId>
+ </exclusion>
+ <exclusion>
+ <!-- Conflicts with javax.xml.bind:jaxb-api:2.3, which is "exported" via jdisc_core.-->
+ <groupId>jakarta.xml.bind</groupId>
+ <artifactId>jakarta.xml.bind-api</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-compress</artifactId>
</dependency>
@@ -245,6 +273,17 @@
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-json-jackson</artifactId>
+ <exclusions>
+ <!-- Prevent embedding deps provided by jdisc -->
+ <exclusion>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-annotations</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-core</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<!-- Not needed by configserver, but by controller. Also pulls in mimepull. -->
@@ -260,6 +299,11 @@
<groupId>com.yahoo.vespa</groupId>
<artifactId>bundle-plugin</artifactId>
<extensions>true</extensions>
+ <configuration>
+ <!-- TODO Vespa 8: remove importPackage when the jackson-jaxrs-json-provider bundle is no longer installed in jdisc -->
+ <!-- added to ensure using the same class as orchestrator, core-dump-reporter, provision-controller and controller-clients -->
+ <importPackage>com.fasterxml.jackson.jaxrs.json;version="[2.12.6,3)"</importPackage>
+ </configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
diff --git a/configserver/src/main/java/com/fasterxml/jackson/jaxrs/json/package-info.java b/configserver/src/main/java/com/fasterxml/jackson/jaxrs/json/package-info.java
new file mode 100644
index 00000000000..4ea1e169f0f
--- /dev/null
+++ b/configserver/src/main/java/com/fasterxml/jackson/jaxrs/json/package-info.java
@@ -0,0 +1,5 @@
+@ExportPackage(version = @Version(major = 2, minor = 12, micro = 6))
+package com.fasterxml.jackson.jaxrs.json;
+
+import com.yahoo.osgi.annotation.ExportPackage;
+import com.yahoo.osgi.annotation.Version;
diff --git a/configserver/src/main/java/com/yahoo/vespa/serviceview/StateRequestHandler.java b/configserver/src/main/java/com/yahoo/vespa/serviceview/StateRequestHandler.java
index d3c19bb0ba5..30975be61e2 100644
--- a/configserver/src/main/java/com/yahoo/vespa/serviceview/StateRequestHandler.java
+++ b/configserver/src/main/java/com/yahoo/vespa/serviceview/StateRequestHandler.java
@@ -1,6 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.serviceview;
+import com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider;
import com.google.inject.Inject;
import com.yahoo.cloud.config.ConfigserverConfig;
import com.yahoo.container.jdisc.ThreadedHttpRequestHandler;
@@ -41,6 +42,7 @@ public class StateRequestHandler extends RestApiRequestHandler<StateRequestHandl
.newBuilder()
.property(ClientProperties.CONNECT_TIMEOUT, 10000)
.property(ClientProperties.READ_TIMEOUT, 10000)
+ .register(JacksonJsonProvider.class)
.register((ClientRequestFilter) ctx -> ctx.getHeaders().put(HttpHeaders.USER_AGENT, List.of(USER_AGENT)))
.build();