Java 在EclipseVirgo中选择Sun JAX-WS实现而不是CXF实现
我有一个非常明显的问题,但仍然没有找到解决办法。我有一个OSGI包,它使用ApacheCXF作为客户端。问题是,当我部署应用程序时出现以下错误:Java 在EclipseVirgo中选择Sun JAX-WS实现而不是CXF实现,java,osgi,cxf,eclipse-virgo,Java,Osgi,Cxf,Eclipse Virgo,我有一个非常明显的问题,但仍然没有找到解决办法。我有一个OSGI包,它使用ApacheCXF作为客户端。问题是,当我部署应用程序时出现以下错误: Constructor threw exception; nested exception is java.lang.ClassCastException: com.sun.xml.internal.ws.client.sei.SEIStub cannot be cast to org.apache.cxf.frontend.ClientProxy
Constructor threw exception; nested exception is java.lang.ClassCastException:
com.sun.xml.internal.ws.client.sei.SEIStub cannot be cast to
org.apache.cxf.frontend.ClientProxy
据我所知,发生此错误是因为类路径中加载了错误的JAX-WS实现。问题是:如何确保加载了什么样的CXF实现
ApacheFelix中的一切都很好,我觉得这与Virgo默认加载比Felix多得多的包有关
我使用cxf-2.6.0.jar而不是cfx-dosgi-ri bundle。通过将apache-servicemix-jaxws-api添加到Virgo存储库修复了这个问题。然后,我为我的捆绑包创建了计划,并使jaxws api在cxf-2.6.0.jar捆绑包之前启动。通过将apache servicemix jaxws api添加到Virgo存储库修复了这个问题。然后,我为捆绑包创建了计划,并在cxf-2.6.0.jar捆绑包之前启动了JAXWSAPI