Parameters 使用多个参数调用Apache Camel RMI端点调用方法

Parameters 使用多个参数调用Apache Camel RMI端点调用方法,parameters,rmi,apache-camel,endpoint,Parameters,Rmi,Apache Camel,Endpoint,我可以调用具有多个参数的Apache Camel RMI端点方法吗 我调用的方法签名是: public ReturnedVo methodSignature(String parm1, byte[] parm2) Camel Route: from("timer:myTimer?period=5000".routeId("TestRoute").process(new Processor() { public void proces

我可以调用具有多个参数的Apache Camel RMI端点方法吗

我调用的方法签名是:

public ReturnedVo methodSignature(String parm1, byte[] parm2)

Camel Route:
    from("timer:myTimer?period=5000".routeId("TestRoute").process(new Processor() {
       public void process(Exchange exchange) throws Exception{
          exchange.getOut().setBody(???????);
       }
    }).to (uri)
其中
uri=”rmi://serviceLocation?method=methodSignature“

当方法只有一个参数时,我可以使用类似的路由从同一个服务调用不同的方法。我正在使用对象的实例设置消息体:
exchange.getOut().setBody(instanceOfObject)


我调用的服务是Weblogic 8.1上的远程EJB。

回答我自己的问题。以下是我为解决这个问题所做的工作

1) 对uri进行了更改:uri=”rmi://serviceLocation?
method=methodSignature&multiparameterary=true

2) 创建对象数组以存储要调用的方法的参数:

Object[]body=新对象[]{“parm1”,新字节[11]}

3) 已将驼峰路线更改为使用对象[]正文:

from("timer:myTimer?period=5000").
   routeId("TestRoute").
   process(new Processor() { 
       public void process(Exchange exchange) throws Exception{ 
           exchange.getOut().setBody(body); 
       } 
   }).
   to (uri)
请注意,从Camel 2.9开始有不同的解决方案