java.lang.LinkageError: нарушение ограничения загрузки при переопределении метода "org / w3c / dom / Node.setUserData - PullRequest
0 голосов
/ 16 декабря 2018

Я пытаюсь вызвать веб-сервис, но получаю следующий ответ:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <soapenv:Fault>
         <faultcode>soapenv:Server</faultcode>
         <faultstring>java.lang.LinkageError: loading constraint violation when overriding method "org/w3c/dom/Node.setUserData(Ljava/lang/String;Ljava/lang/Object;Lorg/w3c/dom/UserDataHandler;)Ljava/lang/Object;" during creation of class "com/ibm/ws/webservices/engine/xmlsoap/SOAPPart": loader "org/eclipse/osgi/internal/baseadaptor/DefaultClassLoader@6d776858" of class "com/ibm/ws/webservices/engine/xmlsoap/SOAPPart" and loader "com/ibm/oti/vm/BootstrapClassLoader@7d4883b2" of class "org/w3c/dom/Node" have different types for the method signature</faultstring>
         <detail/>
      </soapenv:Fault>
   </soapenv:Body>
</soapenv:Envelope>

Я обновляю приложение с java 6 до java 8, websphere 8.0 до 9.0.3, нана более низких версиях все работает нормально, но после обновления эта часть не хочет работать.

Приведенная выше ошибка появляется только при первом вызове конечной точки после запуска приложения, остальное время получаю:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <soapenv:Fault>
         <faultcode>soapenv:Server</faultcode>
         <faultstring>java.lang.NoClassDefFoundError: com/ibm/ws/webservices/engine/SOAPPart</faultstring>
         <detail/>
      </soapenv:Fault>
   </soapenv:Body>
</soapenv:Envelope>

Политика загрузки классов: Сначала классы загружаются с помощью локального загрузчика классов (родительский последний)

Не знаю, что еще попробовать, зависимость естьобъявлено в главной помпе, как показано ниже:

 <dependency>
     <groupId>com.ibm.websphere.ws</groupId>
     <artifactId>runtime</artifactId>
     <version>9.0.0</version>
     <scope>provided</scope>
</dependency>

И используйте его в модулях, которые мне нужны, как показано ниже:

<dependency>
    <groupId>com.ibm.websphere.ws</groupId>
    <artifactId>runtime</artifactId>
</dependency>

Я не знаю, что еще делать ....

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...