BlazeDS运行期的配置
来源:互联网 发布:淘宝csgo皮肤 编辑:程序博客网 时间:2024/05/16 18:15
除了基于在xml文件的静态配置外,还有两种方式的运行期配置, 一种是注册引导服务(bootstrap service),在启动时动态配置;另一种是由外部条件触发,在远程对象方法 内部动态配置组件。
1: 使用Bootstrap Service进行动态配置
public class EmployeeRuntimeRemotingDestination extends AbstractBootstrapService
{
private RemotingService remotingService;
public void initialize(String id, ConfigMap properties)
{
String service = "remoting-service";
MessageBroker mb = getMessageBroker();
remotingService = (RemotingService) mb.getService("remoting-service");
RemotingDestination destination = (RemotingDestination) remotingService.createDestination(id);
destination.setSource("flex.samples.crm.employee.EmployeeDAO");
}
@Override
public void start()
{
// No-op
}
@Override
public void stop()
{
// No-op
}
}
上面类写完之后还要在service-config.xml中进行配置:
<services>
<service class="com.flexbook.dao.DatabaseCheckService" id="hsqldb" />
<service-include file-path="remoting-config.xml" />
<service-include file-path="proxy-config.xml" />
<service-include file-path="messaging-config.xml" />
<service class="com.flexbook.dao.EmployeeRuntimeRemotingDestination" id="runtime-employee-ro" />
</services>
上面的示例很简单,我们获取id为"remoting-service"的RemotingService实例,然后以"testDestination"为id创建一个Destination,并设置了它 的source属性。之所以选择在initialize方法中创建Destination,是因为这个方法由MessageBroker调用,
调用的时机是在所有静态组件都创建完毕但启动之前,并且在此方法内创建的组件会自动启动(如果在start方法内创建组件,那么必须
由我们自己负责启动这些组件)。
2. 使用远程对象进行动态配置
使用远程对象动态配置BlazeDS比bootstrap service更加灵活,它可以接受来自外部的输入被动地进行配置,而不是仅仅在BlazeDS启动时主动读取外部数据进行配置。
示例代码:
public class DestinationBuilder{
String sevice = "message-service";
MessageBroker mb = MessageBroker.getMessageBroker(null);
MessageService rs = (MessageService)mb.getService(service);
if(null == rs.getDestination(destId)){
MessageDestination md = (MessageDestination) rs.createDestination(destId);
md.start();
}
return destId;
}
上面传入的参数为"null"说明我们期望获得默认的MessageBroker实例。
在 remoting-config.xml中DestinationBuilder的配置片段:
<destination>
<properties>
<source>com.flexbook.blazeds.DestinationBuilder</source>
</properties>
</destination>
定义在remoting-config.xml中的原因是由于我们必须手动启动这个配置文件。
- BlazeDS运行期的配置
- BlazeDS的功能及配置
- mssql+hibernate+blazeds+flex的配置说明
- FLEX 与JAVA的LCDS BLAZEDS配置.
- BlazeDS的功能原理及配置实例
- FlashBuilder中BlazeDS服务的配置
- Flex + BlazeDS 学习笔记 (一) --- BlazeDS的功能原理及配置实例
- Flex + BlazeDS 学习笔记 (一) --- BlazeDS的功能原理及配置实例
- jBPM4的运行期环境
- jBPM4的运行期环境
- BlazeDS配置实例
- Tomcat5.5 配置 blazeds
- 配置Flex+BlazeDS+Spring
- blazeds通信相关配置
- spring blazeds 安全配置
- blazeds通道、端点配置
- BlazeDS 入门及配置
- 关于BlazeDS的配置 flex+java的实现
- 嵌入式系统电源芯片选型与应用
- ubuntu和XP共享
- 使用Application Verifier (AppVerifier)检查资源泄漏
- RPC和REST的区别(转)
- 这几周做一个小负责人的体会
- BlazeDS运行期的配置
- 无言如是说-舒羽
- 微积分 = 微分 + 积分
- htc G10刷机教程
- Portal integration in Web dynpro application的简单介绍
- QT组件布局
- Mongodb源码分析--日志及持久化
- C 有符号数和无符号数
- 快速开发平台——web应用的整体安全