LinkageError: ограничения загрузчика нарушаются при связывании javax / xml / namespace / QName в Websphere6.1 с использованием resteasy - PullRequest
1 голос
/ 11 декабря 2008

Я получаю эту ошибку при вызове веб-служб. Я не мог найти решение для этого. Любая помощь очень ценится.

связанная библиотека у меня есть: Ось-1.3.jar
Ось-JAXRPC-1.3.jar
Ось-SAAJ-1.3.jar
axis-wsdl4j-1.5.1.jar

JAXB-апи-2.1.jar JAXB-осущ-2.1.8.jar jaxen-1,1-бета-9.jar jaxrs-апи-1,0-бета-9.jar

В websphere 61 настройки администратора следующие: Корпоративное приложение -> Режим WAR Classloader: PARENT_LAST * Веб-модуль: -> Режим ClassLoader: application_FIRST

Причина: java.lang.LinkageError: нарушены ограничения загрузчика при связывании класса javax / xml / namespace / QName в com.sun.xml.bind.v2.model.impl.RuntimeBuiltinLeafInfoImpl. (RuntimeBuiltinLeafInfoImpl.java:224) в com.sun.xml.bind.v2.model.impl.RuntimeTypeInfoSetImpl. (RuntimeTypeInfoSetImpl.java:61) в com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.createTypeInfoSet (RuntimeModelBuilder.java:127) в com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.createTypeInfoSet (RuntimeModelBuilder.java:79) в com.sun.xml.bind.v2.model.impl.ModelBuilder. (ModelBuilder.java:152) в com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder. (RuntimeModelBuilder.java:87) в com.sun.xml.bind.v2.runtime.JAXBContextImpl.getTypeInfoSet (JAXBContextImpl.java:432) в com.sun.xml.bind.v2.runtime.JAXBContextImpl. (JAXBContextImpl.java:297) в com.sun.xml.bind.v2.ContextFactory.createContext (ContextFactory.java:139) в com.sun.xml.bind.v2.ContextFactory.createContext (ContextFactory.java:117) at sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод) at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25) в java.lang.reflect.Method.invoke (Method.java:585) в javax.xml.bind.ContextFinder.newInstance (ContextFinder.java:211) в javax.xml.bind.ContextFinder.find (ContextFinder.java:372) в javax.xml.bind.JAXBContext.newInstance (JAXBContext.java:574) в org.jboss.resteasy.plugins.providers.jaxb.JAXBContextWrapper. (JAXBContextWrapper.java:74) в org.jboss.resteasy.plugins.providers.jaxb.JAXBContextWrapper. (JAXBContextWrapper.java:99) в org.jboss.resteasy.plugins.providers.jaxb.XmlJAXBContextFinder.createContextObject (XmlJAXBContextFinder.java:48) в org.jboss.resteasy.plugins.providers.jaxb.AbstractJAXBContextFinder.createContext (AbstractJAXBContextFinder.java:114) в org.jboss.resteasy.plugins.providers.jaxb.XmlJAXBContextFinder.findCachedContext (XmlJAXBContextFinder.java:39) в org.jboss.resteasy.plugins.providers.jaxb.AbstractJAXBProvider.findJAXBContext (AbstractJAXBProvider.java:49) в org.jboss.resteasy.plugins.providers.jaxb.AbstractJAXBProvider.getMarshaller (AbstractJAXBProvider.java:112) в org.jboss.resteasy.plugins.providers.jaxb.AbstractJAXBProvider.writeTo (AbstractJAXBProvider.java:88) в org.jboss.resteasy.client.core.MessageBodyParameterMarshaller $ ClientRequestEntity. (MessageBodyParameterMarshaller.java:88) в org.jboss.resteasy.client.core.MessageBodyParameterMarshaller.buildRequest (MessageBodyParameterMarshaller.java:51) в org.jboss.resteasy.client.core.ClientInvoker.invoke (ClientInvoker.java:197) в org.jboss.resteasy.client.core.ClientProxy.invoke (ClientProxy.java:46) на $ Proxy51.updateAccount (неизвестный источник) в com.amg.brides.wedsimple.client.WedSimpleClientImpl.updateAccount (WedSimpleClientImpl.java:72) в com.amg.brides.wedsimple.web.WedSimpleUpdateAccountEvent.invokeClient (WedSimpleUpdateAccountEvent.java:24) в com.amg.brides.wedsimple.web.AbstractWedSimpleAccountEvent.execute (AbstractWedSimpleAccountEvent.java:35)на com.amg.brides.util.WebEventProcessor.processEvents (WebEventProcessor.java:29)

Ответы [ 2 ]

4 голосов
/ 11 декабря 2008

Основная проблема заключается в том, что вы загружаете один или несколько файлов классов, связанных с xml, из неправильного фляги. Ваш сервер приложений не позволяет вам изменять эти библиотеки, потому что он уже загрузил большую часть анализатора из другой реализации. Я попытался проверить содержимое файлов jar в поисках пространства имен javax / xml /, но остановился на полпути. Если вы найдете его, есть хороший шанс, что вы можете получить его без оскорбительных классов. Известно, что люди вручную удаляли такие файлы из внешних jar-файлов.

Вероятно, вы можете включить параметры som vm для регистрации загрузки классов во время работы контейнера. Это опция java -verbose: class.

Извините, я не могу точно определить точную проблему;)

3 голосов
/ 12 ноября 2014

Возможное решение (работал для меня)

В Websphere 7 у меня та же проблема с осями 1.3 и 1.4. Я решил удалить QName.class из axis-jaxrpc-1.3.jar в WEB_INF \ lib

Это потому, что QName.class уже присутствовал в другом файле jar.

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