1. Flex
<?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/mx" creationComplete="initApp(event)" minWidth="955" minHeight="600"> <fx:Declarations> <!-- Place non-visual elements (e.g., services, value objects) here --> </fx:Declarations> <fx:Script> <![CDATA[ import mx.controls.Alert; import mx.events.CloseEvent; import mx.managers.CursorManager; [Bindable] private var fileRefText:String; private const FILE_UPLOAD_URL:String = "http://localhost:8080/FileUpload/FileUploadServlet"; private var fileRef:FileReference = new FileReference(); private function initApp(event:Event):void { fileRef.addEventListener(Event.SELECT, onFileSelect); fileRef.addEventListener(ProgressEvent.PROGRESS, onProgress); fileRef.addEventListener(Event.COMPLETE, onFileUploadComplete); } private function browse(e:Event):void { fileRef.browse([new FileFilter("FlatFile", "*.rar")]); } private function onFileSelect(e:Event):void { Alert.show("Upload: " + fileRef.name + ", size: " + Math.round(fileRef.size) + " byte ?", "Upload", Alert.YES|Alert.NO, null, proceedWithUpload); } private function onFileUploadComplete(e:Event):void { CursorManager.removeBusyCursor(); Alert.show("File upload completed!"); } private function proceedWithUpload(e:CloseEvent):void { if(Alert.YES == e.detail) { CursorManager.setBusyCursor(); try { var urlRequest:URLRequest = new URLRequest(); urlRequest.url = FILE_UPLOAD_URL; urlRequest.method = URLRequestMethod.POST; fileRef.upload(urlRequest); } catch(error:Error) { CursorManager.removeBusyCursor(); Alert.show("Error occured during upload!"); } } } private function onProgress(e:ProgressEvent):void { var proc:uint = (e.bytesLoaded / e.bytesTotal) * 100; progressBar.label = "Current: " + proc + "%"; } ]]> </fx:Script> <s:VGroup> <s:HGroup> <s:TextInput text="{fileRefText}"/> <s:Button label="Browse" click="browse(event)"/> </s:HGroup> <mx:ProgressBar id="progressBar" label="Current: 0%" mode="manual"/> </s:VGroup> </s:Application>
2. Server
1) web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <servlet> <servlet-name>FileUploadServlet</servlet-name> <servlet-class>edu.xmu.servlet.FileUploadServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>FileUploadServlet</servlet-name> <url-pattern>/FileUploadServlet</url-pattern> </servlet-mapping> </web-app>
2) FileUploadServlet.java
package edu.xmu.servlet; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class FileUploadServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub System.out.println("doGet"); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub System.out.println("doPost"); } }
3. Tomcat Config
1) Tomcat dir: D:\Program Files\Tomcat 6.0\conf\server.xml
Pay attention to <Context docBase="..." path="..." reloadable="true">, the "C" in <Context> is in upper case!
2) Embed Tomcat into MyEclipse
4. Start server -> Upload File from Flex -> All done!
Comments:
1) Have to add crossdomain.xml in tomcat root folder: D:\Program Files\Tomcat 6.0\webapps\ROOT
<?xml version="1.0"?> <cross-domain-policy> <allow-access-from domain="*" /> </cross-domain-policy>
2) Use FireBug track request from flex, we sometimes got error 405 as below: Delete super.doPost(req, resp); or super.doGet(req, resp); in Servlet!
相关推荐
Flex4是Adobe公司推出的一个用于开发丰富互联网应用程序(Rich Internet Applications,简称RIA)的框架。RIA是指拥有桌面应用程序体验的网络应用程序,它能够提供响应快速、功能丰富并且更接近桌面软件用户体验的...
Adobe Flex 4: Training from the Source Volume 1 解压密码:肇庆学院主页地址(www开头的)
本书《Flex4:开发RIA应用程序》显然是针对初学者的入门教程,旨在帮助读者掌握Flex4的开发技能。 1. **Flex4简介**:Flex4是一个开源的开发框架,它提供了丰富的组件库、强大的数据绑定机制以及灵活的皮肤和样式...
标题中的“Flex-Java-file-upload.zip_flex”表明这是一个关于使用Adobe Flex与Java进行文件上传交互的教程。Flex是一种基于ActionScript的开放源代码框架,用于构建富互联网应用程序(RIA)。它允许开发者创建动态...
4. 发送请求:在Flex应用中,使用URLLoader或HTTPService组件向Servlet发送请求,请求数据通常封装在AMFChannel中。 5. 处理响应:Servlet接收到请求后,进行数据处理,然后通过AMFChannel返回数据。Flex客户端通过...
该书为adobe flex4认证的内部培训教材,以Adobe Flash Builder 4为基础培训,目前市面上的flex4的教材太少,这个发上来大家一起看看吧
从Flex3环境的搭建到一般开发情景下Flex3的界面操作,以及ActionScript语言的介绍、Flex中的数据绑定、如何通过E4X操作XML、一般数据显示控件的使用,再到Flex特有的特效运用、样式主题,以及程序的发布都有全面的...
Adobe Flex 2: Training from the Source,看到有不少人在找~~~ 这本没有上传完整,请需要的朋友下载《Adobe Flex 2: Training from the Source(改)》这本~~~
本话题聚焦于使用Flex4客户端和Servlet服务器端实现批量上传的方案。Flex4是一种强大的富互联网应用(RIA)开发框架,而Servlet是Java Web开发中的一个核心组件,常用于处理HTTP请求。下面将详细探讨Flex4和Servlet...
在IT行业中,Flex和Servlet是两种非常重要的技术,它们分别用于构建富客户端应用程序和服务器端逻辑。本篇文章将深入探讨这两个技术如何结合实现一个简单的实例。 Flex是一种基于ActionScript和Flash Player的开源...
标题和描述都聚焦于对比Flex3与Flex4之间的差异,这是一种Adobe系统提供的开源框架,用于构建跨平台的桌面和移动应用程序。Flex4,其代号为Gumbo,是在Flex3的基础上进行了重大升级,旨在改进用户体验和开发效率。...
这里我们关注的是如何将Adobe Flex与Java的Servlet技术相结合,实现用户友好的文件上传界面。Flex作为一个强大的富客户端开发框架,可以提供美观且交互性强的用户界面,而Servlet则是Java Web应用中的标准组件,用于...
在前端开发中,Flex布局(Flexible Box)是一种用于创建弹性盒模型的CSS3模块,它极大地增强了网页布局的灵活性。而当内容超出容器时,滚动条的出现是必不可少的。在Flex布局中,我们可以有几种不同的方法来实现滚动...
这个"Flex4.6+java+servlet上传图片例子+图片上传预览"的项目,结合了前端的Flex技术和后端的Java Servlet,为我们提供了一个完整的解决方案。下面将详细解释这个项目的各个组成部分及其工作原理。 首先,让我们来...
在IT行业中,FLEX与Servlet的结合是一种常见的前端与后端交互方式,特别是在构建富互联网应用程序(Rich Internet Applications,RIAs)时。本资源提供的"Flex调用Servlet连接数据库源码"是一个很好的学习实例,它...
在Flex编程中,XML是一种常用的数据格式,用于存储和传输数据。这个小例子展示了如何在Flex应用程序中将XML内容转化为文件并保存到本地系统。Flex是Adobe开发的一种开放源码的富互联网应用(RIA)框架,它使用...
Flex 4 demonstrates how to get started without getting bogged down in technical detail or academic edge cases. In this book, User Friendly cartoon characters offer commentary and snide side comments,...
### Flex 4:开发RIA应用程序知识点总结 #### 一、Adobe Flex 4 简介与平台背景 **Adobe Flash Platform 简介** - **技术简介:** Adobe Flash Platform 是一套用于创建交互式内容的技术栈,其中包括了Adobe Flex...
File outputFile = new File("/path/to/output.jpg"); ImageIO.write(image, "jpg", outputFile); ``` 在这个过程中,"SnapShot.mxml"可能是Flex应用程序的主文件,它包含了获取组件快照和发送到服务器的代码。...
### Flex 4:开发RIA应用程序知识点详解 #### 一、Adobe RIA开发技术认证与教材概述 - **Adobe RIA开发技术认证**:是Adobe公司为开发者提供的专业认证,旨在帮助开发者掌握创建丰富的互联网应用程序(RIA)所需的...