00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 package org.objectweb.jonas.webapp.jonasadmin.resource;
00027
00028 import java.util.Properties;
00029
00030 import javax.servlet.ServletException;
00031 import javax.servlet.http.HttpServletRequest;
00032 import javax.servlet.http.HttpServletResponse;
00033
00034 import org.apache.struts.action.ActionForm;
00035 import org.apache.struts.action.ActionForward;
00036 import org.apache.struts.action.ActionMapping;
00037 import org.objectweb.jonas.jmx.JonasManagementRepr;
00038 import org.objectweb.jonas.jmx.JonasObjectName;
00039 import org.objectweb.jonas.webapp.jonasadmin.WhereAreYou;
00040
00044 public class ApplySessionMailFactoryPropertiesAction extends EditMailFactoryPropertiesAction {
00045
00046 public ActionForward executeAction(ActionMapping p_Mapping, ActionForm p_Form
00047 , HttpServletRequest p_Request, HttpServletResponse p_Response)
00048 throws ServletException {
00049
00050
00051 MailFactoryPropertiesForm oForm = (MailFactoryPropertiesForm) m_Session.getAttribute("mailFactoryPropertiesForm");
00052
00053 String name = oForm.getMailFactoryName();
00054 try {
00055
00056 boolean mimePartFactory = false;
00057 Properties props = getPropsFromForm(oForm, mimePartFactory);
00058 Boolean fromFile = new Boolean(true);
00059 Object[] aoParam = { name, props, fromFile };
00060 String[] asSign_3 = { "java.lang.String", "java.util.Properties", "java.lang.Boolean" };
00061 JonasManagementRepr.invoke(JonasObjectName.mailService(), "createMailFactoryMBean", aoParam, asSign_3);
00062
00063 m_WhereAreYou.setCurrentJonasDeploymentType(WhereAreYou.DEPLOYMENT_MAIL);
00064 refreshTree(p_Request);
00065 } catch (Throwable t) {
00066 addGlobalError(t);
00067 saveErrors(p_Request, m_Errors);
00068 return (p_Mapping.findForward("Global Error"));
00069 }
00070
00071 m_Session.removeAttribute("mailFactoryPropertiesForm");
00072 return (p_Mapping.findForward("ActionListMailFactories"));
00073 }
00074 }