"The VM transport is used for intra-VM communication between components managed by Mule."
mule-config.xml里加入如下入口:
<inbound> <vm:inbound-endpoint address="vm://vmtest" /> </inbound>
从程序里面启动mule服务,和往这个入口传参数:
MuleServer server = new MuleServer("conf/mule-config.xml");
server.start(false, false);
......
MuleClient client = new MuleClient();
message = client.send("vm://vmtest","string",null);
要注意的是必须从程序里启动mule服务。若是用右键mule-config.xml Run as Mule Server,再在程序里只用
MuleClient client = new MuleClient();
message = client.send("vm://vmtest","string",null);
就会出现如下错误:
******************************************************************************** Message : There is no receiver registered on connector "connector.VM.0" for endpointUri vm://vmtest Type : org.mule.api.transport.NoReceiverForEndpointException Code : MULE_ERROR-67001 JavaDoc : http://www.mulesource.org/docs/site/current2/apidocs/org/mule/api/transport/NoReceiverForEndpointException.html ********************************************************************************