我有一个Web应用程序,正在部署到野飞8.1.0最终。它使用Spring、RESTEasy等。在代码中的一个地方,需要一个ClientBuilder
来创建一个javax.ws.rs.client.Client
:
public class CustomClientImpl implements CustomClient {
// [...]
private Client client = ClientBuilder.newClient();
// [...]
}
这将生成以下嵌套异常(跳过前5)。简而言之,错误是来自
jar:file:/c:/Programs/wildfly-8.1.0。Final/modules/system/layers/base/javax/ws/rs/api/main/jaxrs-api-3.0.8。最终的罐子/javax/ws/rs/client/ClientBuilder。班
到
vfs:/c:/Programs/wildfly-8.1.0。Final/bin/content/ybsearch。war/WEB-INF/lib/jaxrs-api-3.0.8。最终的jar/javax/ws/rs/client/ClientBuilder。班
考虑到它在相同的jar文件中是同一个类,它们似乎应该是兼容的。[??]
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.lilblackbook.search.api.response.ListingProcessorImpl]: Constructor threw exception; nested exception is java.lang.LinkageError: ClassCastException: attempting to cast jar:file:/c:/Programs/wildfly-8.1.0.Final/modules/system/layers/base/javax/ws/rs/api/main/jaxrs-api-3.0.8.Final.jar!/javax/ws/rs/client/ClientBuilder.class to vfs:/c:/Programs/wildfly-8.1.0.Final/bin/content/ybsearch.war/WEB-INF/lib/jaxrs-api-3.0.8.Final.jar/javax/ws/rs/client/ClientBuilder.class
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:163)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:122)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:267)
... 59 more
Caused by: java.lang.LinkageError: ClassCastException: attempting to cast jar:file:/c:/Programs/wildfly-8.1.0.Final/modules/system/layers/base/javax/ws/rs/api/main/jaxrs-api-3.0.8.Final.jar!/javax/ws/rs/client/ClientBuilder.class to vfs:/c:/Programs/wildfly-8.1.0.Final/bin/content/ybsearch.war/WEB-INF/lib/jaxrs-api-3.0.8.Final.jar/javax/ws/rs/client/ClientBuilder.class
at javax.ws.rs.client.ClientBuilder.newBuilder(ClientBuilder.java:97)
at javax.ws.rs.client.ClientBuilder.newClient(ClientBuilder.java:114)
at com.lilblackbook.search.api.skynet.CustomClientImpl.<init>(CustomClientImpl.java:56)
at com.lilblackbook.search.api.response.ListingProcessorImpl.<init>(ListingProcessorImpl.java:38)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) [rt.jar:1.7.0_21]
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) [rt.jar:1.7.0_21]
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) [rt.jar:1.7.0_21]
at java.lang.reflect.Constructor.newInstance(Constructor.java:525) [rt.jar:1.7.0_21]
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:147)
我的pom包括对
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>jaxrs-api</artifactId>
<version>3.0.8.Final</version>
<!--scope>provided</scope-->
</dependency>
给定jaxrs-api-3.0.8。Final.jar
是野飞提供的,我尝试了提供
作为依赖范围,但生成一个ClassNotFoundExc0019
。当我包含它时,会生成上面详细描述的ClassCastExcture
。
这些信息够了吗?有什么想法吗?谢谢
为了解决这个错误,我必须更改用于JaxRS客户端的实现。
我从泽西岛出发:
<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-client</artifactId>
<version>3.0.0-M6</version>
<scope>test</scope>
</dependency>
致Smallrye:
<dependency>
<groupId>io.smallrye</groupId>
<artifactId>smallrye-rest-client</artifactId>
<version>1.2.2</version>
</dependency>
在Spring应用程序中,可以检索所有(?)带有。当然,这只有在创建了所有bean之后才有可能。 所以,如果我在Bean的构造函数中调用这个方法,我必须很幸运,成为最后一个被创建的Bean,能够访问所有的Bean。 就我对SpringBean生命周期的理解而言,在初始化Bean之前,有一个创建BeanDefinitions的阶段。 如何在Bean的构造函数中检索所有已创建的Bean定义? 我还可以
问题内容: 采访中有人问我这个问题。他们想知道的是,当用户调用malloc(4)分配4个字节的内存时,操作系统(Linux)如何响应?哪个子系统响应此系统调用? 我告诉他,内存管理子系统将为malloc()提供服务。malloc()实现将遍历空闲内存(物理内存)列表,我们将其称为空闲列表,并找到一个大于或等于4字节的适当块。一旦找到这样的块,它将被从空闲列表中删除并添加到已用列表中。然后,该物理内
“异常信息” 在WebDriver.dll中发生类型为“System.InvalidOperationException”的未处理异常 附加信息:没有这样的驱动程序(NoSuchDriver) OpenQa.Selenium.edge.EdgedRiver..ctor(字符串edgeDriverDirectory,EdgeOptions选项) ConsoleApplication.Program.
本文向大家介绍Android开发中Widget的生命周期实例分析,包括了Android开发中Widget的生命周期实例分析的使用技巧和注意事项,需要的朋友参考一下 本文实例分析了Android开发中Widget的生命周期。分享给大家供大家参考,具体如下: Widget是android中桌面小控件,创建时必须继承AppWidgetProvider,AppWidgetProvider其实就是继承了Br
1. 前言 在之前的小节中我们介绍了 Vue 实例,本小节我们一起来了解一下 Vue 实例的生命周期。包括生命周期的几个阶段,以及各个阶段触发时机和作用。深入理解 Vue 的生命周期是本小的难点,同学们不仅需要知道生命周期的执行顺序,还要理解各生命周期的作用。 2. 慕课解释 每个 Vue 实例在被创建时都要经过一系列的初始化过程——例如,需要设置数据监听、编译模板、将实例挂载到 DOM 并在数据
本文向大家介绍Android开发之时间日期操作实例,包括了Android开发之时间日期操作实例的使用技巧和注意事项,需要的朋友参考一下 相信对于手机的时间日期设置大家一定都不陌生吧,今天举一个关于时间日期设置的示例,其中有些许不完善之处,例如如何使设置的时间日期和手机系统同步等。感兴趣的读者可以根据自身经验加以完善。 现来看看具体示例,希望对大家有所帮助。 首先是时间设置: .java文件(Mai