Загрузчик классов для axiom-impl при создании FatJar
Имеется Maven проект нацеленный на Java 8 и работающий с SOAP. При сборке проекта с помощью Maven-плагина maven-shade-plugin всё собирается в FatJar. При отправке запроса серверу выбрасывается нижеуказанное исключение:
Meta factories:
dom: org.apache.axiom.om.impl.dom.factory.OMDOMMetaFactory
[ ERROR ] An error occurred during the "xxx" SOAP-request
org.apache.axiom.om.OMException: No meta factory found for feature 'default';
his usually means that axiom-impl.jar is not in the classpath
or that the META-INF/axiom.xml resource can't be read
В Jar в META-INF файл axiom.xml присутствует. Долгие пляски с настройками maven-shade-plugin результата не дали. Предполагал, что существует какой-либо конфликт с уже загруженной библиотекой в Tomcat, но релокация классов axiom в другое пространство имён, при сборке FatJar, также результата не принесла.
После всех попыток было решено в pom.xml указать scope как runtime и физически добавить библиотеку в Tomcat, после чего всё работает, но приходится поставлять клиенту две библиотеки.
Насколько я понимaю, какой-то загрузчик классов не может найти библиотеку в FatJar и необходимо ему просто в этом помочь, но как?