2 xll xz xll_xz 于 2013.08.20 17:29 提问

关于MULE调用RMI服务的问题

这是MULE的配置文件.
<?xml version="1.0" encoding="UTF-8"?>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:spring="http://www.springframework.org/schema/beans"
xmlns:rmi="http://www.mulesoft.org/schema/mule/rmi"
xmlns:vm="http://www.mulesoft.org/schema/mule/vm"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-current.xsd
http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/vm http://www.mulesoft.org/schema/mule/vm/current/mule-vm.xsd
http://www.mulesoft.org/schema/mule/rmi http://www.mulesoft.org/schema/mule/rmi/current/mule-rmi.xsd">

<spring:bean id="jndiFactory" name="jndiFactory" class="org.mule.transport.rmi.MuleRMIFactory"/>

<spring:bean id="jndiContext" name="jndiContext" factory-bean="jndiFactory" factory-method="create">
    <spring:constructor-arg><spring:null /></spring:constructor-arg>
</spring:bean>

<rmi:connector name="rmi" jndiContext-ref="jndiContext" />

<vm:connector name="vmQueue"/>

<rmi:endpoint name="Sender" host="localhost" port="1099" object="SimpleMathsUMO" 
    method="addTen" exchange-pattern="request-response"/>

<endpoint name="Sender2" address="rmi://localhost:1099/MatchingUMO?method=reverseString"
    exchange-pattern="request-response"/>


<flow name="TestUMO">
    <inbound-endpoint address="vm://query" exchange-pattern="request-response"/>
    <outbound-endpoint ref="Sender"/>
</flow>

这是客户端的程序.

import java.util.HashMap;
import java.util.Map;

import org.mule.api.MuleContext;
import org.mule.api.MuleException;
import org.mule.api.MuleMessage;
import org.mule.context.DefaultMuleContextFactory;
import org.mule.module.client.MuleClient;

public class MyMuleClientTest {
public static void main(String[] args) throws MuleException

{

// create mule

MuleContext muleContext;

String config = "Example_RMITest.xml";

muleContext = new DefaultMuleContextFactory().createMuleContext(config);

muleContext.start();

// creat mule client

MuleClient client = new MuleClient(true);

Map map = new HashMap();

// map.put("firstName", "p001");

MuleMessage response = client.send("vm://query", map, null);

System.out.println("response = " + response.getPayload());

}

}

现在我遇到了这个异常:"There is no receiver registered on connector "connector.VM.mule.default" for endpointUri vm://query".
我真的不知道为什么了,请帮帮我,谢谢!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Mule学习之路_1.MuleClient调用Mule发布的服务
据了解Mule通过Flow发布的服务默认就是通过CXF发布的,首先创建服务和实现类 Service:HelloWorld package com.easyway.esb.mule; import javax.jws.WebService; @WebService public interface HelloWorld { String sayHi(String text
Mule ESB 学习笔记 服务调用
一. 服务调用 1. Mule实现并提供Web Service     在Mule上开发并发布一个Web Service供客户端调用。           ·         示例配置     <core:inbound-endpoint address="http://localhost:65082/services/Echo1" exch
mule学习笔记(八):代理方式调用服务
xmlns:http="http://www.mulesoft.org/schema/mule/http" xmlns:doc="http://www.mulesoft.org/schema/mule/documentation" xmlns:spring="http://www.springframework.org/schema/beans" version="EE-3.4.0"
Mule Esb实现WebService代理
基于SOA的系统开发越来越成为了分布式系统开发的提纲,在系统继承平台项目中,我们也很好的实现了这一理念。在这个项目中,各个系统之间的交互主要依赖的是webservice,由其是基础系统为考试系统,评教系统提供数据支持的情况,并且随着业务的不断扩展,我们将提供越来越多的webservice,在这种情况下如果依然让各个系统之间持有webservice的wsdl以此访问webservice在后期会造成严重的维护问题,并且考虑到继承以前遗留的异构系统我们最终选择了使用ESB来成立一个webservice管理中心,所
mule studio学习笔记(六):外部web service调用
1.eclipse中创建web Service 2.mule中调用web Service
通过MULE集成服务的几种方式
6. 配置模式 Mule 3.0版本提供了“pattern”的机制。Pattern总结了实际使用过程中的常见场景,以简化的服务配置方式提供。 6.1 简单服务模式(simple service pattern) 简单服务模式用于简化同步服务调用的配置,对应消息传递方式中的请求-响应方式。 图 简单服务模式 简单服务模式通过simple-service 元素配置,主要的元素属性包括:
使用Mule发布Web Service服务
一、编写接口代码 view source print? 1 package cn.com.songjy.mule; 2   3 public interface IHelloWord { 4  
(三)远程服务:RMI 服务实现远程调用
RMI 与 Spring RMI 是 Java 平台实现远程调用的一种方式,于 JDK1.1 引入 Java 平台。“Spring 简化了 RMI 模型,它提供了一个代理工厂 Bean ,能让我们把 RMI 服务像本地 JavaBean 一样装配到我们的 Spring 应用中。”这里再多说一句, RMI 是 RPC 在 Java 平台的一种实现方式。 RMI 使用的注意事项 ...
MULE开发实例1---并行调用多个webservice接口
使用MuleEsb同时掉多个webservice,并返回到调用方。开发环境为AnyPoint3.7,将例子中的webservice接口修改成自己的即可运行。
Java RMI远程方法调用详解
远程方法调用RMI(Remote Method Invocation),是允许运行在一个Java虚拟机的对象调用运行在另一个Java虚拟机上的对象的方法。 这两个虚拟机可以是运行在相同计算机上的不同进程中,也可以是运行在网络上的不同计算机中。 Java RMI:Java远程方法调用,即Java RMI(Java Remote Method Invocation)是Java编程语言里,一种用于实现远程过程调用的应用程序编程接口。它使客户机上运行的程序可以调用远程服务器上的对象。远程方法调用特性使