2013-07-04 84 views
1

我有兩個部署在兩個獨立服務器上的相同的使用駱駝的Web應用程序的實例。 只有實例A會收到某些外部事件通知。我需要以某種方式告知實例B這一點。通過RMI調用遠程駱駝

到目前爲止,我嘗試註冊的路線如下:

RmiEndpoint endpoint= (RmiEndpoint) endpoint("rmi://remotehost:1199/foo"); 
endpoint.setRemoteInterfaces(Junki.class); 
from(endpoint).to("bean:bar"); 

像這樣另一條路線:

<route> 
    <from uri="direct:rmi"/> 
    <to uri="rmi://remotehost:1199/foo"/> 
</route> 

希望這將允許調用方法上豆酒吧上遠程服務器通過向本地發送消息直接:rmi。當我嘗試運行這個時,我沒有任何例外,但是也沒有效果。該網站上的駱駝示例非常可怕,指的是不存在的URI模式,並將所有內容都顯示爲完全脫離背景,所以我無法從中學到很多東西。然而,他們所做的解釋完全如上。

回答

0

Apache Camel發行版的示例中有一個RMI示例。你可以在線查看這個例子的源代碼:https://git-wip-us.apache.org/repos/asf?p=camel.git;a=tree;f=examples/camel-example-osgi-rmi;h=c49b9a7727eb4fc8852343f2bef7d2ae71849adb;hb=HEAD

如果你把這個頁面稱爲恐怖 - > camel.apache.org/rmi,那麼我修復了2個死鏈接。

+0

我仍然想念的是:如何將參數傳遞給rmi函數?假設遠程rmi函數'x(String a,double b)'。如何從ie調用該函數。參數名爲aa和bb的活動mq消息?我們必須在這裏做一些映射嗎?即。 aa-> a和bb-> b? – chris

+0

接下來我在http://camel.apache.org/rmi上不明白的東西是xml示例()。這是什麼意思?從rmi服務開始的路線?在我的世界中,可以使用這樣的服務,而不是'開始一些事情'。 – chris

+0

也有這個例子:https://github.com/apache/camel/tree/master/實例/駱駝示例-OSGi的RMI –