• 系统整体配置环境
      Flex2.0+Tomcat5.5+Windows XP

      必备软件
      1)JDK1.5 下载
      2)Tomcat5.5 下载
      3)Flash Player 9 下载
      4)Flex Data Services 2 下载

      安装步骤
      首先安装JDK1.5,并设置好JAVA环境变量,设置JAVA_HOME为你的JDK的安装目录;
      安装tomcat5.5,安装完毕后启动tomcat,并测试下是否可以正常运行;
      安装Flash Player9,然后安装FDS(Flex Data Service2),可以安装在任何目录下,找到FDS的安装目录下有三个war文件:flex.war(开发的基础环境),flex-admin.war(flex的管理端),samples.war(示例程序),这些war都是java EE的打包应用程序;
      将flex.war文件拷贝到Tomcat的安装目录下的webapps目录下,启动tomcat,其将自动解压缩war文件,从tomcat终端可以看到flex启动信息如下:
      ......
      11/18 20:05:26 INFO Loading configuration file D:\Projects\flex\build\WEB-INF\fl
      ex\flex-webtier-config.xml
      11/18 20:05:26 INFO Loading configuration file D:\Projects\flex\build\WEB-INF\fl
      ex\flex-config.xml
      .......
      访问地址:http://localhost:8080/flex
      如果想看看flex自带的sample程序如何,只需将samples.war拷贝到上述的webapps目录下,并重启tomcat即可。访问地址为:http://localhost:8080/sample。

      测试Flex环境
      我们以flex.war为例:在tomcat安装目录下的webapps/flex,创建一个mxml文件,命名为hello.mxml,内容如下:
      <?xml version="1.0" encoding="utf-8"?>
      <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
       <mx:Panel x="98" y="23" width="250" height="200" layout="absolute" title="hello world">
        <mx:Label text="hi,welcome to flex world!"/>
       </mx:Panel>
      </mx:Application>
      可以直接运行,访问地址:http://localhost:8080/flex/hello.mxml, 让fds自己解析编译mxml文件。
      运行结果如下图:
      运行结果

    • 随着互联网的快速发展,人们对网络应用的兴趣逐步在提高,迫切需要能够构造一个“富客户端”:能够用HTML能实现的接口更加健壮、反应更加灵敏和更具有令人感兴趣的可视化特性,而且能够在互联网上以一种象使用Web一样简单的方式来部署富客户端程序,而且能够随着系统的升级而享用更多便捷的高效的体验。

      而这,是一个趋势,不久的将来必定要成为主流。

      当前,基于HTML的应用程序之所以变得流行是由于应用系统的部署成本低、结构简单,且HTML易于学习和使用。很多用户和开发人员都乐于放弃由桌面计算机带来的用户界面改进,来实现对新数据和应用系统的快速访问。与丧失一些重要的UI功能相比,基于Web的方式所带来的好处要更大得多。

      但是,随着用户需求的提升,在某些互联网应用方面,复杂的应用可能需要多次提取网页来完成一个事务处理。这往往会导致交互响应速度慢,让人无法接受。甚至有可能需要多次操作才能得到用户最终结果。之所以如此,用户对交互体验的需求上升才导致AJAX(Asynchronous JavaScript And XML)的迅速流行。但JavaScript脚本引擎的脆弱性必将注定这只是RIA的一个中间过渡方式。

      在一个典型的RIA应用体系结构(如下图)中,XML通常被用作数据传输的格式,有时也被用来描述窗体的布局。客户端可以保持与数据源的连接,这样服务器能够实时地对客户端数据进行更新。

      http://realsky.blogbus.com/files/1163249296.gif

      用于富客户端(RIA)的常用技术有:
      1.JavaScript/Ajax
      2.JAVA(这里指的是Applet或者是Java的应用程序)
      3.Flash/Flex
      4.XUL,等等。

      而我们该如何选择RIA开发环境呢?

      而基于以上开发技术实现RIA的应用的解决方案有上百种之多,通常情况下我们很容易失去重点并判定错误。

      Marc Domenig 给出了他的答案Rich Internet Applications and AJAX - Selecting the best product)。

      如下是他对选择RIA还是Ajax的判定图。

      http://realsky.blogbus.com/files/1163252447.gif

      首先需要对自己将要开发的项目回答几个问题,这样才能做出正确的选择。

      1)您将开发的项目是简单的用户界面需求?
      如果您回答是,那没有选择,HTML将是最快捷便利的手段。简单的HTML也能够完成绝大多数用户的交互需求。

      但如果想提供用户UI体验,您需要考虑下如下RIA技术特性:
      局部屏幕更新;
      异步通讯;
      服务器端推送数据;
      支持直接操作的部件;
      多窗口应用;
      模式对话框;
      菜单;
      键盘导航,等等。
      RIA在Web应用体系结构中提供富客户端操作体验,其目标是整合桌面客户端和WEB应用程序的优势,而常用的开发技术就是如上提到的Java,JavaScript,Flash/Flex。该如何选择呢?这就需要您回答第二个问题了。

      2)全面应用性?工业级应用?还是漂亮人性化的用户操作体验?
      AJAX既不是一个产品也不是一项新技术,但它确实是RIA体系中的一个新的分支。它是基于JavaScript,XML和其他技术的一项整合操作。
      是否采用Ajax需要考虑如下几个问题:
      是否需要面对市场上繁乱复杂的浏览器和操作系统;
      AJAX所封装和支持的UI组件是否能够满足您的系统需求;
      对系统操作的健壮性需求;(如果是高要求,不建议使用)。

      如果您开发的系统需要的是工业级应用需求,Marc Domenig 的答案是采用Java。

      如果您开发的系统更需要漂亮人性化的用户操作体验,Marc Domenig 建议采用Flash。

      Flash是一个已经成熟的商业产品,它可以在Web网页中引入交互式的图形界面。最近经过升级后,新版本包含了建立窗体风格的应用程序的功能。尽管Flash作为一个在Web上最广泛部署的前端技术还有争议(取决于所选用的Flash Player版本),但据称已经有98%以上的桌面系统都支持Falsh。由于用来创建动画式图形的Flash工具其功能十分强大和是可视化的(与之相反其它技术要求进行低级的图形编码),所以图形设计人员使用起来十分得心应手。Flah采用的脚本语言是ActionScript--ECMAScript 1.5的一个变种,该脚本语言又被称为JavaScript。Flex产品对Flash增加了一个XML描述语言,使得可以编译用户界面,并且能够用Flash Player来随时进行描述。Flex使得传统的开发机构能更好地了解和使用Flash。Flex和Flash的最大缺点在于对XML和Web服务等标准的支持很有限,而且作为应用开发工具的环境还不大成熟。Flex和Flash的优点在于它可以很容易的用来创建复杂的动画式显示,以及可以使用第三方控件。

      而对于JAVA程序员来说,可以把所有的有关企业级的应用,包括数据库操作,消息中间件,事务处理等都交给JavaEE去完成。RIA只是用于提高用户体验,提高可操作性的一种方式。我们可以根据开发系统的用户需求去做正确的选择。

    • 开篇

      2006-11-11

      自因工作变动,对RIA也日渐痴迷,又因工作变动,而对RIA方面的学习也断断续续。

      最近工作稍有闲空,开始继续RIA之旅。

      在RIA(Rich Internet Application)的摸索过程中,唯独对Flex情有独钟。