【问题标题】:ProviderImpl not found Jboss 5.1ProviderImpl 未找到 Jboss 5.1
【发布时间】:2011-10-20 21:08:52
【问题描述】:

我在 JDK 6 中使用 jaxws 2.2.3 和 Jboss 5.1。

调用ws客户端时,我得到

 java.util.ServiceConfigurationError: javax.xml.ws.spi.Provider: Provider org.jboss.ws.core.jaxws.spi.ProviderImpl not found (see full stack trace below)

当我从 jboss/lib/endorsed 中删除库 jbossws-native-*.jar 时,一切正常。但他们必须在那里。

我试图告诉 jboss 使用 com.sun.xml.ws.spi.ProviderImpl:

  1. META-INF/services/javax.xml.ws.spi.Provider
  2. -Djavax.xml.ws.spi.Provider
  3. 首先阅读我的库 WEB-INF/jboss-classloading.xml

    <classloading xmlns="urn:jboss:classloading:1.0"
          parent-first="false"
          domain="DefaultDomain"
          top-level-classloader="true"
          parent-domain="Ignored"
          export-all="NON_EMPTY"
          import-all="true">
    </classloading>
    

运气不好。我花了一整天的时间,我不知道。

请帮帮我。

【问题讨论】:

    标签: jax-ws classloader jboss5.x


    【解决方案1】:

    我为 jboss 实例创建了认可的库 - /jboss/server//lib/endorsed 并复制了这些 jar:

    jaxws-api-2.2.3.jar
    jaxws-rt-2.2.3.jar
    jaxws-spring-1.8.jar
    policy-2.2.2.jar
    

    在我的启动文件中我添加了:

    set PRIVATE_ENDORSED_DIRS=%JBOSS_HOME%\server\portal_V1\lib\endorsed
    

    然后在run.bat中:

    if "x%PRIVATE_ENDORSED_DIRS%" == "x" (
      set "JBOSS_ENDORSED_DIRS=%JBOSS_HOME%\lib\endorsed"
    ) else (
      set "JBOSS_ENDORSED_DIRS=%PRIVATE_ENDORSED_DIRS%;%JBOSS_HOME%\lib\endorsed"
    )
    
    REM set JBOSS_ENDORSED_DIRS=%JBOSS_HOME%\lib\endorsed
    

    我无法使用 JBoss 库,因为有些 JBoss 实例不属于我,而我对它们一无所知。

    【讨论】:

    • 当我执行上述操作时,我得到以下信息: java.lang.UnsupportedOperationException: setProperty must be overridden by all subclasses of SOAPMessage
    • 我必须复制以下 JAR 以使一切正常工作:streambuffer.jar、stax-ex.jar、policy.jar、jaxws-rt.jar、jaxws-api.jar 、jaxb-impl.jar、jaxb-api.jar 和 gmbal-api-only.jar。
    猜你喜欢
    • 2021-06-24
    • 2015-11-16
    • 2016-01-14
    • 2015-08-28
    • 1970-01-01
    • 2011-11-15
    • 1970-01-01
    • 2016-05-15
    • 1970-01-01
    相关资源
    最近更新 更多