2015-08-24 4 views
3

Ошибка: Получение ошибок пространства имен для элементов в моем конфигурационном файле весны.Spring Integration - Spring example config namespace issue

"Не удалось найти Spring NamespaceHandler для элемента" Инт-WS: hyeader-обогатитель»из схемы namcespace 'http://www.springframework.org/schema/integration/ws'

Описания: Попытки создать в Spring Integration образца проекте с пружинным сайта в простой весенний весенний проект с использованием maven.

Я не нашел этот проект в каталоге образцов, чтобы сравнить его с.

http://projects.spring.io/spring-integration/

Spring Bean Config File

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:context="http://www.springframework.org/schema/context" 
    xmlns:int="http://www.springframework.org/schema/integration" 
    xmlns:int-http="http://www.springframework.org/schema/integration/http" 
    xmlns:int-ws="http://www.springframework.org/schema/integration/ws" 
    xmlns:int-xml="http://www.springframework.org/schema/integration/xml" 
    xsi:schemaLocation="http://www.springframework.org/schema/integration/http http://www.springframework.org/schema/integration/http/spring-integration-http.xsd 
     http://www.springframework.org/schema/integration/ws http://www.springframework.org/schema/integration/ws/spring-integration-ws.xsd 
     http://www.springframework.org/schema/integration http://www.springframework.org/schema/integration/spring-integration.xsd 
     http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd 
     http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd 
     http://www.springframework.org/schema/integration/xml http://www.springframework.org/schema/integration/xml/spring-integration-xml.xsd"> 


<!-- Simple Service --> 

<int:gateway id="simpleGateway" 
    service-interface="foo.TempConverter" 
    default-request-channel="simpleExpression" /> 

<int:service-activator id="expressionConverter" 
    input-channel="simpleExpression" 
    expression="(payload - 32)/9 * 5"/> 

<!-- Web Service --> 

<int:gateway id="wsGateway" service-interface="foo.TempConverter" 
    default-request-channel="viaWebService" /> 

<int:chain id="wsChain" input-channel="viaWebService"> 
    <int:transformer 
     expression="'&lt;FahrenheitToCelsius xmlns=''http://www.w3schools.com/webservices/''&gt;&lt;Fahrenheit&gt;XXX&lt;/Fahrenheit&gt;&lt;/FahrenheitToCelsius&gt;'.replace('XXX', payload.toString())" /> 
    <int-ws:header-enricher> 
     <int-ws:soap-action value="http://www.w3schools.com/webservices/FahrenheitToCelsius"/> 
    </int-ws:header-enricher> 
    <int-ws:outbound-gateway 
     uri="http://www.w3schools.com/webservices/tempconvert.asmx"/> 
    <int-xml:xpath-transformer 
     xpath-expression="/*[local-name()='FahrenheitToCelsiusResponse']/*[local-name()='FahrenheitToCelsiusResult']"/> 
</int:chain> 

</beans> 

ОБНОВЛЕНИЕ - РЕШЕНИЕ я должен был добавить следующие зависимости не перечисленные на там вебсайте. Я добавил это в файл POM.

<dependency> 
    <groupId>org.springframework.integration</groupId> 
    <artifactId>spring-integration-ws</artifactId> 
    <version>4.1.6.RELEASE</version> 

</dependency> 
<dependency> 
    <groupId>org.springframework.integration</groupId> 
    <artifactId>spring-integration-xml</artifactId> 
    <version>4.1.6.RELEASE</version> 
</dependency> 

ответ

1

конфигурации Spring XML пространства имен нужен обработчик пространства имен во время выполнения (путь ресурсы META-INF/spring.handlers класса, как правило, в баночках на пути класса, назначать классы обработки).

Причина, по которой Spring дает это сообщение во время выполнения, заключается в том, что обработчик пространства имен не был зарегистрирован для этого элемента XML. Наиболее вероятная причина заключается в том, что spring-integration-ws.jar (или, возможно, требуемая зависимость) не находится на пути класса во время выполнения.

+0

Это сообщение появляется во время проверки конфигурации xml пружины. Не время работы. Я проверил каталог образцов пружинных интегралов для файла spring.handlers. Однако кажется странным создание нового проекта весны в STS не создаст необходимый файл. Я также попытаюсь выполнить проект в gradle vs maven. Так что, как много работы, просто чтобы получить 1 пример работы проекта. – haju

+0

STS, вероятно, проверяет соответствие проектов. Вы сами не создаете файл 'spring.handlers': просто поместите правильные JAR в путь класса. Проверьте, что ваш файл 'pom.xml' имеет' spring-integration-ws' в качестве зависимости (если вы используете Maven). –

+0

В соответствии с примером на веб-сайте Spring IO Integration у меня только есть зависимость от пружинной интеграции для версии 4.1.6. Я попробую загрузить снимок экрана. – haju

Смежные вопросы