Websphere 9 中 Java 耳文件的 Java.lang.LinkageError

标签 java websphere websphere-9

当我尝试调用我的一项 Web 服务时,我在 Websphere 9 中针对部署为 EAR 文件的 Java 应用程序遇到此错误。

由以下原因引起:java.lang.LinkageError:ClassCastException:尝试将bundleresource://265.fwk-1702970980/javax/ws/rs/client/ClientBuilder.class转换为wsjar:file:/opt/app/was/WebSphere/AppServer/profiles/prctstwas01/installedApps/lsp7288cNode01Cell/OurApplicaton.ear/OurApplicationWeb.war/WEB-INF/lib/integration-commons

我明白这个错误是什么,我通过将我的ear文件中的war文件的类加载器设置为父级来解决它,如果有人搜索这个错误想知道如何解决它。但我不明白类的第一个版本 65.fwk-1702970980/javax/ws/rs/client/ClientBuilder.class 来自何处。

有谁知道捆绑资源://265.fwk-1702970980指的是什么?我想这也是与我的 war 文件捆绑在一起的类的一个版本?它看起来不像来自应用程序服务器。

最佳答案

bundleresource URL 来自 OSGi 类加载器。就 WebSphere 而言,这通常意味着它们是由服务器提供的,因为基本上整个服务器运行时都在 OSGi 中运行。 265.fwk-1702970980 是 bundle 的内部名称 - 如果您使用 OSGi 控制台列出 bundle ,则 JAX-RS API bundle 可能是 bundle 编号 265。

关于Websphere 9 中 Java 耳文件的 Java.lang.LinkageError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61753690/

相关文章:

java - 未添加 NETBEANS 项目警告

java - 房间 : performance of insert(Object) vs insert(List<Object>)

java - 有没有办法在WebSphere和OracleAS中自动化EAR部署?

jakarta-ee - Websphere:未强制执行 web.xml 中的安全约束

java - Web 项目未在 Websphere 9 中启动,并出现 BValInterceptor 的 CDI 相关异常

java - 调用具有相同前缀的不同变量只改变后缀

java - 预先存在的 vb.net/sql 服务器桌面 crud 应用程序的智能手机可访问性的选择

java - 以编程方式为 WebSphere 5.x 请求发送方绑定(bind) BasicAuth Web 服务客户端设置凭证

java - 当两个 logback.xml 在 Websphere 服务器上运行时日志被合并