1 package org.nextime.ion.admin.action.type; 2 3 import java.io.*; 4 import java.util.*; 5 6 import javax.servlet.ServletException ; 7 import javax.servlet.http.HttpServletRequest ; 8 import javax.servlet.http.HttpServletResponse ; 9 import org.apache.struts.action.Action; 10 import org.apache.struts.action.ActionForm; 11 import org.apache.struts.action.ActionForward; 12 import org.apache.struts.action.ActionMapping; 13 14 import org.nextime.ion.admin.form.*; 15 import org.nextime.ion.framework.business.Group; 16 import org.nextime.ion.framework.business.*; 17 import org.nextime.ion.framework.config.*; 18 import org.nextime.ion.framework.business.impl.*; 19 import org.nextime.ion.framework.mapping.Mapping; 20 21 public class EditTypeAction extends Action { 22 23 public ActionForward perform( 24 ActionMapping mapping, 25 ActionForm form, 26 HttpServletRequest request, 27 HttpServletResponse response) 28 throws IOException, ServletException { 29 30 request.setAttribute("view", "type"); 32 33 if (request.getParameter("id") != null) 34 request.setAttribute("id", request.getParameter("id")); 35 String id = request.getAttribute("id") + ""; 36 37 try { 38 39 if (request.getParameter("editSubmit") == null) { 40 Mapping.begin(); 41 42 TypePublication u = TypePublication.getInstance(id); 44 TypeForm f = (TypeForm) form; 45 f.setId(u.getId()); 46 request.setAttribute("metaData", ((TypePublicationImpl) u).getMetaData()); 47 request.setAttribute("styles",u.listStyles()); 49 Mapping.commit(); 50 return new ActionForward(mapping.getInput()); 51 } 52 53 Mapping.begin(); 55 TypeForm f = (TypeForm) form; 56 TypePublication u = TypePublication.getInstance(id); 57 58 68 Enumeration ps = request.getParameterNames(); 70 while (ps.hasMoreElements()) { 71 String name = ps.nextElement() + ""; 72 if (name.startsWith("META_")) { 73 name = name.substring(5); 74 u.setMetaData(name, request.getParameter("META_" + name)); 75 } 76 } 77 String mtd = request.getParameter("metaToDelete"); 79 if ((mtd + "").trim().equals("")) 80 mtd = null; 81 if (mtd != null) { 82 u.removeMetaData(mtd); 83 request.setAttribute("metaData", ((TypePublicationImpl) u).getMetaData()); 84 } 85 String mtd2 = request.getParameter("newMETA"); 87 if ((mtd2 + "").trim().equals("")) 88 mtd2 = null; 89 if (mtd2 != null) { 90 u.setMetaData(mtd2, ""); 91 request.setAttribute("metaData", ((TypePublicationImpl) u).getMetaData()); 92 } 93 Mapping.commit(); 94 95 if (mtd != null || mtd2 != null) { 97 return new ActionForward(mapping.getInput()); 98 } 99 100 102 } catch (Exception e) { 103 Mapping.rollback(); 104 request.setAttribute("error", e.getMessage()); 105 return new ActionForward(mapping.getInput()); 106 } 107 108 return mapping.findForward("success"); 109 } 110 111 } | Popular Tags |