Resteasy 客户端 Wildfly 23 - IncompatibleClassChangeError

Resteasy Client Wildfly 23 - IncompatibleClassChangeError

我用的是 Wildfly 23。 我试图实现一个 Resteasy 客户端(版本 4.7.0)。 这是我的代码:

    ResteasyClient client = new ResteasyClientBuilderImpl().build();
    ResteasyWebTarget getEvent = client.target("https:......");
    Response getEventResponse = getEvent.request().get(); ...

但是当“ResteasyClient client = new ResteasyClientBuilderImpl().build();”时出现这个错误被调用:

 Failed to define class org.jboss.resteasy.client.jaxrs.internal.ResteasyClientImpl in Module "deployment.isymnd.war" from Service Module Loader: java.lang.IncompatibleClassChangeError: Failed to link org/jboss/resteasy/client/jaxrs/internal/ResteasyClientImpl (Module "deployment.isymnd.war" from Service Module Loader): Implementing class

有人知道我做错了什么吗? 十分感谢, 妮可

您使用的客户端版本比 WildFly 23 提供的版本更新。 WildFly 23 使用 3.15.1.Final。您还应该确保您没有在部署中包含 JAR。

另一种方法是将 JEE API 用于 jaxrs 客户端(尤其是当您使用 Wildfly 时!)

Client client = ClientBuilder.newClient();

client.target(baseUri)
     .path("/users")
     .path(userId)
     .path("/roles")
     .request(MediaType.APPLICATION_XML)
     .post(...);

更多信息: https://docs.oracle.com/javaee/7/api/javax/ws/rs/client/package-summary.html