gpt4 book ai didi

java - WebLogic ClientInstanceInitationHandler 到 cxf ClientProxy

转载 作者:行者123 更新时间:2023-12-01 10:43:58 24 4
gpt4 key购买 nike

您好,我的 java 项目上有一个 WebService 客户端,它位于 weblogic 上。现在,出于安全原因,我需要将 header 添加到我的请愿书中。我已经尝试了一切,最后一个 friend 帮我编写了 Jboss 的代码,该代码在 Jboss 上运行良好,但在 weblogic 上却给我带来了castClassException 的问题。

就像标题所说,原始类是“ClientInstanceInvocalHandler”,我需要在 APACHE CXF 的“ClientProxy”上使用它

问题是这样的:

org.apache.cxf.endpoint.Client client = ClientProxy.getClient( port );

有人有解决办法吗?

最佳答案

根据此网站https://community.oracle.com/thread/2467175?tstart=0问题是 Apache 类未正确位于服务器的类路径上。

他们说他们“将 APACHE CXF jar 设置为用户定义库并将其设置为‘默认部署’选项”。

在此blog遇到同样的问题,他们在 weblogic-application.xml 中使用以下片段:

<prefer-application-resources>  
<resource-name>META-INF/services/javax.xml.ws.spi.Provider</resource-name>
</prefer-application-resources>

据我所知,weblogic 返回它自己的这些方法的实现,除非您告诉它更喜欢标准接口(interface)并将标准接口(interface)的实现放在类路径上。我猜想自定义类会提供一些超出标准接口(interface)的额外性能或功能。

Apache CXF site本身以类似的方式解决了这个问题,但建议使用不同的包名称(javax.jws.*)

除此之外,有些人在让 weblogic 查找和识别 jar 时遇到问题,因为它优先加载 weblogic 类,并且必须执行以下操作:

<container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>

但我看到了一些变化,具体取决于您的 Apache jar 所在的位置。

关于java - WebLogic ClientInstanceInitationHandler 到 cxf ClientProxy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34302394/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com