BlazeDS + Hibernet + Flex 开发Web应用
BlazeDS + Hibernet + Flex 开发Web应用
网上有关于集成BlazeDS和Flex的示例,但是大部分都是将客户端和服务器代码放置到一个项目,这种方式使我们在编码时容易产生混淆,并且也不利于大的项目的开发与管理。下面通过一个简单的例子演示一下,建立客户端和服务器端分离的,服务器端采用Hibernet+BlazeDS的Flex Web项目。希望对大家有所帮助。
一、开发环境准备
1. 安装MyEclipse8.0插件版、FlashBuider4插件版。注意,这里最好不要安装独立安装版本,要不开发的时候要打开几个IDE,很不方便;
2. 下载BlazeDS 3.2(更高版本也可以),并解压blazeds.war文件,备用;
3. 安装Tomcat 6.0 服务器;
4. 安装DBMS。这里我用的是MSSqlServer 2000。建立测试数据库flex,建立一个login表格,CREATE TABLE login (id char(10), name char(20), pwd char(20))。随便输入一点数据,做测试用。
二、J2EE服务器端开发
进入到Eclipse开发环境,切换到MyEclipse视图。
1. 新建Web Project,然后将blazeds.war解压后的WEB-INF、META-INF两个文件夹拷贝到项目中,覆盖原来的项目文件;
如果你使用的是blazeds3.2这些版本,那么等你把服务器所有工作完成的时候,你会发现客户端仍然连接不上,这是因为3.2版本的blazeds.war文件解压后的blazeds\WEB-INF\lib的目录下面缺少一个flex-rds-server.jar的文件,你可以解压其它更高版本的blazeds.war文件,然后将这个文件复制到相应的文件夹。
2. 修改web.xml文件。
1) 注释或者删除<!DOCTYPE行;
2) 将<display-name>BlazeDS</display-name>
修改为<display-name>JeeServer</display-name>
3) 加入以下内容
<servlet>
<servlet-name>RDSDispatchServlet</servlet-name>
<servlet-class>flex.rds.server.servlet.FrontEndServlet</servlet-class>
<init-param>
 
相关文档:
<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
width="550" height="400">
<mx:Script>
<![CDATA[
&n ......
这是Flex 4 SDK 新特性教程系列的第3章。本章介绍了Flex 4引入的MXML 2009命名空间以及Flex组件与命名空间映射的机制。
Flex 3的命名空间
Flex 3定义了唯一的MXML命名空间,即MXML 2006。在Flex Builder 3中声明MXML 2006命名空间的默认格式如下:
xmlns:mx="http://www.adobe.com/2006/mxml"
值得注意的是,很多初学者 ......
首先:确定数据库的编码为utf8,正常储存中文(用MySQL-Front查看中文是否正常)
然后:Services查询MySQL时使用"SET NAMES 'utf8'",且通过"amfphp/browser"运行看看是否中文,如果乱码则修改gateway.php文件,去掉 $gateway->setCharsetHandler("utf8_decode", "ISO-8859-1", "ISO-8859-1");
最后:运行Flex程序显 ......
在flex的开发当中,不可避免的要出错,但是flash的错误弹出真是太吓人了,一点都不友好。我们要怎么来屏蔽它,弹出我们想要的对话框呢?过程中有什么要注意的呢?
在java里面我们处理异常的方法就是try{}catch(){}finally{}。我尝试过这样的方法。
FileReference f=new FileReference();
会出错,但是用tr ......
在Java里面,两个整数相除得到是个整数,比如 int a = 28;
int b = 10;
a/b == 2; //true
在Flex中,上面Java代码将返回同样的结果。值得注意的是,如果使用的是Number类,则有所不一样了。下面的代码中,result的值为2.8。如果你不小心把返回的结果作为数组的索引去取值的话,那么什么结果都没有。
var a:Number = 28 ......