ApplyDestinationAction.java

00001 
00026 package org.objectweb.jonas.webapp.jonasadmin.joramplatform;
00027 
00028 import java.io.IOException;
00029 
00030 import javax.management.ObjectName;
00031 import javax.servlet.ServletException;
00032 import javax.servlet.http.HttpServletRequest;
00033 import javax.servlet.http.HttpServletResponse;
00034 
00035 import org.apache.struts.action.ActionForm;
00036 import org.apache.struts.action.ActionForward;
00037 import org.apache.struts.action.ActionMapping;
00038 import org.objectweb.jonas.jmx.JonasManagementRepr;
00039 import org.objectweb.jonas.jmx.JonasObjectName;
00040 import org.objectweb.jonas.webapp.jonasadmin.WhereAreYou;
00041 import org.objectweb.jonas.webapp.jonasadmin.deploy.BaseDeployAction;
00042 
00043 
00049 public class ApplyDestinationAction extends BaseDeployAction {
00050 
00051 // --------------------------------------------------------- Public Methods
00052 
00053     public ActionForward executeAction(ActionMapping p_Mapping, ActionForm p_Form
00054         , HttpServletRequest p_Request, HttpServletResponse p_Response)
00055         throws IOException, ServletException {
00056 
00057         // Form used
00058         JoramDestinationForm oForm = (JoramDestinationForm) p_Form;
00059 
00060         try {
00061             // Create a Jms destination
00062             // -- create a queue for the moment --
00063             ObjectName oObjectName = JonasObjectName.joramLocalServer();
00064             String[] asParam = {
00065                     oForm.getName()
00066             };
00067             String[] asSignature = {
00068                     "java.lang.String"
00069             };
00070             String type = oForm.getType();          
00071             if (type.equals(m_Resources.getMessage("label.joramplatform.destinations.queue")))
00072                 JonasManagementRepr.invoke(oObjectName, "createLocalQueue", asParam, asSignature);
00073             else if (type.equals(m_Resources.getMessage("label.joramplatform.destinations.topic")))
00074                 JonasManagementRepr.invoke(oObjectName, "createLocalTopic", asParam, asSignature);
00075 
00076             // refresh tree
00077             refreshJoramTree();
00078 
00079             oForm.reset(p_Mapping, p_Request);
00080 
00081         } catch (Throwable t) {
00082             addGlobalError(t);
00083             saveErrors(p_Request, m_Errors);
00084             return (p_Mapping.findForward("Global Error"));
00085         }
00086 
00087         // Forward to the jsp.
00088         return (p_Mapping.findForward("Create Joram Destination"));
00089     }
00090 }

Generated on Tue Feb 15 15:05:27 2005 for JOnAS by  doxygen 1.3.9.1