Sorry , I forgot to past the FAQ URL before click the send button.

Here is the link.
[1]
http://camel.apache.org/how-do-i-use-spring-property-placeholder-with-camel-xml.html

Willem

Willem Jiang wrote:
> Thanks for sharing the solution with us.
> Current Camel doesn't support the Spring PropertyPlaceHolderConfigurer.
> Here is a FAQ[1] for this, we will support it with coming up Spring 3.0.
> 
> Willem
> 
> Doug Douglass wrote:
>> Well, I've got something working, but it doesn't quite feel like "The Camel
>> Way":
>> <beans:bean id="_sedaComponent"
>> class="org.apache.camel.component.seda.SedaComponent">
>> <beans:property name="camelContext" ref="camel" />
>> </beans:bean>
>>
>> <beans:bean id="customerEventQueue" factory-bean="_sedaComponent"
>> factory-method="createEndpoint">
>> <beans:constructor-arg
>> value="seda:customerChangeEvent?size=${camel.customer.event.queue.size}&amp;concurrentConsumers=${camel.customer.event.queue.concurrentConsumers}"
>> />
>> <beans:constructor-arg value="" />
>> <beans:constructor-arg>
>> <beans:map>
>> <beans:entry key="size" value="${camel.customer.event.queue.size}" />
>> <beans:entry key="concurrentConsumers"
>> value="${camel.customer.event.queue.concurrentConsumers}" />
>> </beans:map>
>> </beans:constructor-arg>
>> </beans:bean>
>>
>>
>> Comments/suggestions are definitely welcome!
>>
>> Doug
>>
>> On Thu, Jun 18, 2009 at 1:11 PM, Doug Douglass 
>> <douglass.d...@gmail.com>wrote:
>>
>>> I'd like to move some SEDA endpoint options out of the Camel XML
>>> configuration and into a Spring PropertyPlaceholderConfigurer, but I'm
>>> struggling a bit.
>>>
>>> Here's a snip of the current Camel XML with the URIs I'm trying to
>>> configure marked with "-->":
>>>
>>> <camelContext>
>>>     <route>
>>>       <from uri="timer://poller?period=300000" />
>>>       <to uri="bean:customerChangeEventService?methodName=getEvents" />
>>>       <splitter>
>>>         <el>${in.body}</el>
>>>         <idempotentConsumer messageIdRepositoryRef="eventIdRepository">
>>>           <el>${in.body.eventId}</el>
>>> -->      <to uri="seda:customerChangeEvent?size=6000" />
>>>         </idempotentConsumer>
>>>       </splitter>
>>>       <onException>
>>>         <exception>java.lang.Throwable</exception>
>>>         <to uri="seda:eventProcessingErrors"/>
>>>       </onException>
>>>     </route>
>>>
>>>     <route>
>>> -->  <from uri="seda:customerChangeEvent?size=6000" />
>>>       ...
>>>     </route>
>>>
>>>     ...
>>> </camelContext>
>>>
>>> In practice, the configuration may also include the concurrentConsumers
>>> option.
>>>
>>> Optimistically, I configured a PropertyPlaceholderConfigurer and tried
>>> changing the URIs to
>>> "seda:customerChangeEvent?size=${camel.customer.event.queue.size}", but the
>>> property isn't replaced, and camel complains when it tries to
>>> convert ${camel.customer.event.queue.size} into an integer.
>>>
>>> Now I'm struggling trying to configure/instantiate a SedaComponent directly
>>> via Spring beans XML.
>>>
>>> Any pointers to examples?
>>>
>>> Anyone care to provide a quick example?
>>>
>>> If it helps, this project is using Camel 1.6.1.
>>>
>>> TIA,
>>> Doug
>>>
> 
> 

Reply via email to