【问题标题】:Setting javax.xml.ws.Service from JDK, instead of javaee-api with maven从 JDK 设置 javax.xml.ws.Service,而不是使用 maven 设置 javaee-api
【发布时间】:2014-04-17 15:08:19
【问题描述】:

我正面临这个问题:

The method getPort(QName, Class<T>) in the type Service is not applicable for the arguments (QName, Class<AcessoDadosGeolocalizacao>, WebServiceFeature[])

我使用wsimport 生成我的客户端,但现在我的 maven 应用程序正在使用来自

的类 javax.xml.ws.Service
<dependency>
   <groupId>javaee</groupId>
   <artifactId>javaee-api</artifactId>
   <version>5</version>
   <scope>provided</scope>
</dependency>

如何使用 JDK 6 中的 javax.xml.ws.Service

【问题讨论】:

  • 你使用了 jaxws:wsimport 目标还是只使用 JDK 中的 wsimport 进程?
  • 只是来自 jdk 的 wsimport

标签: maven jax-ws classpath classloader ejb-3.0


【解决方案1】:

我已将 webservices-api 添加到我的 pom.xml 中,问题就消失了。

    <dependency>
        <groupId>javax.xml</groupId>
        <artifactId>webservices-api</artifactId>
        <version>2.1-b14</version>
    </dependency>

【讨论】:

    【解决方案2】:

    如果我添加这个条目(webservices-api);它在访问 JAXB-API 时出现运行时错误。我发现 JDK6 应该是类路径中的第一个,然后是 maven 库。我向上移动了JDK6 上面的 Maven 库。然后就可以了。

    【讨论】:

      【解决方案3】:

      我在 Eclipse 和动态 Web 应用程序中遇到了类似的问题。它与 Maven 无关,但是在谷歌上搜索该错误会为您提供截至今天在 Google 中的所有大约 7 个结果,其中大约三个或更多的结果在相同堆栈交换问题的其他网站上重新列出 - 所以我想以防其他人有类似的情况问题我会添加对我有帮助的东西。 WAR 设置为使用 JBoss AS5,VM 设置为使用 Java 6。因为它的 eclipse 和我已经使用了 Web 服务 - 导入时没有发生错误,因为已经创建了存根。我确保将 Java 方面设置为使用 1.6(它曾经是 1.5),我清理并构建了但错误仍然存​​在。然后我注意到在我的 Java EE 1.5 构建路径上有一个参考。我删除了这个,清理并构建,错误消失了。

      希望这可以帮助其他面临同样问题的人!

      【讨论】:

        猜你喜欢
        • 2016-03-28
        • 1970-01-01
        • 1970-01-01
        • 2018-09-16
        • 2011-09-19
        • 1970-01-01
        • 1970-01-01
        • 2011-05-26
        • 1970-01-01
        相关资源
        最近更新 更多