Facing issue with Dropbox API after migrating spring boot version to 3.2.2

93 Views Asked by At

We have recently upgraded spring boot version from 2.7.0 to 3.2.2 and Java version to 21 But after upgrading the spring version, the Dropbox API has started failing on fetching Client details at

ApiClient apiClient = Configuration.getDefaultApiClient();

Error

jakarta.servlet.ServletException: Handler dispatch failed: java.lang.LinkageError: ClassCastException: attempting to castjar:file:/.m2/repository/org/jboss/spec/javax/ws/rs/jboss-jaxrs-api_2.1_spec/2.0.1.Final/jboss-jaxrs-api_2.1_spec-2.0.1.Final.jar!/javax/ws/rs/client/ClientBuilder.class to jar:file:/.m2/repository/org/jboss/spec/javax/ws/rs/jboss-jaxrs-api_2.1_spec/2.0.1.Final/jboss-jaxrs-api_2.1_spec-2.0.1.Final.jar!/javax/ws/rs/client/ClientBuilder.class

Below are the maven dependencies for jaxrs and dropbox

    <dependency>
                <groupId>org.jboss.resteasy</groupId>
                <artifactId>resteasy-jaxrs</artifactId>
                <version>3.15.6.FINAL</version>
            </dependency>

<dependency>
            <groupId>com.dropbox.sign</groupId>
            <artifactId>dropbox-sign</artifactId>
            <version>1.2.0</version>
        </dependency>

Currently we are not able to resolve this issue, though we have tried with different version of dropbox and jaxrs.

We would be really grateful if someone can help us in right direction here.

2

There are 2 best solutions below

1
Natiraja Prajapati On

Change the version of Spring boot 3.2.2 to 3.0.0

1
Andy Wilkinson On

Unfortunately, there's no version of Dropbox Sign that's compatible with Spring Boot 3. At this time, Dropbox Sign only supports Jakarta EE 8 and Spring Boot 3.x requires EE 9 or later. You'll have to use Spring Boot 2.7.x if you want to use Dropbox Sign with it.