1 25 26 package org.objectweb.jonas.webapp.jonasadmin.domain; 27 28 import java.io.IOException ; 29 import java.util.ArrayList ; 30 import java.util.Collections ; 31 32 import javax.management.ObjectName ; 33 import javax.servlet.ServletException ; 34 import javax.servlet.http.HttpServletRequest ; 35 import javax.servlet.http.HttpServletResponse ; 36 37 import org.apache.struts.action.ActionForm; 38 import org.apache.struts.action.ActionForward; 39 import org.apache.struts.action.ActionMapping; 40 import org.objectweb.jonas.jmx.JonasManagementRepr; 41 import org.objectweb.jonas.jmx.ManagementReprLoader; 42 import org.objectweb.jonas.webapp.jonasadmin.JonasBaseAction; 43 import org.objectweb.jonas.webapp.jonasadmin.WhereAreYou; 44 import org.objectweb.jonas.webapp.jonasadmin.common.BeanComparator; 45 import org.objectweb.jonas.webapp.jonasadmin.common.ObjectNameItem; 46 47 50 51 public class EditDomainAction extends JonasBaseAction { 52 53 55 public ActionForward executeAction(ActionMapping p_Mapping, ActionForm p_Form 56 , HttpServletRequest p_Request, HttpServletResponse p_Response) 57 throws IOException , ServletException { 58 59 try { 60 String adminServerName = m_WhereAreYou.getAdminJonasServerName(); 61 boolean changeManagement = false; 62 if (!adminServerName.equals(m_WhereAreYou.getCurrentJonasServerName())) { 63 ManagementReprLoader.loadServerRepr(adminServerName); 66 m_WhereAreYou.refreshServers(p_Request); 67 changeManagement = true; 68 } 69 70 m_WhereAreYou.selectNameNode("domain", true); 72 73 if (changeManagement) { 74 refreshServerTree(p_Request); 75 } 76 77 ObjectName onDomain = m_WhereAreYou.getCurrentDomain(); 79 ObjectName onCurrentServer = m_WhereAreYou.getCurrentJonasServer(); 80 String [] serversOn = (String []) JonasManagementRepr.getAttribute(onDomain, "servers"); 81 ArrayList al = new ArrayList (); 82 83 String sOn = null; 84 for (int i = 0; i < serversOn.length; i++) { 85 sOn = serversOn[i]; 86 ObjectName onServer = ObjectName.getInstance(sOn); 87 if (!onServer.equals(onCurrentServer)) { 88 al.add(new ObjectNameItem(onServer)); 89 } 90 } 91 Collections.sort(al, new BeanComparator(new String [] { 92 "name"})); 93 p_Request.setAttribute("listServers", al); 94 p_Request.setAttribute("currentServer", new ObjectNameItem(onCurrentServer)); 95 } catch (Throwable t) { 96 addGlobalError(t); 97 saveErrors(p_Request, m_Errors); 98 return (p_Mapping.findForward("Global Error")); 99 } 100 return (p_Mapping.findForward("Domain")); 102 } 103 104 } 105 | Popular Tags |