我几乎完成了我的项目,但现在我想在每个视图中添加一个动态服务器 url 设置。使用 config.xml 和 channels-config.xml 引导应用程序(我使用了 Parsley 框架)。
配置.xml:
<?xml version="1.0" encoding="utf-8"?>
<fx:Object xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
xmlns:services="services.*">
<fx:Declarations>
<services:GenBUS id="genBUS"/>
<services:KarBUS id="karBUS"/>
<services:UygBUS id="uygBUS"/>
</fx:Declarations>
</fx:Object>
频道-config.xml:
<objects
xmlns="http://www.spicefactory.org/parsley"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.spicefactory.org/parsley
http://www.spicefactory.org/parsley/schema/2.4/parsley-core.xsd">
<object type="mx.messaging.ChannelSet">
<property name="channels">
<array>
<object type="mx.messaging.channels.AMFChannel">
<property name="uri" value="http://localhost:8080/ClinASM/messagebroker/amf"/>
</object>
</array>
</property>
</object>
</objects>
场景如下:用户将在登录系统之前更改 url,当一切完成后,更新的端点 url 将保存在 SessionClientData.endpoint 中,并且在调用服务器端的方法之前,我会分配一个新的端点到远程对象类:
[Inject(id="genBUS")]
public var genBUS:GenBUS;
public function login(username: String, password:String):void {
//updating endpoint
genBUS.endpoint = SessionClientData.endpoint;
//call responder is created and..
loginViewResponder.token = genBUS.getLoginResult(username,password);
}
但我做错了什么 - 所以它不起作用......有什么建议如何制作动态且易于构建的频道配置?
更新:如何重新配置结构,以便客户端没有“服务”远程对象 - 我不想每次都更新 Flex Server 部分 - 因为在某些情况下会出现无法访问的服务器,就像我的情况一样现在...关于此的任何教程或示例配置?