资源简介
具体博客地址:
http://blog.csdn.net/hncdyj/article/details/8722297
代码片段和文件信息
package org.activiti.demo.action;
import java.io.File;
import javax.annotation.Resource;
import org.activiti.demo.base.baseAction;
import org.activiti.demo.engine.ProcessEngineCore;
import org.activiti.demo.utils.UnZipFile;
import org.apache.commons.io.FileUtils;
import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Namespace;
import org.apache.struts2.convention.annotation.ParentPackage;
import org.apache.struts2.convention.annotation.Result;
import org.slf4j.LoggerFactory;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
import ch.qos.logback.classic.Logger;
/**
*
* @title: FileUploadAction.java
* @Description: org.activiti.demo.action
* @Package org.activiti.demo.action
* @author hncdyj123@163.com
* @date 2013-3-14
* @version V1.0
*
*/
@SuppressWarnings(“serial“)
@Controller(“fileUploadAction“)
@Scope(“protype“)
@Namespace(“/activiti/upload“)
@ParentPackage(“json-default“)
public class FileUploadAction extends baseAction {
/** 日志对象 **/
private static final Logger logger = (Logger) LoggerFactory.getLogger(FileUploadAction.class);
/** 日志对象 **/
private File template;
/** 文件名 **/
private String templateFileName;
@Resource(name = “processEngineCore“)
private ProcessEngineCore processEngineCore;
/**
* 资源文件上传
*
* @return
*/
@Action(value = “upload“ results = { @Result(type = “json“ params = { “root“ “result“ “contentType“ “text/html“ }) })
public String upload() {
try {
if (template == null) {
return ERROR;
}
if (validateFileSize(template)) {
this.setMessage(“文件超过5M!“);
return SUCCESS;
}
// 将上传的文件拷贝到临时目录中
copyFileToTempFolder(System.getProperty(“user.dir“));
// 处理上传到临时目录中的文件
String str = handleTempFile(System.getProperty(“user.dir“));
// 发布流程
processEngineCore.deploymentInstance(str);
} catch (Exception e) {
e.printStackTrace();
logger.error(e.getMessage());
return ERROR;
}
return SUCCESS;
}
/**
* 将上传的文件拷贝到临时目录中
*
* @param tempFilePath
* @throws Exception
*/
private void copyFileToTempFolder(String tempFilePath) throws Exception {
// 获取读入的文件(参数1:文件存放的路径。参数2:上传的文件的名称)
File file = new File(new File(tempFilePath) templateFileName);
// 查看上传文件要存放的文件夹是否存在,如果不存在就创建文件目录
if (!file.getParentFile().exists()) {
file.getParentFile().mkdirs();
}
FileUtils.copyFile(template file);
}
/**
* 处理上传到临时目录中的文件
*
* @param tempFilePath
* @return 流程文件路径
*/
private String handleTempFile(String tempFilePath) throws Exception {
// 得到上传文件后缀
String fileSuffix = templateFileName.substring(templateFileName.lastIndexOf(“.“) + 1 templateFileName.length());
// zip文件
if (“zip“.equals(fileSuffix)) {
logger.debug(“zip temp dir is “ + tempFilePath + File.separator + templateFileName);
UnZipFile.unzip(tempFilePat
- 上一篇:迪文HMI标准字库及部分扩展字库参考
- 下一篇:换热器仿真
相关资源
- Activiti6汉化版源码+多租户+流程表单配
- myeclipse版activiti5.18插件(打开bpmn文件
- activiti-designer-5.18.0
- ssh整合activiti
- activiti-app6.0.0汉化版
- springboot 2.0 集成 Activiti5.22包括流程跟
- Avtiviti最佳学习Demo
- Activiti开发请假流程代码
- Activiti工作流引擎web设计器activiti-we
- Activiti5.8+SpringMVC整合工作流案例
- activiti ssm
- Activiti5.20.0整合spring4.15,整合流程编
- Activiti实战(咖啡兔)-高清带目录
- activiti-app.war
- Activiti插件
- activiti 工作流详细文档教程+eclipse安装
- activiti工作流流程设计器插件,activ
- SpringMVC+Redis+Activiti+Fastdfs+Thirft+Websoc
- activiti6.0官网war包
- Activiti 实战闫洪磊版-带完整目录
- 基于ssh框架的activiti实战请假流程代码
- spring boot整合activiti
- 《Activiti实战》高清完整中文PDF版(含
- 书-疯狂工作流讲义-中源码.zip
- 疯狂Workflow讲义 基于Activiti的工作流
- Activiti实战PDF电子书及源代码.zip
- Activiti实战(咖啡兔)-含目录
- spring-boot-activiti集成
- 使用activiti工作流引擎显示流程图时高
- Activiti6工作流视频整合SpringBoot2.0
评论
共有 条评论