0
我是Apache Camel的新手,我處於我的應用程序需要使用駱駝上下文進行註冊的編解碼器(HL7)的情況。我知道有一個解決方案,你可以用你自己的註冊表的實例創建一個默認的駱駝上下文,但有什麼辦法可以在駱駝上下文中配置我自己的註冊表嗎?在駱駝上下文中配置註冊表xml
我使用JavaDSL來開發我的應用程序,上下文中的配置是這樣的。
<bean id="hl7codec" class="org.apache.camel.component.hl7.HL7MLLPCodec">
<property name="charset" value="iso-8859-1"/>
</bean>
<camelcontext id = "context">
<ref bean = "MyRouteBuilder"/>
<camelcontext/>
我通過覆蓋配置方法在MyRouteBuilder類中構建路由。我的路線是這樣的。
from("mina2:tcp://localhost:8888?sync=true&codec=#hl7codec").to("jms:queue")
但是,編解碼器似乎不工作。當我刪除編解碼器時,我的應用程序運行良好並接受HL7消息,但是使用編解碼器,我無法接收任何消息。我覺得這是因爲編解碼器bean已定義,但上下文無法將其提取出來。我不想用所需的註冊表設置創建defaultcamelcontext。相反,我正在尋找一種方法在camelcontext配置xml中註冊編解碼器,到目前爲止,我失敗了。
我是否缺少任何與我的配置?任何幫助將不勝感激。
bgossit是正確的。只有在XML中,您應該轉義爲&等,並且也可以在XML中使用< and >字符。 –
感謝@bgossit和克勞斯。我糾正了它。我仍然無法收到任何關於終點的消息。日誌表示路由已啓動並準備使用,但我仍無法收到該消息 – gwaihir