XeroAPI / Xero-Java

Official Java client for use with Xero API
MIT License
78 stars 88 forks source link

Error when trying to use the Xero java API on Spring Boot / Java 17 #357

Open oss-linux-etc opened 10 months ago

oss-linux-etc commented 10 months ago

Here is what I'm seeing:

screen

Calling code:

List<Connection> connection = idApi.getConnections(tokenResponse.getAccessToken(), null);

github-actions[bot] commented 10 months ago

PETOSS-377

github-actions[bot] commented 10 months ago

Thanks for raising an issue, a ticket has been created to track your request

oss-linux-etc commented 10 months ago

There's a PR relating to a fix for this to update to Java 17.

dalli98 commented 9 months ago

@oss-linux-etc I solved this issue by using the following dependency in pom.xml

<dependency>
    <groupId>com.github.xeroapi</groupId>
    <artifactId>xero-java</artifactId>
    <version>4.29.1</version>
    <exclusions>
        <exclusion>
            <groupId>org.glassfish.jersey.core</groupId>
            <artifactId>jersey-client</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.glassfish.jersey.media</groupId>
            <artifactId>jersey-media-multipart</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.glassfish.jersey.media</groupId>
            <artifactId>jersey-media-json-jackson</artifactId>
        </exclusion>

        <exclusion>
            <groupId>org.glassfish.jersey.core</groupId>
            <artifactId>jersey-common</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.glassfish.jersey.ext</groupId>
            <artifactId>jersey-entity-filtering</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<dependency>
    <groupId>org.glassfish.jersey.core</groupId>
    <artifactId>jersey-client</artifactId>
    <version>2.27</version>
</dependency>
<dependency>
    <groupId>org.glassfish.jersey.media</groupId>
    <artifactId>jersey-media-multipart</artifactId>
    <version>2.27</version>
</dependency>
<dependency>
    <groupId>org.glassfish.jersey.media</groupId>
    <artifactId>jersey-media-json-jackson</artifactId>
    <version>2.27</version>
</dependency>
<dependency>
    <groupId>org.glassfish.jersey.core</groupId>
    <artifactId>jersey-common</artifactId>
    <version>2.27</version>
</dependency>
<dependency>
    <groupId>org.glassfish.jersey.ext</groupId>
    <artifactId>jersey-entity-filtering</artifactId>
    <version>2.27</version>
</dependency>
dalli98 commented 9 months ago

It looks like xeroapi wants to use jersey 2.27. However, the property is overridden and it uses a newer version which is not compatible