KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > contineo > actions > documan > transfer > ZipImportAction


1 package org.contineo.actions.documan.transfer;
2
3 import java.io.File JavaDoc;
4
5 import javax.servlet.http.HttpServletRequest JavaDoc;
6 import javax.servlet.http.HttpServletResponse JavaDoc;
7 import javax.servlet.http.HttpSession JavaDoc;
8
9 import org.apache.log4j.Level;
10 import org.apache.log4j.Logger;
11 import org.apache.struts.action.Action;
12 import org.apache.struts.action.ActionError;
13 import org.apache.struts.action.ActionErrors;
14 import org.apache.struts.action.ActionForm;
15 import org.apache.struts.action.ActionForward;
16 import org.apache.struts.action.ActionMapping;
17 import org.apache.struts.action.ActionMessage;
18 import org.apache.struts.action.ActionMessages;
19 import org.apache.struts.upload.FormFile;
20 import org.contineo.admin.Menu;
21 import org.contineo.admin.dao.MenuDAO;
22 import org.contineo.core.FileBean;
23 import org.contineo.core.LoggingManager;
24 import org.contineo.core.SessionManagement;
25 import org.contineo.core.config.SettingConfigurator;
26 import org.contineo.core.transfer.ZipImport;
27 import org.contineo.forms.UploadForm;
28
29 /**
30  * Created on 17.12.2004
31  */

32 public class ZipImportAction extends Action {
33
34     private Logger logger;
35     
36     /**
37      *
38      */

39     public ZipImportAction() {
40         logger = LoggingManager.getLogger(this.getClass());
41     }
42     
43     public ActionForward execute(ActionMapping mapping,
44             ActionForm form, HttpServletRequest JavaDoc request,
45             HttpServletResponse JavaDoc response) {
46         ActionForward actionForward = new ActionForward();
47         ActionMessages messages = new ActionMessages();
48         ActionErrors errors = new ActionErrors();
49         HttpSession JavaDoc session = request.getSession();
50         if (SessionManagement.isValid(session)) {
51             session.setAttribute("helppage", "folderimport");
52             try {
53                 String JavaDoc username = (String JavaDoc)session.getAttribute("authuser");
54                 UploadForm uploadForm = (UploadForm)form;
55                 FormFile file = uploadForm.getFile();
56                 MenuDAO menuDao = new MenuDAO();
57                 String JavaDoc menuParent = uploadForm.getMenuParent();
58                 Menu parent = menuDao.findByPrimaryKey(Integer.parseInt(menuParent));
59                 if (file != null && !file.getFileName().equals("")) {
60                     SettingConfigurator conf = new SettingConfigurator();
61                     String JavaDoc path = conf.getValue("userdir");
62                     if (!path.endsWith(File.pathSeparator))
63                         path += "/";
64                     path += username + "/";
65                     FileBean.createDir(path);
66                     FileBean.writeFile(file.getInputStream(), path + file.getFileName());
67                     ZipImport importer = new ZipImport();
68                     importer.process(path + file.getFileName(), parent, username);
69                     FileBean.deleteFile(path + file.getFileName());
70                     messages.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage("msg.action.importfolder"));
71                 } else {
72                     errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("errors.required"));
73                 }
74                 request.setAttribute("parentname", parent.getMenuText());
75                 request.setAttribute("parenttype", String.valueOf(parent.getMenuType()));
76                 UploadForm uploadform = new UploadForm();
77                 uploadform.setMenuParent(menuParent);
78                 request.setAttribute("uploadform", uploadform);
79                 saveMessages(request, messages);
80                 saveErrors(request, errors);
81                 actionForward = mapping.findForward("uploadfolder");
82             } catch (Exception JavaDoc e) {
83                 if (logger.isEnabledFor(Level.ERROR))
84                     logger.error(e.getMessage());
85                 actionForward = mapping.findForward("error");
86             }
87         } else
88             actionForward = mapping.findForward("invalid");
89         return actionForward;
90     }
91 }
92
Popular Tags