0

I am getting this error

    java.lang.AbstractMethodError: Receiver class com.sun.jersey.api.uri.UriBuilderImpl does not define or inherit an implementation of the resolved method abstract uri(Ljava/lang/String;)Ljavax/ws/rs/core/UriBuilder; of abstract class javax.ws.rs.core.UriBuilder.
            at javax.ws.rs.core.UriBuilder.fromUri(UriBuilder.java:96)
            at org.glassfish.jersey.client.JerseyWebTarget.<init>(JerseyWebTarget.java:50)
            at org.glassfish.jersey.client.JerseyClient.target(JerseyClient.java:274)
            at org.glassfish.jersey.client.JerseyClient.target(JerseyClient.java:56)
    ...

when calling

        client = ClientBuilder.newClient();
        WebTarget url = client.target(someURL).path(somePath); // the error happens here !!! 
        Response response = url.request().get();
        
        

We use the jersey library.

    <dependency>
        <groupId>org.glassfish.jersey.core</groupId>
        <artifactId>jersey-common</artifactId>
        <version>2.35</version>
    </dependency>

    <dependency>
        <groupId>org.glassfish.jersey.core</groupId>
        <artifactId>jersey-client</artifactId>
        <version>2.35</version>
    </dependency>
 

Any ideas what could be causing this and how to fix?

We use JDK 11 to run this code.

I can see that from another dependency in the same project we're also pulling these:

    [INFO] |  |     +- com.sun.jersey:jersey-core:jar:1.9:compile
    [INFO] |  |     +- com.sun.jersey:jersey-json:jar:1.9:compile
    [INFO] |  |     +- com.sun.jersey:jersey-server:jar:1.9:compile
    
    

I wonder if this could be some sort of clash between versions, or even something more subtle?! I currently have no idea. I don't find much info on the web too about this particular error.

peter.petrov
  • 38,363
  • 16
  • 94
  • 159

0 Answers0