Ошибка относительного пути ресурса SOAP Веб-сервисы (Spring / CXF / Maven) - PullRequest
0 голосов
/ 06 марта 2020

Я пытаюсь создать веб-сервис SOAP из файла WSDL. Поэтому я сгенерировал классы Java, используя cxf-codegen-plugin. Теперь есть общий XSD, который используется многими проектами, поэтому я оставил его в одном из них и указал относительный путь к нему в файлах WSDL и связанных схемах.

Я смог сгенерировать классы просто отлично, но когда я развертываю его на Tomcat 9, я получаю сообщение об ошибке:

06-Mar-2020 12:55:21.750 SEVERE [Catalina-utility-2] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class [org.springframework.web.context.ContextLoaderListener]
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dacService': Invocation of init method failed; nested exception is javax.xml.ws.WebServiceException: java.lang.IllegalArgumentException: The resource path [/../../../../../../app-common/src/main/resources/xsdFiles/CommonHeaderSchemaV3.xsd] has been normalized to [null] which is not valid
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1796)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:595)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:517)
.
.
.
.

Импорт выглядит примерно так:

<xsd:import namespace="http://cbo.gtt.com/commonschema/v3" schemaLocation="../../../../../../app-common/src/main/resources/xsdFiles/CommonSchemaV3.xsd"/>

Теперь, после небольшого поиска в Google Я вижу, что в этом нет ничего нового. Но большинство решений где-то было связано с кодом. Но мое - это то, что приходит изнутри весны. Так что действительно вне моего контроля. Я попытался добавить a / в начале пути, но это не помогло, кроме того, это также приводит к сбою плагина cxf codegen. Я также попытался добавить org.apache.catalina.core. ApplicationContext.GET_RESOURCE_REQUIRE_SLASH как true в catalina.properties, но это также не помогло. Любая помощь в этом будет оценена. Заранее спасибо.

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