Я пытаюсь вызвать маршрут в XML-файле с 3 уровнями 1) Сначала можно вызывать вложенные маршруты без ограничений?
2) Это мой пример: Мой первый вызов файла RootFile01.xml
<?xml version="1.0" encoding="UTF-8"?> <!-- Configures the Camel Context --> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd"> <!-- Import Framework. --> <import resource="classpath*:META-INF/spring/camel-context-framework*.xml"/> <import resource="File0A01.xml"/> <import resource="File0B01.xml"/> <camelContext id="camelContext-db465ea3-e2da-4931-8902-0c771d2eac3c" xmlns="http://camel.apache.org/schema/spring"> <routeContextRef ref="routeContextNested0A01"/> <routeContextRef ref="routeContextNested0B01"/> <route handleFault="true" id="_route1"> <from id="_from1" uri="coveo-soap://test"/> <recipientList id="_recipientList1"> <method ref="soapDynamicRouter"/> </recipientList> </route> </camelContext> </beans>
Мой второй файл File0A01.xml
<?xml version="1.0" encoding="UTF-8"?> <!-- Configures the Camel Context --> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd"> <routeContext id="routeContextNested0A01" xmlns="http://camel.apache.org/schema/spring"> <route handleFault="true" id="routeNested0A01"> <from uri="direct://Nested0A01" /> <log message="=Data In ${body}"></log> <to uri="direct://routeNested0B01" /> </route> </routeContext> </beans>
Мой третий файл File0B01.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:camel="http://camel.apache.org/schema/spring" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd"> <routeContext id="routeContextNested0B01" xmlns="http://camel.apache.org/schema/spring"> <route id="routeNested0B01"> <from uri="direct://routeNested0B01"/> <log message="Data In - ${body}"></log> </route> </routeContext> </beans>
Кажется, RootFile01.xml может найти routeNested0A01 во втором файле File0A01.xml.Но мой второй файл File0A01.xml не может достичь routeNested0B01 в моем третьем файле File0B01.xml.
Сообщение об ошибке: исчерпано после попытки доставки: 1 перехвачено: org.apache.camel.component.direct.DirectConsumerNotAvailableException: нет доступных потребителейв конечной точке: конечная точка [direct: // routeNested0B01]
Как решить эту проблему?