192.4. 使用 Spring XML 配置 Kestrel 组件
最简单的显式配置形式如下:
<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">
<bean id="kestrel" class="org.apache.camel.component.kestrel.KestrelComponent"/>
<camelContext xmlns="http://camel.apache.org/schema/spring">
</camelContext>
</beans>
<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">
<bean id="kestrel" class="org.apache.camel.component.kestrel.KestrelComponent"/>
<camelContext xmlns="http://camel.apache.org/schema/spring">
</camelContext>
</beans>
这将启用带有所有默认设置的 Kestrel 组件,即它将使用 localhost:22133、100ms 等待时间和单个非并发消费者。
要使用基本配置中的特定选项(向未指定 ?properties 的端点提供配置),您可以设置一个 KestrelConfiguration POJO,如下所示:
<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">
<bean id="kestrelConfiguration" class="org.apache.camel.component.kestrel.KestrelConfiguration">
<property name="addresses" value="kestrel01:22133"/>
<property name="waitTimeMs" value="100"/>
<property name="concurrentConsumers" value="1"/>
</bean>
<bean id="kestrel" class="org.apache.camel.component.kestrel.KestrelComponent">
<property name="configuration" ref="kestrelConfiguration"/>
</bean>
<camelContext xmlns="http://camel.apache.org/schema/spring">
</camelContext>
</beans>
<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">
<bean id="kestrelConfiguration" class="org.apache.camel.component.kestrel.KestrelConfiguration">
<property name="addresses" value="kestrel01:22133"/>
<property name="waitTimeMs" value="100"/>
<property name="concurrentConsumers" value="1"/>
</bean>
<bean id="kestrel" class="org.apache.camel.component.kestrel.KestrelComponent">
<property name="configuration" ref="kestrelConfiguration"/>
</bean>
<camelContext xmlns="http://camel.apache.org/schema/spring">
</camelContext>
</beans>