You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用wsimport生成的JAR调用WebService时遇Provider类型转换异常求助

问题:JDK 1.8生成的WebService客户端JAR调用时出现类型转换错误

我用JDK 1.8的wsimport命令从WSDL文件生成了一个JAR包,现在调用这个JAR里的WebService时出现如下错误:

Exception in thread "main" javax.xml.ws.WebServiceException: Unable to create Provider: class com.sun.xml.ws.spi.ProviderImpl cannot be cast to class javax.xml.ws.spi.Provider (com.sun.xml.ws.spi.ProviderImpl and javax.xml.ws.spi.Provider are in unnamed module of loader 'app')
    at javax.xml.ws.spi.Provider.provider(Provider.java:88)
    at javax.xml.ws.Service.<init>(Service.java:56)
    at com.Service01.<init>(Service01.java:42)
    at com.kyc.MainApp.main(MainApp.java:45)

我的pom.xml依赖配置如下:

<dependency>
    <groupId>javax.xml.soap</groupId>
    <artifactId>javax.xml.soap-api</artifactId>
    <version>1.4.0</version>
</dependency>
<dependency>
    <groupId>jakarta.xml.soap</groupId>
    <artifactId>jakarta.xml.soap-api</artifactId>
    <version>3.0.0</version>
</dependency>
<dependency>
    <groupId>javax.xml.ws</groupId>
    <artifactId>jaxws-api</artifactId>
    <version>2.1</version>
</dependency>
<dependency>
    <groupId>com.sun.xml.ws</groupId>
    <artifactId>rt</artifactId>
    <version>4.0.1</version>
</dependency>

<dependency>
    <groupId>com.sun.xml.ws</groupId>
    <artifactId>jaxws-rt</artifactId>
    <version>4.0.1</version>
</dependency>
<dependency>
    <groupId>jakarta.xml.ws</groupId>
    <artifactId>jakarta.xml.ws-api</artifactId>
    <version>4.0.0</version>
</dependency>
<dependency>
    <groupId>WSIMPOTJAR</groupId>
    <artifactId>WSIMPOTJAR</artifactId>
    <version>1.0</version>
    <scope>provided</scope>
</dependency>
<dependency>
    <groupId>javax.xml.bind</groupId>
    <artifactId>jaxb-api</artifactId>
    <version>2.3.1</version>
</dependency>

<dependency>
    <groupId>com.sun.xml.bind</groupId>
    <artifactId>jaxb-impl</artifactId>
    <version>2.2.5-b10</version>
</dependency>

注:我已经尝试过以下解决方案,但都没有效果:

  • jakarta.xml.ws.spi.Provider: com.sun.xml.ws.spi.ProviderImpl not a subtype
  • JDK 11; JAX-WS; Provider com.sun.xml.internal.ws.spi.ProviderImpl not found
  • Getting java.lang.ClassNotFoundException: com.sun.xml.internal.ws.spi.ProviderImpl despite the dependencies are defined

内容的提问来源于stack exchange,提问作者maryem neyli

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 05:07:28