Flex入门(二)——Flex+BlazeDs+J2ee小实例

首先来简单介绍一下BlazeDS。 BlaseDS的核心功能包括RPC Services(远程过程调用服务) 和Messaging Service(消息服务)。BlazeDS是一个基于服务器的Java远程调用(remoting)和web消息传递(messaging)技术,使得后台的Java应用程序可以和运行在浏览器上的Flex应用程序能够互相通信。简单来说一个BlazeDS应用包括客户端(Flex或AIR应用程序)和一个服务端(J2EE程序)。BlazeDS在期间起着承上启下的作用,Flex和BlazeDS可以通过RemoteObject,HttpService,WebService三种。而Flex和Java通过BlazeDS通信最常用的是Object形式的,这样不仅能大大简化彼此的操作,而且这种通讯方式通过AMF(AMF协议是ActionMessage Format协议)大大提高了通信速度,提高了用户的体验度。

a

更多BlazeDS的知识,请看细细品味Flex——BlazeDS开发指南 和百科:BlazeDS百科

下边简单看一个搭建Flex+BlazeDS+J2EE的简单项目。

首先Flex项目和Web项目的整合方法有三种:1,各自独立开发;2Flex项目集成Web功能;3,Web项目集成Flex功能。其实开发出来的结果都是一样的,只不过途径方式不同,需要我们注意的是Flex的各种路径。这里看一下Flex项目集成Web功能的方式。

一,建立一个Flex项目:

Next目录相关设置,然后   Next,点击完成即可

生成项目的结构图:

二,添加J2EE功能:右击Flex项目,进行添加,选择J2EE5.0完成即可。

项目整合完毕,变成了J2EE的项目,看一下目录视图:

三,项目开发,建立一个Java类:

	package com.test;

	public class HelloJavaFlex {
		public String helloJavaFlex(String name){
			System.out.println("Java通信了");
			return "Hello" + name;
		}
	}

在WebRoot下的flex下services-config.xml中添加:

	<destination id="helloJavaFlex">
		<properties><source>com.test.HelloJavaFlex</source></properties>
	</destination>

在FlexHello.mxml中添加如下代码:

	<?xml version="1.0" encoding="utf-8"?>
	<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
		<mx:Script>
			<![CDATA[
			import mx.rpc.events.ResultEvent;
			import mx.controls.Alert;
			public function remotingHelloJavaFlex():void{
			var logNam: String = namInputTxt.text;
			remoteHello.helloJavaFlex(logNam);
			remoteHello.addEventListener(ResultEvent.RESULT, getRoHelloRes);
			}
			private function getRoHelloRes(e: ResultEvent) :void {
			Alert.show(e.result.toString());
			}
			]]>
		</mx:Script>

		<mx:RemoteObject destination="helloJavaFlex" id="remoteHello"></mx:RemoteObject>

		<mx:Button label="JAVA+FLEX通信" click="remotingHelloJavaFlex();" x="121" y="96" fontSize="12"
		width="209"/>

		<mx:Label text="姓名:" x="121" y="55" fontSize="12"/>
		<mx:TextInput id="namInputTxt" x="170" y="55"/>
	</mx:Application>

然后部署Tomcat,进行右击FlexHello.mxml进行访问,Flex和Java进行了通信。这就是最简单的flex+BlazeDS+J2ee进行通信。

Flex入门(二)——Flex+BlazeDs+J2ee小实例

时间: 2024-10-26 17:59:37

Flex入门(二)——Flex+BlazeDs+J2ee小实例的相关文章

Flex入门(一)——基本理论

Flash作为一款漂亮动画的产品,是大家所喜爱的,他可以给我们带来更好的视觉效果.但是如何使其很快很好的让Java程序员,.net程序员等所接受,并进行相关开发,Macromedia公司在2004年3月发布的,基于其专有的MacromediaFlash平台,它是涵盖了支持RIA(Rich Internet Applications)的开发和部署的一系列技术组合. 是一种类似于Jsp和Asp的前台技术.这篇博客简单介绍一下关于flex的一些理论知识. 一,是什么,干什么用,优势,劣势? Flex是

