2013-12-09 123 views
0

配置一個Servlet來HazelCast路線我想建立一個路由類似如何使用駱駝

<route> 
    <from uri="servlet:///user?matchOnUriPrefix=true"/> 
    <to uri="direct:put"/> 
</route> 

<route> 
<from uri="direct:put"/> 
<setHeader headerName="CamelHazelcastOperationType"> 
<constant>put</constant> 
</setHeader> 
<to uri="hazelcast:map:foo"/> 
</route> 

即匹配POST一切:/用戶/ {cachename}/{鍵}應採取KEY1關鍵並將有效負載放置在key:key1映射:{cachename}下。

同樣的事情

GET:/用戶/ {cachename}/{鍵}應採取{鍵}關鍵和檢索地圖下key1的有效載荷:{} cachename。

任何幫助將不勝感激。

謝謝,

回答

1

你應該有一個號碼可從傳入的servlet駱駝標頭,如:

  • CamelHttpMethod = GET
  • CamelHttpPath = /用戶/ {cachename}/{鍵}

你可以使用代碼或表達式語言從那裏提取信息,一個非常基本的例子是:

<setHeader headerName="cachename"> 
    <simple>${header.CamelHttpPath.split("/")[2]}</simple> 
</setHeader> 

<setHeader headerName="key1"> 
    <simple>${header.CamelHttpPath.split("/")[3]}</simple> 
</setHeader> 
+0

嗨Bgossit真正幫助,但我被困使用hazelcastcomponent駱駝,你可以看到,如果你可以把一些光在下面的帖子有些系列化例外:HTTP://stackoverflow.com/questions/20511545/camel- hazelcast組分投擲-hazelcastserializationexception – remo