- 浏览: 7325906 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (1546)
- 企业中间件 (236)
- 企业应用面临的问题 (236)
- 小布Oracle学习笔记汇总 (36)
- Spring 开发应用 (54)
- IBatis开发应用 (16)
- Oracle基础学习 (23)
- struts2.0 (41)
- JVM&ClassLoader&GC (16)
- JQuery的开发应用 (17)
- WebService的开发应用 (21)
- Java&Socket (44)
- 开源组件的应用 (254)
- 常用Javascript的开发应用 (28)
- J2EE开发技术指南 (163)
- EJB3开发应用 (11)
- GIS&Mobile&MAP (36)
- SWT-GEF-RCP (52)
- 算法&数据结构 (6)
- Apache开源组件研究 (62)
- Hibernate 学习应用 (57)
- java并发编程 (59)
- MySQL&Mongodb&MS/SQL (15)
- Oracle数据库实验室 (55)
- 搜索引擎的开发应用 (34)
- 软件工程师笔试经典 (14)
- 其他杂项 (10)
- AndroidPn& MQTT&C2DM&推技术 (29)
- ActiveMQ学习和研究 (38)
- Google技术应用开发和API分析 (11)
- flex的学习总结 (59)
- 项目中一点总结 (20)
- java疑惑 java面向对象编程 (28)
- Android 开发学习 (133)
- linux和UNIX的总结 (37)
- Titanium学习总结 (20)
- JQueryMobile学习总结 (34)
- Phonegap学习总结 (32)
- HTML5学习总结 (41)
- JeeCMS研究和理解分析 (9)
最新评论
-
lgh1992314:
[u][i][b][flash=200,200][url][i ...
看看mybatis 源代码 -
尼古拉斯.fwp:
图片根本就不出来好吧。。。。。。
Android文件图片上传的详细讲解(一)HTTP multipart/form-data 上传报文格式实现手机端上传 -
ln94223:
第一个应该用排它网关吧 怎么是并行网关, 并行网关是所有exe ...
工作流Activiti的学习总结(八)Activiti自动执行的应用 -
ZY199266:
获取不到任何消息信息,请问这是什么原因呢?
ActiveMQ 通过JMX监控Connection,Queue,Topic的信息 -
xiaoyao霄:
DestinationSourceMonitor 报错 应该导 ...
ActiveMQ 通过JMX监控Connection,Queue,Topic的信息
项目中要求上传文件同时获取上传文件的信息并做日志等要求,我们上传的同时提供商的授权文件和公司的授权文件,所以传入fileType字段表示上传的授权文件类型,在写日志使用。同时在组件显示上传文件的信息.
/**
* 选择授权文件,并上传
*/
private function uploadFile(fileType:int):void {
//定义文件上传组件
var file:FileReference = new FileReference();
file.addEventListener(Event.SELECT, selectHandler);
file.addEventListener(Event.CANCEL, cancelHandler);
file.addEventListener(DataEvent.UPLOAD_COMPLETE_DATA, uploadCompleteDataHandler);
file.addEventListener(IOErrorEvent.IO_ERROR, ioErrerHandler);
var ff:FileFilter = new FileFilter("授权文件", "*.*");
var fileFieldName:String = "proof";
var FILENAME:String="";
var FILETYPE:int=fileType;
file.browse([ff]);
/**
* 选中文件处理
*/
function selectHandler(event:Event):void {
//保存相对路径
var variables:URLVariables = new URLVariables();
var urlRequest:URLRequest = new URLRequest(AppGlobal.serverAppUrl + AppGlobal.FILE_UP_URL);
variables.path = AUTH_FILE_SAVE_PATH;
urlRequest.data = variables;
file.upload(urlRequest, fileFieldName);
}
/**
* 取消
*/
function cancelHandler(event:Event):void {
removeFileEventListener();
}
/**
* 完成上传并接受返回数据处理
*/
function uploadCompleteDataHandler(event:DataEvent):void {
removeFileEventListener();
var serverFileName:String = null;
//服务器返回数据xml,
var properties:XML = new XML(event.data);
var xmlList:XMLList = properties.children();
for each (var entry:XML in xmlList) {
if (fileFieldName == entry.attribute("key").toString()) {
serverFileName = entry.descendants().toString();
}
}
if (serverFileName == null) {
return;
}
FILENAME=serverFileName;
//更改数据库文件的信息
updateAuthFile();
}
/**
* 出错处理
*/
function ioErrerHandler(event:IOErrorEvent):void {
removeFileEventListener();
trace(event.text);
MessageBox.showMsg("传输文件出错!", "错误");
}
/**
* 移除事件监听器
*/
function removeFileEventListener():void {
file.removeEventListener(Event.SELECT, selectHandler);
file.removeEventListener(Event.CANCEL, cancelHandler);
file.removeEventListener(DataEvent.UPLOAD_COMPLETE_DATA, uploadCompleteDataHandler);
file.removeEventListener(IOErrorEvent.IO_ERROR, ioErrerHandler);
ff = null;
file = null;
}
/***
* 更改授权文件的数据库信息
*
*/
function updateAuthFile():void
{
//RemoteDataService 自定义的封装远程数据访问对象的类RemoteDataService
RemoteDataService.execute(updateAuthFileString,[FILENAME,orderNo,FILETYPE],executeResult);
}
function executeResult(result:int):void {
var num:int = result;
if(num>0)
{
var auth:Object=new Object();
auth.FILE_NAME=FILENAME;
if(FILETYPE==OfflineConstant.COMPANY_AUTHORIZATION_FILE)
{
createGridRow(auth,COMPANYAUTHFILEDG);
}else{
createGridRow(auth,SUPPLYAUTHFILE);
}
}else{
MessageBox.showMsg("文件上传失败!", "提示");
}
}
}
后台Java代码如下:
package servlet;
import java.io.File;
import java.io.IOException;
import java.util.*;
import javax.servlet.ServletException;
import javax.servlet.http.*;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
public class FileService extends HttpServlet
{
public static String getRootPath()
{
return rootPath;
}
public static void setRootPath(String rootPath)
{
rootPath = rootPath;
}
public FileService()
{
}
public void destroy()
{
super.destroy();
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
String path = request.getParameter("path");
Properties props = new Properties();
boolean isMultipart = ServletFileUpload.isMultipartContent(request);
if(isMultipart)
{
org.apache.commons.fileupload.FileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
upload.setHeaderEncoding("utf-8");
upload.setFileSizeMax(0x400000L);
List items = null;
try
{
items = upload.parseRequest(request);
}
catch(FileUploadException e1)
{
throw new ServletException(e1.getMessage());
}
File pathFile = new File((new StringBuilder(String.valueOf(rootPath))).append(File.separator).append(path).toString());
if(!pathFile.exists())
pathFile.mkdirs();
for(Iterator iter = items.iterator(); iter.hasNext();)
{
FileItem item = (FileItem)iter.next();
if(!item.isFormField())
{
String fieldName = item.getFieldName();
String fileName = item.getName();
String extension = "";
int lastIndexOfDot = fileName.lastIndexOf('.');
if(lastIndexOfDot != -1)
{
int fileNameLength = fileName.length();
extension = (new StringBuilder(".")).append(fileName.substring(lastIndexOfDot + 1, fileNameLength)).toString();
}
String serverFileName = (new StringBuilder(String.valueOf(UUID.randomUUID().toString()))).append(extension).toString();
serverFileName = serverFileName.toLowerCase();
File file = new File((new StringBuilder(String.valueOf(pathFile.getPath()))).append(File.separator).append(serverFileName).toString());
try
{
item.write(file);
}
catch(Exception e)
{
throw new IOException(e.getMessage());
}
props.put(fieldName, serverFileName);
}
}
}
props.storeToXML(response.getOutputStream(), null);
}
public void init()
throws ServletException
{
rootPath = getInitParameter("rootPath");//在web.xml中添加配置信息
}
private static final long serialVersionUID = 0xef3005bb45828b8fL;
private static String rootPath;
}
评论
通过flexHTTP的相关组建访问,访问的时候,同时访问flex中blaze的http配置服务service,访问部署好的web容器.
这个一种Flex 通过Http方式访问java的demo
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
这几行为啥出错呢?cannot be resolved
有两种可能,第一种你的commons-fileupload版本和我的不一致.
第二种你的项目没有编译.
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
这几行为啥出错呢?cannot be resolved
发表评论
-
flex 中As3Commons的使用學習
2009-10-15 12:53 3718學習Java的人,知道java中反射的强大, ... -
flex的国家化的应用
2009-09-23 08:59 2087在项目中需要使用发送短信模板的功能的,根据主题不同,模板不同, ... -
flex的沙箱问题
2009-09-14 17:14 5446在flex与google的地图整合中发现,点击了goog ... -
Flex 常用技巧
2009-09-04 13:00 2570flex是一种异步请求的技术,如果要实现同步必须在传递函 ... -
Flex 開發Google地圖
2009-08-24 13:16 24351 .获取googe的key 2.下载google的fle ... -
查询之order by,group by和having的使用
2009-08-08 15:48 4713在项目中查询常驻酒店的中住的次数最多的前10个酒店: 代码如 ... -
objectProxy的监控对象应用
2009-08-08 13:46 2671在项目中查询根据一个字段发生实现需要特殊的功能,作出相应的动作 ... -
Flex 依赖注入
2009-08-08 13:41 2086了解依赖注入 众所周 ... -
Flex 与外部的数据通信(HTTPService,URLLoader和URLRequest)
2009-08-08 13:36 7424ActionScript 3.0中提供的数据加载请求类主要是H ... -
flex 数据绑定
2009-08-08 13:31 23999.2.1 函数和类级别的绑定 [Bindable]标签打使 ... -
Flex中Entity对象与Display对象之间的数据双向动态绑定
2009-08-08 13:27 2439flex项目中对象的和组 ... -
学习ActionScript 3.0的新特点
2009-08-06 13:05 1998ActionScript3.0 是一种类型 ... -
理解 Flex itemRenderer - 第 1 部分: 内联渲染器
2009-08-05 16:37 3130Flex 提供许多控制, 它们可以按不同方式显示大量数据。Li ... -
flex 中类似Google的提示下拉菜单实现
2009-08-01 16:28 5408项目中使用类似Gooogle输入提示菜单的实现如下 ... -
针对Flex中组件的扩展的应用开发
2009-08-01 16:04 2861在项目中使用一个自定义的CheckboxGroup组件继承自C ... -
Flex类似Google搜索提示的两种做法思路
2009-08-01 15:52 2674做了个简单的搜索提示 ... -
Flex中直接获取某个组件的对象
2009-08-01 15:47 2446Flex中直接获取某个组件的对象方案1: 遍历这些butto ... -
flex 查看类的各种数据的权限
2009-08-01 15:18 1860查看类的一些属性的信息:可读,可写,可读可写。 ... -
flex中getDefinitionByName 函数的使用
2009-08-01 12:40 6731在项目中自定义一个CheckboxGroup,这个控件里面 ... -
Flex 学习中数据类型必须注意的几点
2009-08-01 12:36 2233在字符串转换为int类型必须使用 最好如下: var a:i ...
相关推荐
本方案主要探讨了如何在Flex前端和BlazeDS中间件与Java后台之间实现有效的数据分页。 Flex是一种基于ActionScript和MXML的开放源代码框架,用于构建富互联网应用程序(RIA)。它提供了丰富的用户界面组件库,包括...
在Flex和Java集成开发环境中,实现文件图片上传功能是一项常见的需求。这个功能主要涉及客户端的用户界面交互和服务器端的数据处理。在这个场景中,我们利用Adobe Flex作为前端UI框架,结合Java后端来处理文件上传...
标题中的“Flex拍照并上传到java后台——未调试成功”表明这是一个关于使用Adobe Flex技术进行拍照功能实现,并将拍摄的照片上传到Java后端服务器的项目,但目前该项目可能在调试阶段遇到了问题。Flex是一种用于创建...
标题"flex_java实现多文件上传_超全"暗示我们将探讨如何使用Flex作为前端界面,与Java后台进行交互,以支持用户同时上传多个文件的功能。这通常涉及到前端的表单设计、文件选择控件、进度显示以及后台的数据处理和...
Flex是一种基于ActionScript 3.0的开源...以上就是使用Flex实现文件上传及进度显示的关键知识点,这些内容涵盖了从用户交互到后台处理的整个流程。在实际开发中,还需要根据项目需求和具体技术栈进行适当的调整和优化。
在“flex 与java后台整合 PPT”这个主题中,我们将探讨如何将Flex前端与Java后端集成,以实现高效的数据通信和应用交互。Flex与Java的整合主要依赖于AMF(Action Message Format)协议,它允许Flex客户端与Java...
本话题将详细探讨“Flex+Java多文件上传”这一技术实现,结合提供的标签“源码”和“工具”,我们将深入理解如何利用Adobe Flex(一种RIA开发框架)与Java后台进行协同工作,实现高效的文件上传功能。 首先,Flex是...
这里我们关注的是如何将Adobe Flex与Java的Servlet技术相结合,实现用户友好的文件上传界面。Flex作为一个强大的富客户端开发框架,可以提供美观且交互性强的用户界面,而Servlet则是Java Web应用中的标准组件,用于...
1. **Flex组件**:在Flex中,你可以使用`FileReference`组件来实现文件选择和上传功能。用户通过这个组件可以选择本地文件,然后触发上传操作。 2. **事件监听**:需要监听`FileReference`对象上的`select`和`...
通过Flash Builder或IntelliJ IDEA等集成开发环境(IDE),开发者可以构建Flex4应用,并与Java后台进行通信。 Java作为服务器端语言,有着广泛的应用场景,如Spring、Hibernate、Struts等框架都为Java Web应用提供...
开发者可以通过阅读这份代码来理解如何在Flex中实现文件选择、事件监听、以及与Java服务器端的通信机制。源代码分析将有助于深入理解整个上传流程,包括错误处理和进度更新等细节。 总的来说,这个Flex图片上传实例...
本实例是Flex 4.0与Java后台通信的一个典型应用,主要目的是帮助初学者理解和掌握这两者之间的数据交换机制。运行说明通常会涵盖以下内容: 1. **环境配置**:首先,确保你已经安装了Adobe Flex Builder或类似的IDE...
2. `RemoteObject`连接Java后台:在Flex中,`RemoteObject`组件是与后端服务通信的关键。你需要配置`RemoteObject`的`endpoint`属性指向Java服务的URL,并且定义与Java服务对应的接口方法。例如,你可以创建一个名为...
7. **服务器端处理**:在Java环境下,通常使用Servlet或者Spring MVC等框架来接收和处理Flex上传的文件。服务器端需要解析Multipart/form-data请求,将接收到的文件保存到指定位置,并返回确认信息。 8. **安全性...
在文件上传场景中,Flex可以设计出直观的文件选择和上传界面,与后台的Java服务无缝对接,通过AMF(Action Message Format)或其他协议进行通信。 使用Flex+Java上传开发工具包,开发者可以构建出以下特性: 1. **...
在Flex中,我们通常使用Service组件(如RemoteObject、WebService或HTTPService)来调用Java后台服务。这些服务组件可以配置到特定的URL,处理HTTP请求和响应,将AMF数据转换为Flex可以理解的对象。 5. **Java ...
本篇文章将详细介绍如何在Flex中实现文件上传、预览、下载功能,并解决中文文件名在这些操作中可能出现的乱码问题。 首先,文件上传是通过HTTP的POST请求来实现的。在Flex中,我们可以使用`URLLoader`类来发送数据...
《基于Java+Flex实现的聊天程序详解》 在信息技术领域,构建实时的在线聊天系统是一项常见的挑战。本项目“基于Java+Flex实现的聊天程序”提供了一种有效的解决方案,它结合了Java的强大后端处理能力和Flex的富...