`
- 浏览:
165428 次
- 性别:
- 来自:
北京
-
Flex 调用远程或所在web应用的 BlazeDS服务时,必须建立和远端的通道channel,才能正常通信。
1. 通常的方式是 Flex 在编译时就指定远程的端点 Endpoint,service-config.xml 中的Endpoint 配置是 例如:
Xml代码 复制代码
1. <endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/amf"
<endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/amf"
编译时指定的方式是在加编译参数,例如:
引用
-services "services-config.xml" -context-root "/HelloBlazeds"
services-config.xml 需要放在当前目录下,或者指定BlazeDS所在的配置文件路径。
http://www.adobe.com/cfusion/communityengine/index.cfm?event=showdetails&productId=2&postId=12209
2. 在 <mx:RemoteObject/> 对象中指定Endpoint参数:
例如:
Xml代码 复制代码
1. <mx:RemoteObject id="roOrder" destination="Hello" showBusyCursor="true" endpoint="http://server:8080/HelloBlazeDS/messagebroker/amf" >
<mx:RemoteObject id="roOrder" destination="Hello" showBusyCursor="true" endpoint="http://server:8080/HelloBlazeDS/messagebroker/amf" >
1) 全路径: endpoint="http://server:8080/HelloBlazeDS/messagebroker/amf" >
2) 基于contextRoot: endpoint="/HelloBlazeDS/messagebroker/amf" >
3) 基于当前路径: endpoint="messagebroker/amf" >
总结:
对于Flex+BlazeDS集成开发,方式1,和2.1),2.2) 对于企业应用来说都不是最佳方案,因为他将 contextroot写死了,不便于移植,也就是说,编译后的 swf 放到其他应用下无法调用BlazeDS服务;
而对于互联网应用,如果假定 endpoint地址比较固定,编译时指定contextroot或endpoint全路径则是较好的选择,例如一个从google搜索信息Flex的小程序,放到桌面也能跑起来。
[参考资料]
1. http://www.adobe.com/cfusion/communityengine/index.cfm?event=showdetails&productId=2&postId=12209
2. http://www.javaeye.com/topic/238127
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
1. 安装与配置:首先,需要安装并配置LCDS服务器,确保它与所用的数据库系统兼容并正确设置连接。 2. 创建服务:在LCDS管理控制台中,创建数据源和服务,将数据库表映射为Flex中的数据模型。 3. 配置AMF通道:AMF...
你需要配置`RemoteObject`的`endpoint`属性指向Java服务的URL,并且定义与Java服务对应的接口方法。例如,你可以创建一个名为`LoginService`的服务,其中包含一个`login`方法,接收用户名和密码作为参数,然后将这些...
<s:RemoteObject id="myService" endpoint="amf://localhost/flex/services" destination="myService"> ``` 然后,你就可以在Flex代码中调用服务端的方法了: ```actionscript myService.myMethod({param1: ...
3. **配置BlazeDS**:在Spring应用上下文中配置BlazeDS,设置AMF通道,以允许Flex客户端通过AMF与Spring应用进行通信。 4. **Flex客户端开发**:在Flex项目中,使用`RemoteObject`或`WebService`组件来调用后端的...
Flex是Adobe开发的一种富互联网应用程序(RIA)框架,主要用于创建交互性强、用户体验良好的Web应用。在Flex中,HttpService组件是用于与服务器进行HTTP通信的关键工具,它支持发送GET和POST请求,处理JSON、XML等...
在Flex工程中,设置`Root folder`指向Java工程在Tomcat中的发布路径,`Root URL`为Java工程的访问URL,`Context root`为Java工程的根目录,`Output folder`则指定Flex工程编译后的输出位置。此外,还要在Flex工程...
确保在MXML文件中添加正确的AMF端点,例如`endpoint="http://localhost:8080/Flex2/messagebroker/amf"`,以便Flex能够与Java服务通信。 总之,配置Flex4开发环境涉及安装Flash Builder 4插件、设置服务器环境、...
<endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/amfpolling" class="flex.messaging.endpoints.AMFEndpoint"/> <polling-enable>true ``` 2. **配置Spring**: 在...
<endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/amf" class="flex.messaging.endpoints.AMFEndpoint"/> ``` ### 5. Demo实例 `TestFlexAndJava`可能是一个包含完整示例...
5. **Flex项目设置**:在Flex Builder中,`<s:RemoteObject>`标签需要配置`endpoint`属性,指向BlazeDS的MessageBroker,通常是`http://localhost:8080/Java2Flex/messagebroker/amf`。同时,`services-config.xml`...
`<endpoint>`标签指定了通道的URL和使用的端点类型。在这个例子中,URL为`http://{server.name}:{server.port}/{context.root}/messagebroker/amflongpolling`,这通常会指向Flex MessageBroker服务,而`AMFEndpoint...
标题中的“Flex与Java交互 远程调用方式”指的是在Adobe Flex应用程序中与Java后端进行通信的技术。Flex是一种基于ActionScript的开源框架,用于构建富互联网应用程序(RIA),而Java是后端开发的常用语言。两者之间...
<endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/amf" class="flex.messaging.endpoints.AMFEndpoint"/> <class>com.example.MyJavaService</class> ``` 4. **调用...
1. **服务未启动或地址配置错误:** 确保Java后端服务正在运行,并且Flex应用中的`<mx:RemoteObject>`元素中的`endpoint`属性指向了正确的URL。 2. **路径不正确:** URL路径中的`WebContent`可能是错误的目录名,...
- 在Flex的`.mxml`文件中,使用`<mx:RemoteObject>`标签定义远程对象映射,设置destination、endpoint等属性。 - 使用ActionScript代码调用远程对象的方法,并处理结果和错误事件。 ```xml (event)" fault="get...
在Flex中,我们通常需要配置RemoteObject的endpoint,即服务的URL,以及服务方法的名称。 对于多文件上传,我们需要使用FileReference类。在用户选择多个文件后,我们可以遍历这些文件并逐个上传。每个...
<mx:RemoteObject id="myService" destination="myDestination" endpoint="http://{server.name}/flex/services"/> ``` 在这里,`id`是引用服务的名称,`destination`是服务器上的服务名,而`endpoint`则是服务器的...
- 在Eclipse+FLEX Builder中,创建Flex项目,选择"Flex Project",设置项目名称和存储位置,选择J2EE服务器类型,并启用"Use remote object access service"和"WTP"选项,以便于Flex与Java的远程对象交互。...
2. **配置上下文**:设置DispatcherServlet的上下文配置文件,用于加载Spring Bean定义。 **在Spring中配置Message Broker:** 1. **定义Message Broker**:使用Spring的Bean定义来创建Message Broker实例。 2. **...