java flex是什么,java程序员学习Flex和BlazeDS有什么好处

java程序员学习Flex和BlazeDS有什么好处

2、 复制JAR文件到你的项目lib目录:cp -R WEB-INF/lib /sodaSample。

好处八:可以在现有的Java应用程序上使用

再soda的例子中,假设你想要暴露现有的soda服务以便远程的Flex应用程序可以与之链接。在现有的应用程序上创建BlazeDS的基本步骤如下:

1、 在WEB-INF/flex目录下编辑BlazeDS配置文件。

2、 在应用程序上web.xml上规定MessageBrokerServlet 以及session listener。

创建BlazeDS以后,你需要增加你的soda服务到BlazeDS远程配置文件,它允许从Flex 客户端访问soda服务。通过规定一个目的地以及一个或者更多的数据传送渠道来实现添加。基础的AMF渠道在服务器.xml文件中被定义。通过这个定义在远程config.xml 中识别你的目的地:

< destination id="sodaService" channels="my-amf">

< properties>

< source>com.gorillalogic.sodaSample.SodaService< /source>

< /properties>

< /destination>

通过在远程配置文件中定义端口,你可以从Flex客户端访问任何一个Java服务。

传递Java数据模型到Flex客户端,在你的脚本class中定义两者之间的映射:

[Bindable]

[RemoteClass(alias="com.gorillalogic.sodaSample.SodaModel")]

这段代码显示Flex,当远程服务访问返回Java SodaModel的结果把其映射到你的SodaModel。Flex客户端的示例显示如何访问这个Java服务。访问返回一个odaModel,根据你的命令:

public function callSodaService():void {

var sodaType:String = type.text;

var sodaCount:int = parseInt(cnt.text);

var flag:Boolean = preOpen.selected;

remoteObject.getSoda(sodaType, sodaCount, flag);

}

private function resultHandler(event:ResultEvent):void {

var sodaModel:SodaModel = event.result as SodaModel;

}

Flex从变化的结果中返回你的结果,映射到你的SodaModel上。我不在这里讲述细节,但是一个需要说的细节是在汇编配置中指定services-config.xml,像以下所写:

-locale en_US -services=/nsource/sodaSample/web/WEB-INF/flex/services-config.xml -context-root /

如果不这样,你的Flex客户端将无法找到Java服务。同样的方法,你可以从客户端传递一个对象返还到服务。比如,你可以传递空的soda model返还到客户端。

好处九:你可以扩展BlazeDS以及使用Java对其进行修改

假设你决定当soda服务器被访问的任何时候,要增加一个特别的logging。你可以扩展Java编辑者的标准来增加logging。

首先,增加Java类别扩展JavaAdapter:

import flex.messaging.services.remoting.adapters.JavaAdapter.

public class TimingJavaAdapter extends JavaAdapter {

Then, overload the invoke() method:

public Object invoke(Message message) {

RemotingMessage remotingMessage = (RemotingMessage) message;

String operation = remotingMessage.getOperation();

String destination = remotingMessage.getDestination();

Logger.info("calling " + operation + " on destination " + destination);

Object data = super.invoke(message);

return data;

}

使用这种方法,你可以看见即将要进行的操作以及访问的目的地。你可以使用这种简单的hook,比如说你可以测试对服务器多长时间的访问是最有意义的。

好处十:你可以从HTML 和JSP访问BlazeDS

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值