关于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".
我真的不知道为什么了,请帮帮我,谢谢!

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
mule studio学习笔记(六):外部web service调用
1.eclipse中创建web Service 2.mule中调用web Service
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发布Web Service服务
一、编写接口代码 view source print? 1 package cn.com.songjy.mule; 2   3 public interface IHelloWord { 4  
MULE开发实例1---并行调用多个webservice接口
使用MuleEsb同时掉多个webservice,并返回到调用方。开发环境为AnyPoint3.7,将例子中的webservice接口修改成自己的即可运行。
mule使用SOAP工件发布和消费web Service的简单例子
开发环境: Mule Studio - Tooling for Mule ESB Version: 3.5.0   官网上是AppMule Studio 3.5了,版本不太一样,工件已经改成了web service consumer.   服务端hello-server.xml: &amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&amp;gt; &amp;lt;m...
RMI多网卡问题
在多网卡的机器上使用RMI时出现异常:java.rmi.ConnectException:Connection refused to host: ...
RMI几种发布和引用服务的方式
RMI是Java原生的分布式服务机制,支持Java对Java的分布式访问,采用Java的序列化协议进行CodeC操作。这里简单说下RMI发布服务和客户端引用服务的方式。 RMI发布服务时支持两种方式,一种是RMI本身的发布协议,另外一种是采用通用的JNDI的方式来发布服务。 采用JMI本身的发布协议,可以使用Registry接口,也可以使用Naming工具类。 使用Registry接
(三)远程服务:RMI 服务实现远程调用
RMI 与 Spring RMI 是 Java 平台实现远程调用的一种方式,于 JDK1.1 引入 Java 平台。“Spring 简化了 RMI 模型,它提供了一个代理工厂 Bean ,能让我们把 RMI 服务像本地 JavaBean 一样装配到我们的 Spring 应用中。”这里再多说一句, RMI 是 RPC 在 Java 平台的一种实现方式。 RMI 使用的注意事项 ...
远程调用-rmi远程连接被拒绝
【问题背景】 本项目的导入导出功能是异步实现的,即: 第一步:前台页面先点击“导入”、“导出”按钮,后台给任务表Task插入一条队列任务; 第二步:Linux主机上的定时程序扫描Task表,然后远程调用Windows主机上部署的“导入导出应用”(ps:中间还有好几个应用之间的调用,此处省略) 第三步:前台页面“下载报告”中查看任务执行情况,并提供“下载”按钮去下载导出的excel文件。
JDK基础:RMI服务远程调用方法
1.原理 2.搭建一个RMI服务的过程分为以下7步 2.1 创建远程方法接口,该接口必须继承自Remote接口 2.2创建远程方法接口实现类 2.3 服务端实体类必须可序列化 2.4 构建服务端代码 2.5 创建客户端接口 2.6 创建客户端实体类 2.7 创建客户端代码 3.java.rmi.Naming和java.rmi.registry.LocateRegistry的区别 ...
Java RMI(远程方法调用)
1、Java RMI - 简介RMI代表远程方法调用(Remote Method Invocation)。它是一种允许驻留在一个系统(JVM)中的对象访问/调用在另一个JVM上运行的对象的机制。RMI用于构建分布式应用程序; 它提供了Java程序之间的远程通信。它在java.rmi包中提供。1.1 RMI应用程序的体系结构在RMI应用程序中,我们编写两个程序,一个服务器程序(驻留在服务器上)和一个...
Mule ESB使用之高并发问题
Mule ESB作为开源社区的企业级服务
Java RMI远程接口调用介绍与使用
相关文章: RMI(Remote Method Invocation)原理浅析 Java RMI 实现代码动态下载 stub 和 skeleton 的讲解,自己实现一个stub和skeleton程序虽然现在在分布式中RMI已经很少用到,但作为最简单的分布式应用,我们还是稍微了解一下好,这篇文章可能有我理解错误的地方,希望大家指出,谢谢。 RMI的基础是接口,RMI构架基于一个重要的原理:
通过MULE集成服务的几种方式
6. 配置模式 Mule 3.0版本提供了“pattern”的机制。Pattern总结了实际使用过程中的常见场景,以简化的服务配置方式提供。 6.1 简单服务模式(simple service pattern) 简单服务模式用于简化同步服务调用的配置,对应消息传递方式中的请求-响应方式。 图 简单服务模式 简单服务模式通过simple-service 元素配置,主要的元素属性包括:
Java RMI远程方法调用详解-例子代码
Java RMI远程方法调用详解-例子代码,例子详解在:http://blog.csdn.net/guyuealian/article/details/51992182
RMI (Remote Method Invocation)远程方法的简单调用
RMI介绍:JNDI 就是一个注册表,服务端将服务对象放入到注册表中,客户端从注册表中获取服务对象 定义远程接口: package demo.zookeeper.remoting.common; import java.rmi.Remote; import java.rmi.RemoteException; /** * * @author Administrator *...
服务器之间使用rmi,如本地方法调用,可直接访问缓存
这几天想学习rmi的使用,网上查找的绝大部分都是在同一个项目调用的,个人感觉意义不大,不然只在同项目调用如何使rmi实现分布式。有一个链接的回答是把需要共用的接口打包,分别让服务端和客户端引用这个包,就可以实现跨项目调用rmi。目前尝试成功运行,下面贴代码 首先建立公用项目,也就是要暴露的接口给客户端调用(项目都使用了maven,方便依赖,只是为了实现这个功能,具体并没有配置) 具体代码(
Java之RMI(远程方法调用)
RMI(Remote Method Invocation)中文名称是远程方法调用,可用于分布式计算。 这里就不去详细介绍RMI了,本Blog主要讲叙RMI实战和有哪些需要注意的地方,如果想要查看详细介绍请查看:百度百科RMIRMI分为服务端和客户端服务端:创建服务端:LocateRegistry.createRegistry(端口); Naming.rebind("rmi://IP地址:端口/RM
mule实现定时任务查询数据
定时任务用到poll组件,新建flow添加poll组件,数据库组件内嵌在poll组件内,添加logger组件,搭建好如图: 另外,在整个flow上还要做一个设置: 上面是poll组件可以做设置的地方,watermark设定的数据可以用于查询数据的条件 比如:现在的要求是每次轮训查询只查询新加的记录,那上面设置的值maxid就是当前这次查询最大的记录id,那database组件中...
使用Spring RMI调用远程方法
Spring有多种调用远程的方式,今天学习了一下远程方法调用(RMI)。 RMI需要服务端和客户端 我们先从服务器开始 我的代码结构 package rmi; public interface ServerRmiI { public String sayHi(String name); } package rmi; public class Ser
linux环境下的rmi常见问题
linux环境下的rmi常见问题 问题一:RMI服务提供程序运行在Windows操作系统下,RMI服务可以正常访问,但将RMI服务提供程序部署到Linux操作系统下后,RMI服务无法访问,提示 org.springframework.remoting.RemoteConnectFailureException: Cannot connect to remote service [rmi:/
从懵逼到恍然大悟之Java中RMI的使用
此处讲的是Java中的RMI,而不是通用意义上的RMI,关于通用的RMI可以参考分布式之RPC的协议以及错误处理 这篇文章。一、Java RMI简介Java RMI用于不同虚拟机之间的通信,这些虚拟机可以在不同的主机上、也可以在同一个主机上;一个虚拟机中的对象调用另一个虚拟上中的对象的方法,只不过是允许被远程调用的对象要通过一些标志加以标识。
6.RPC框架的简单实现(服务发布-rmi协议)
通过rmi协议发布一个Java服务,使用java.rim包下的Naming.bind()方法即可,但是jdk默认rmi协议的实现需要接口类继承java.rmi.Remote,接口方法抛出RemoteException,实现类需要继承UnicastRemoteObject类比较繁琐。spring框架也提供了一套rmi协议的实现...
【.net】asp.net文本编辑器FCKeditor使用方法详解
效果图: 那么为什么说是FCKeditor的冰冷之心呢?这不是哗众取宠,主要是说它使用起来有点麻烦,下文就详细说明如何搞定这玩意儿。 1.FCKeditor的官方网站是:http://www.fckeditor.net/download  目前最新的FCKeditor 2.4.2版本。 请在此页下载:http://sourceforge.net/project/showfile
Linux下解决RMI部署问题
自己开发的一套RMI的应用,在Windows平台测试没有问题,但部署到Linux下Client总是不能连接Server. Server邦定的是0.0.0.0:9000,客户端能够连接,看了下返回结果,发现Proxy中一个Host字段返回值有问题,经常会是 127.0.0.1,这个是由于Server注册时,没有指定邦定IP,结果会返回Hosts中的localhost的IP。通过修改这个IP,就能够...
Java RMI远程方法调用详解
远程方法调用RMI(Remote Method Invocation),是允许运行在一个Java虚拟机的对象调用运行在另一个Java虚拟机上的对象的方法。 这两个虚拟机可以是运行在相同计算机上的不同进程中,也可以是运行在网络上的不同计算机中。 Java RMI:Java远程方法调用,即Java RMI(Java Remote Method Invocation)是Java编程语言里,一种用于实现远程过程调用的应用程序编程接口。它使客户机上运行的程序可以调用远程服务器上的对象。远程方法调用特性使
RMI如何固定分配端口
    RMI之所以使用的范围受限制主要有两方面原因,其一:必须要是java,平台的异构性受到限制;其二:穿越防火墙不方便。这里主要谈谈RMI如何通过固定分配端口来穿越防火墙。     RMI穿越防火墙不方便主要是因为除了RMI服务注册的端口(默认1099)外,与RMI的通讯还需要另外的端口来传送数据,而另外的端口是随机分配的,所以要想RMI的客户能通过防火墙来与RMI服务通讯,则需要能让随机分配
Java 远程调用 RMI 与Spring的整合实例
spring 与java rmi整合
Java RMI服务远程方法调用漏洞
JAVA RMI 反序列化远程命令执行漏洞 漏洞资料 背景 原理 Payload构造 搭建本地测试环境 开启包含第三方库的RMI服务 测试RMI客户端 攻击测试 升级版攻击 Weblogic Commons-Collections反序列化RCE漏洞(CVE-2015-4852) J...
spring发布RMI服务,多网卡问题
服务器有两个网卡,一个内网,一个外网 Spring xml配置如下: &amp;lt;context:property-placeholder location=&quot;classpath:/config/app.properties&quot; /&amp;gt; &amp;lt;!-- 客户端RMI服务 --&amp;gt; &amp;lt;bean id=&quot;appPush&quot; class=&quot;cn.com.sinosoft.ebusi...
RMI在外网不能通信的解决
前段时间写了一个全文检索服务,用的是RMI远程调用。在本机上写好后,测试ok.但一部署到服务器上就报找不到服务。在网上找了一大通: 原因如下:     RMI除了注册端口外,其通信端口是服务器随机产生的,因此不容易穿过防火墙。 现将我在网上搜索到的解决方法公布在这里,给其它人需要的人一个方便。也给自己一个方便。 一、普通解决: import java.rmi.ser
Mule总结(初)
What is Mule?一个以Java为核心的轻量级的消息框架和整合平台。它使得开发人员可以快速,简单的连接多个应用。目前许多公司都使用了Mule,比如Walmart,HP,Sony,Deutsche Bank 以及 CitiBank等公司。Mule基于Enterprise Service Bus(ESB)架构思想。ESB的主要特性是通过扮演一个中转系统的角色,允许不同的应用系统交互,中转系统在内
mule 带项目启动
1)bat执行程序:  @ECHO OFF SETLOCAL ENABLEDELAYEDEXPANSION cd .. SET classpath=classes/. title  SET jvmargs=-Xms64m -Xmx512m -XX:+UseParallelGC -XX:ParallelGCThreads=%NUMBER_OF_PROCESSORS% SET mai
Mule ESB java组件两种写法
1是编写java的transformer, 2 是编写java的component  先说1.  说到底就是一个消息的转换功能, 就是获取到http请求过来的消息(payload), 然后将其转换为自己后续需要的格式的数据形态。  Java代码   import java.io.ByteArrayOutputStream;   import java.io
rmi端口问题
RMI之所以使用的范围受限制主要有两方面原因,其一:必须要是java,平台的异构性受到限制;其二:穿越防火墙不方便。这里主要谈谈RMI如何通过固定分配端口来穿越防火墙。     RMI穿越防火墙不方便主要是因为除了RMI服务注册的端口(默认1099)外,与RMI的通讯还需要另外的端口来传送数据,而另外的端口是随机分配的,所以要想RMI的客户能通过防火墙来与RMI服务通讯,则需要能让随机分配的端...
异地和本地Java RMI调用
今天要用异地访问java某个类,用到了Java RMI,到网络中搜索了一些资料,搜索不到关于异地的实例,都是关于本地的,乘着这个机会,写一下关于异地访问java某个类的实例。 步骤一: 1.定义一个远程接口的接口,该接口中的每一个方法必须声明它将产生一个RemoteException异常。 import java.rmi.Remote; import java.rmi.RemoteExce...
ESB之Mule ESB的使用
概要说明:          本次的ESB使用的是Mule ESB,其官网是https://developer.mulesoft.com/,目前官网提供的社区版和企业版,企业版是收费的,功能齐全,本次开发使用的是社区版本的,Mule ESB 目前最新的IDE是AnypointStudio,它是基于Eclipse重构而来的,使用的部署工具是mule-standalone-3.8.0。 配置说
RMI远程方法调用技术
RMI远程方法调用技术
Mule-JDBC配置实例
最近一个集成项目需求如下:从Oracle临时表中轮询数据,将轮询结果插入到MSSQLSERVER数据库中,然后在确保数据插入MSSQLSERVER后,将Oracle临时表中的数据删除。由于初次接触Mule,一些概念和应用尚未搞明白,现将实现过程整理如下,仅供参考。         重点注意事项:         1.Mule版本:mule-standalone-3.3.0社区版;
RMI发布多个服务(接口)
在使用Spring RMI时可能会遇到发布多个服务的需求,假设一个服务要操作文件,另一个服务要往屏幕上打印“hello world”。难道要把这两个风马牛不相及的服务写在一个接口里吗!如果真这样那结构也太差了。 网上有人问这个问题:“http://topic.csdn.net/u/20090702/11/9bcf60e5-f3f8-4401-a41d-2f98535988b9.html”,看样子
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 关于大数据培训 关于云计算