KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > contineo > actions > setup > SaveDBAction


1 /*
2  * ChangePasswordAction.java
3  *
4  * Created on 16. Dezember 2003, 22:25
5  */

6
7 package org.contineo.actions.setup;
8
9 import javax.servlet.http.HttpServletRequest JavaDoc;
10 import javax.servlet.http.HttpServletResponse JavaDoc;
11 import org.apache.commons.beanutils.BeanUtils;
12 import org.apache.log4j.Level;
13 import org.apache.log4j.Logger;
14 import org.apache.struts.action.Action;
15 import org.apache.struts.action.ActionError;
16 import org.apache.struts.action.ActionErrors;
17 import org.apache.struts.action.ActionForm;
18 import org.apache.struts.action.ActionForward;
19 import org.apache.struts.action.ActionMapping;
20 import org.contineo.core.LoggingManager;
21 import org.contineo.core.config.DBMSConfigurator;
22 import org.contineo.forms.ConnectionForm;
23 /**
24  *
25  * @author Michael Scholz
26  * @version 1.0
27  */

28 public class SaveDBAction extends Action {
29
30     /**
31      * @uml.property name="logger"
32      * @uml.associationEnd
33      */

34     private Logger logger;
35
36     
37     /** Creates a new instance of ChangePasswordAction */
38     public SaveDBAction() {
39         logger = LoggingManager.getLogger(this.getClass());
40     }
41     
42     public ActionForward execute(ActionMapping mapping,
43     ActionForm form, HttpServletRequest JavaDoc request,
44     HttpServletResponse JavaDoc response) {
45         ActionForward actionForward = new ActionForward();
46         ActionErrors errors = new ActionErrors();
47         try {
48             String JavaDoc dbms = BeanUtils.getSimpleProperty(form, "dbms");
49             if (dbms == null || dbms.equals("")) {
50                 errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("errors.required"));
51                 actionForward = mapping.findForward("choosedb");
52             } else {
53                 DBMSConfigurator conf = new DBMSConfigurator();
54                 String JavaDoc clazz = conf.getAttribute(dbms, "class");
55                 String JavaDoc protocol = conf.getAttribute(dbms, "protocol");
56                 String JavaDoc subprotocol = conf.getAttribute(dbms, "subprotocol");
57                 String JavaDoc port = conf.getAttribute(dbms, "port");
58                 String JavaDoc sample = conf.getAttribute(dbms, "sample");
59                 if (dbms.equals("sybase45") || (dbms.equals("sybase55")))
60                     dbms = "SybaseASE";
61                 ConnectionForm cform = new ConnectionForm();
62                 cform.setClazz(clazz);
63                 cform.setProtocol(protocol);
64                 cform.setSubprotocol(subprotocol);
65                 cform.setPort(port);
66                 cform.setSample(sample);
67                 cform.setDbms(dbms);
68                 request.setAttribute("connection", cform);
69                 actionForward = mapping.findForward("setdb");
70             }
71         } catch (Exception JavaDoc e) {
72             if (logger.isEnabledFor(Level.ERROR))
73                 logger.error(e.getMessage());
74             actionForward = mapping.findForward("error");
75         }
76         saveErrors(request, errors);
77         return actionForward;
78     }
79 }
80
Popular Tags