javax.xml.bind.PropertyException: name: eclipselink.media-type 'при использовании библиотеки eclipse moxy для демаршаллинга json - PullRequest
0 голосов
/ 21 декабря 2018

Я использую библиотеку Karaf 4.1.7, mvn: org.eclipse.persistence / org.eclipse.persistence.moxy / 2.7.1} для демаршаллинга JSON в POJO, и POJO генерируется с использованием jaxb на основе xsd.

Наше приложение недавно добавило пакеты, которые требуют спецификации apache servicemix для нашего дистрибутива karaf в качестве одобренных библиотек.После добавления этого JAXBContextFactory, который мы получаем, всегда является спецификацией servicemix, а не eclipselink moxy.Из-за чего мы получаем исключение

'javax.xml.bind.PropertyException: name: eclipselink.media-type' при установке для свойства unmarshaller Unmarshaller unmarshaller = jaxbContext.createUnmarshaller ();unmarshaller.setProperty (JAXBContextProperties.MEDIA_TYPE, "application / json");

Ниже приведены пакеты, из-за которых мы не можем правильно проанализировать строку json.

<library>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxb-api-2.2/${servicemix.specs.version};type:=endorsed</library> 
<library>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxp-api-1.4/${servicemix.specs.version};type:=endorsed</library>

Мы не можем удалить эти пакеты из одобренной библиотеки, так как другие пакеты в приложении перестали работать.

Кто-нибудь сталкивался с этой проблемой ранее, или есть указания, как этого избежать.

Спасибо и привет, Dheeraj

...