Flex入门(三)——微架构之Cairngorm

大家都知道我们在开发后台的时候,都会使用MVC,三层等分层架构,使后台代码达到职责更为分明单一,高内聚低耦合,例如,Dao层只是进行和数据库打交道,负责处理数据:Service(B层)只是进行逻辑判断处理,而Action则进行后台和前台页面的交互等.从而使程序更加容易管理,更加灵活,更加容易扩展,更加容易维护.也就是大家比较熟悉的Struts(SpringMVC)+Spring+Hibernate(Mybatis)等. 而作为前台Flex处理,也提供了类似的处理功能,想要达到的效果,也是代码分层

Socket通信入门小实例

客户端: public class Client { private int port = 8000; private String host = "localhost"; private Socket socket; public Client() throws UnknownHostException, IOException { socket = new Socket(host, port); } public void readFromUser() throws IOExcep

[ css 弹性盒子模型 align-item 属性 ] 弹性盒子模型flex布局中align-item属性讲解及实例演示的区别

说明: 本属性适用于:flex容器 定义flex子项在flex容器的当前行的侧轴(纵轴)方向上的对齐方式 实例: <!DOCTYPE html> <html lang="zh-cmn-Hans"> <head> <meta charset="utf-8" /> <title>align-items_CSS参考手册_web前端开发参考手册系列</title> <meta name="

flex入门--初学笔记1

环境:flashBuilder + eclipse 4.2 基本控件: 1 <mx:Script> 2 <![CDATA[ 3 import mx.controls.Alert; 4 public function showMsg(msg:String):void{ 5 mx.controls.Alert.show(msg); 6 } 7 ]]> 8 </mx:Script> 9 <mx:Panel title="常用控件" width=&qu

canvas实践小实例二 —— 扇形

俗话说:发图不留种,菊花万人捅!我这里想延伸一下:教学不给例,说你是傻逼!哎呀,还挺押韵,嘻嘻,开个玩笑! 我们都讲了四期API的知识了,估计大家看的也是枯燥的很啊,前面的小实例也是太简单,简直不解渴啊,但是也不能一口气就吃成一个胖子,下面再给大家来一个小实例,给大家提提神! 前面在讲画圆的时候,给大家留了一个思考,或者说是一个坑吧,就是如何来画一个扇形?我们知道画圆的方法是无法一下子就能画出一个扇形的,我当时提供了一个方法,不知道大家是否有印象,没印象没关系,我再复述一遍:就是如果我画了一个圆

mybatis入门(二)

mybatis入门(二) 探究sql语句的映射过程 要探究sql执行过程,先看一个简单的小例子 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <map

[WebGL入门]二十,绘制立体模型(圆环体)

注:文章译自http://wgld.org/,原作者杉本雅広(doxas),文章中如果有我的额外说明,我会加上[lufy:],另外,鄙人webgl研究还不够深入,一些专业词语,如果翻译有误,欢迎大家指正. 本次的demo的运行结果 立体的模型 这次稍微喘口气,开始绘制立体模型.这里说的[喘口气]是指本次的文章中没有出现任何新的技术知识点.只是利用到现在为止所介绍过的内容,来绘制一个立体的圆环体.到现在为止,只绘制了三角形和四边形,当然,在三维空间中绘制简单的多边形也没什么不对,但是缺点儿说服力.

HTML小实例:通过PHP调用C++

一.在本地服务器目录下新建一个 test 文件夹,在此文件夹中新建文件: 1. cpp.html <!DOCTYPE html> <html> <head> <title>C++测试</title> </head> <body> <form method="post" action="cpp.php"> <div> <p>请测试文字,以空格分隔:&