精华帖 (0) :: 良好帖 (8) :: 新手帖 (0) :: 隐藏帖 (6)
|
|||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
作者 | 正文 | ||||||||||||||||||||||||||||||||||||
发表时间:2009-02-18
最后修改:2009-02-18
配置Mule配置概述1. 配置文件
默认的,并且最常的Mule配置方式是通过XML文件。 使用命令行启动Mule 在命令行启动时配置文件由参数-config指定。 编程的方式启动Mule 编程启动Mule时,配置文件作为ConfigurationBuilder的参数提供。
2. Configuration Builders 3. 指定使用哪一个Configuration Builder XML配置正如上一节配置概述中介绍的,最常用的Mule配置方式是通过Spring XML配置文件完成,这些配置文件是要使用默认的Mule名字空间。 XML 语法 配置文件基于XML语法(schema),在文件的最初指定。 必须要指定所有必须的语法文件,在创建配置文件时,这可能会比较耗时,但是导入语法提供了多种省时的好处: l 在你使用的IDE中支持自动完成和详细的上下文帮助; l 设计阶段的配置检查 l Typed properties
名字空间 每一个Mule模块或者传输组件有它自己的XML语法。当你导入一个语法文件时,它有它自己的名字空间。例如,下面的配置中就将mule-jms.xsd绑定到了jms名字空间。因此,所有以<jms: 起始的xml元素都要遵循mule-jms.xsd语法。
默认名字空间 通常下,会将Mule core语法设置为默认的名字空间。也就是说所有没有前缀的xml元素都遵循Mule core语法(mule.xsd),设置默认名字空间语法的方法是,将Mule语法的URL指定给xmlns,去掉前面例子中的冒号和前缀,也就是使用xmlns替换掉xmlns:jms
Spring 尽管你的配置文件中出现了Mule相关的东西,但他们的确仅仅是附带了Mule相关扩展的Spring配置文件。这种方法可以让你在Mule配置中使用所有Spring提供的东西,比如beans,factory beans,resources loaders,EJBs,JNDI,AOP,甚至集成其他像Hivemind,jBPM,Gigaspaces,JBoss Rules等等此类软件。 使用标准的Spring元素,需要导入Spring名字空间:
属性占位符 你可以使用ant风格的属性占位符,例如:
正如这一节中描述的,这些占位符的值可以有很多种方法赋予 全局变量 你可以使用<global-property>元素来从Mule配置的内部设置一个占位符的值,比如在另一个Mule配置文件中:
属性文件 可以从文件中加载属性,你可以使用标准的Spring元素完成:<context:property-placeholder>
这里的smtp.properties文件的内容如下:
使用逗号来分隔需要加载的多个属性文件:
系统属性 占位符的值可以来自JDK系统,如果你从命令行启动Mule,你可以以如下方式指定这些属性:
或者在conf/wrapper.conf文件中编辑系统属性。 如果你使用编程的方式启动Mule,你可以用如下的方式指定属性:
环境变量 对于访问环境变量,没有标准的方式。这个链接里你可能会找到有用的信息。 配置一个Mule实例基本配置 Mule配置文件可以表示成一个元素的描述树,不管什么形式的配置,最上层总包括以下的基本元素。 l 连接器(connectors):所有的传输组件都没有默认的配置; l 端点(endpoints);提倡对端点进行全局定义,这样可以清楚地描述你的集成通道在什么位置; l 转换器(transformers):可能需要全局定义,然后在你的服务中进行引用; l 过滤器(Filters):同转换器。 l 模型(Models);一个或多个模型,从逻辑上组成了你的服务。
高级配置 另外,你可能还需要某些高级的配置: l 代理(Agents):代理通常用于提供一些横向的服务,比如日志和管理; l 通知(Notifications):在有生命周期的事件上,通知某些事件; l 安全管理(Security Manager); l 传输组件管理(Transaction Manager) ; l 全局配置选项(Global Configuration Options):不同种类的全局设置; l 全局属性(Global Properties):占位符的值。
配置选项Mule上下文和Mule配置 所有的Mule配置都可以被一个对象:org.mule.api.config.MuleConfiguration访问。MuleConfiguration中的配置属性在Mule上下文(MuleContext)被创建时设置。在Mule启动后,这一对象是不可改变的,但它可以用如下方式进行访问:
配置变量 Mule配置变量可以用<configuration>标签进行配置。例如:
所有可用的变量如下表所示:
Q&A 怎样配置sercerId? 在2.0中,一些系统属性在启动后是不可改变的,比如serverId。serverId不再被配置在xml配置文件中,你需要用启动参数-DMule.serverId=YOUR_MULE_SERVER_ID指定系统属性或者编程的方式下调用 org.mule.config.DefaultMuleConfiguratioin.setId()。
我如何为管理代理设置serverUrl? 在1.x中,在<mule-enviroment-properties>中指定一个serverUrl属性来启动管理代理。在2.x中,可以使用<remote-dispatcher-agent>来替代。详细参照org.mule.module.client. Remoting.RemoteDispatcherAgent。 例如:
默认的队列描述,处理描述以及池化描述在哪里? 队列描述和处理描述配置在模型中,池化描述配置在池组件中。 配置端点内容略使用转换器内容略<!--EndFragment-->声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|||||||||||||||||||||||||||||||||||||
返回顶楼 | |||||||||||||||||||||||||||||||||||||
发表时间:2009-04-22
浅显易懂 正在找这样的资料呢 谢谢
|
|||||||||||||||||||||||||||||||||||||
返回顶楼 | |||||||||||||||||||||||||||||||||||||
发表时间:2009-06-04
portrait 写道 浅显易懂 正在找这样的资料呢 谢谢 仅仅是把User Guide里面的部分内容列举了一下。 Mule User Guide的翻译工作正在启动,你可以关注一下。 http://www.iteye.com/topic/391480 |
|||||||||||||||||||||||||||||||||||||
返回顶楼 | |||||||||||||||||||||||||||||||||||||
浏览 3214 次