endpoint
<channel-definition id="my-amf" class="mx.messaging.channels.AMFChannel">
<endpoint url="http://127.0.0.1/flexweb/messagebroker/amf" class="flex.messaging.endpoints.AMFEndpoint" />
</channel-definition>
<channel-definition id="my-secure-amf" class="mx.messaging.channels.SecureAMFChannel">
<endpoint url="https://127.0.0.1/flexweb/messagebroker/amfsecure " class="flex.messaging.endpoints.SecureAMFEndpoint"/>
<properties>
<add-no-cache-headers>false</add-no-cache-headers>
</properties>
</channel-definition>
<channel-definition id="my-polling-amf" class="mx.messaging.channels.AMFChannel">
<endpoint url="http://127.0.0.1/flexweb/messagebroker/amfpolling" class="flex.messaging.endpoints.AMFEndpoint"/>
<properties>
<polling-enabled>true</polling-enabled>
<polling-interval-seconds>4</polling-interval-seconds>
</properties>
</channel-definition>
Flex 调用远程或所在web应用的 BlazeDS服务时,必须建立和远端的通道channel,才能正常通信。
1. 通常的方式是 Flex 在编译时就指定远程的端点 Endpoint,service-config.xml 中的Endpoint 配置是 例如:
Xml代码
<endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/amf"
说明:server.name:如果是本机的话,那就是127.0.0.1了,如果发布在网上的话,那一定是一个域名了知道有多么的重要了吧。
server.port:服务器的端口号。
context.root:是你的项目名称。
编译时指定的方式是在加编译参数,例如:
引用
-services "services-config.xml" -context-root "/flexWeb"
services-config.xml 需要放在当前目录下,或者指定BlazeDS所在的配置文件路径。
2. 在 <mx:RemoteObject/> 对象中指定Endpoint参数:
例如:
Xml代码
<mx:RemoteObject id="roOrder" destination="Hello" showBusyCursor="true" endpoint="http://server:8080/flexWeb/messagebroker/amf">
<mx:RemoteObject id="roOrder" destination="Hello" showBusyCursor="true" endpoint="http://server:8080/flexWeb/messagebroker/amf">
说明:1) 全路径: endpoint="http://server:8080/flexWeb/messagebroker/amf" >
2) 基于contextRoot: endpoint="/flexWeb/messagebroker/amf" >
3) 基于当前路径: endpoint="messagebroker/amf" >
一般设置好了-services编译,就不用设置endpoint