本文列述了13个Java程序员应当学习Flex和BlazeDS的理由,讨论 了为什么Flex结合BlazeDS是开发RIA的最佳组合之一。无 论是高度交互的网站还是以Java为后端的企业应用,这项组合都是最佳选择之一。更重要的是,这项组合能同时为开发员和企业带来高回报(ROI)。
在阐述Java程序员应当学习BlazeDS的13条理由时,我以一个假想的苏打分派系统来展示如何让已有的Java程序转变为RIA应用。通过这个例子,我同时还会讲解到BlazeDS在已有Java应用或新建Java应用中的多种不同用法。
理由一:开源
Flex软件开发工具箱(SDK)的核心是个开源框架,专门用来开发、维护那些在不同浏览器、不同操作系统下界面都相同的RIA应用。Flex发布 采用的是Mozilla公共许可证(Mozilla Public License)。编译后的Flex应用在Adobe Flash平台下运行。
BlazeDS是连接Flex和Java的索桥,是项针对远程调用和消息传递的开源技术。在Java应用服务器上,它以servlet的形式存在, 因此可以在任何标准Java网络应用中运用它。BlazeDS以LGPL(Lesser GNU Public License)公共许可证书发布。在发布BlazeDS的同时,Adobe还公布了AMF(ActionScript Message Format)规格说明,BlazeDS、Java和Flex客户端间以这种简 ......
本文列述了13个Java程序员应当学习Flex和BlazeDS的理由,讨论 了为什么Flex结合BlazeDS是开发RIA的最佳组合之一。无 论是高度交互的网站还是以Java为后端的企业应用,这项组合都是最佳选择之一。更重要的是,这项组合能同时为开发员和企业带来高回报(ROI)。
在阐述Java程序员应当学习BlazeDS的13条理由时,我以一个假想的苏打分派系统来展示如何让已有的Java程序转变为RIA应用。通过这个例子,我同时还会讲解到BlazeDS在已有Java应用或新建Java应用中的多种不同用法。
理由一:开源
Flex软件开发工具箱(SDK)的核心是个开源框架,专门用来开发、维护那些在不同浏览器、不同操作系统下界面都相同的RIA应用。Flex发布 采用的是Mozilla公共许可证(Mozilla Public License)。编译后的Flex应用在Adobe Flash平台下运行。
BlazeDS是连接Flex和Java的索桥,是项针对远程调用和消息传递的开源技术。在Java应用服务器上,它以servlet的形式存在, 因此可以在任何标准Java网络应用中运用它。BlazeDS以LGPL(Lesser GNU Public License)公共许可证书发布。在发布BlazeDS的同时,Adobe还公布了AMF(ActionScript Message Format)规格说明,BlazeDS、Java和Flex客户端间以这种简 ......
一.通过js访问Flex组件
1.准备工作。先建立Flex工程 :fademo,并放置一个文本框:txtName。做完后代码应该类似于这个样子:
view plaincopy to clipboardprint?
·········10········20········30········40········50········60········70········80········90········100·······110·······120·····&m ......
一.通过js访问Flex组件
1.准备工作。先建立Flex工程 :fademo,并放置一个文本框:txtName。做完后代码应该类似于这个样子:
view plaincopy to clipboardprint?
·········10········20········30········40········50········60········70········80········90········100·······110·······120·····&m ......
首先在fademo.mxml中声明一个button,并添加一个btnClick方法:
view plaincopy to clipboardprint?
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/halo" minWidth="0" minHeight="0" width="400" height="300" xmlns:bridge="bridge.*">
<fx:Declarations>
<bridge:FABridge/>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<fx:Script>
<!--[CD ......
首先在fademo.mxml中声明一个button,并添加一个btnClick方法:
view plaincopy to clipboardprint?
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/halo" minWidth="0" minHeight="0" width="400" height="300" xmlns:bridge="bridge.*">
<fx:Declarations>
<bridge:FABridge/>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<fx:Script>
<!--[CD ......
flex整合spring也有很多的例子,其实有很多例子很复杂。我在这就给大家介绍个最简单的,很实用。
说明下:flex完全可以代替struts,下面的例子能证明。有人会问了,和其他框架怎么样整合。spring都能整合了,其他框架你要不会整合我也都无语了。
不多说了,看代码就知道简单不!
flex--sdk 3.2以上
jdk 1.5 以上
spring 2.5.6 以
负责Java通信插件 blazeDS 或 lcds
案例下载地址
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<display-name>flex</display-name>
<description>LiveCycle Data Services Application</description>
<context-param>
<param-name>flex.class.path</param-name>
<param-value>
/WEB-INF/flex/hotfixes,/WEB-INF/flex/jars
</param-value>
</context-param>
<!-- Http Flex Session attribute and binding listener support -->
<listener&g ......
flex弹出对话框示例程序分为两部分:Main.mxml和SimpleTitleWindowExample.mxml,其中Mail.mxml为主程序文件,SimpleTitleWindowExample.mxml为对话框文件,可以通过修改SimpleTitleWindowExample.mxml文件来修改对话框上的组件。
Main.mxml
<?xml version="1.0" encoding="utf-8"?>
<!-- Main application to demonstrate TitleWindow layout container. -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" fontSize="12" width="1024" height="768" layout="absolute">
<mx:Script>
<![CDATA[
import mx.managers.PopUpManager;
private function showAlertWindow():void{
var myPanel:SimpleTitleWindowExample = SimpleTitleWindowExample(PopUpManager.createPopUp(this, SimpleTit ......
1. 最简单的警告窗口
你需要先导入Alert类: import mx.controls.Alert;
然后在想要弹出警告的时候使用:
Alert.show(“你确定要退出系统吗?”,“确认”,Alert.YES|Alert.NO,null,logout)
参数说明:第一个参数是要显示的文本,第二个参数是窗口的标题,这两个参数是最经常用的。第三个参数是按钮,默认是两个:YEW 和 NO,当然你也可以自定义,比如Alert.CANCEL,第四个参数是父窗口,默认为null。第五个参数是窗口关闭后调用的函数名,如果你想要在点击确定之后触发什么事件,就需要定义这个参数。这里我要调用logout,请注意,不要在这里写logout()。(没有括号)logout 函数如下:
private function logout(event:CloseEvent):void
{
if(event.detail == Alert.YES)
{
// 具体操作
}
}
因为这个函数是触发的,所以参数是一个CloseEvent 。“event.detail == Alert.YES” 这行代码判断点击的是不是确定按钮。CloseEvent 中的 detail 属性专门判断点 ......