1 16 17 18 package org.apache.webapp.admin; 19 20 21 import java.io.IOException ; 22 import java.util.Iterator ; 23 import java.util.List ; 24 import java.util.Locale ; 25 import java.util.StringTokenizer ; 26 import java.util.ArrayList ; 27 import javax.servlet.ServletException ; 28 import javax.servlet.http.HttpServletRequest ; 29 import javax.servlet.http.HttpServletResponse ; 30 import javax.servlet.http.HttpSession ; 31 import org.apache.struts.action.Action; 32 import org.apache.struts.action.ActionErrors; 33 import org.apache.struts.action.ActionForm; 34 import org.apache.struts.action.ActionForward; 35 import org.apache.struts.action.ActionMapping; 36 37 38 46 47 public class SetUpTreeAction extends Action { 48 49 public static final String DOMAIN_KEY = "domain"; 50 public static final int INIT_PLUGIN_MAX = 10; 51 public static final String TREEBUILDER_KEY = "treebuilders"; 52 public static final String ROOTNODENAME_KEY = "rootnodename"; 53 54 56 71 public ActionForward execute(ActionMapping mapping, 72 ActionForm form, 73 HttpServletRequest request, 74 HttpServletResponse response) 75 throws IOException , ServletException { 76 77 ApplicationServlet servlet = (ApplicationServlet)getServlet(); 78 79 81 String rootnodeName = 83 (String )servlet.getServletConfig().getInitParameter(ROOTNODENAME_KEY); 84 85 String treeBuildersStr = 86 (String )servlet.getServletConfig().getInitParameter(TREEBUILDER_KEY); 87 88 String domain = 89 (String )servlet.getServletConfig().getInitParameter(DOMAIN_KEY); 90 91 92 94 97 TreeControlNode root = 98 new TreeControlNode("ROOT-NODE", 99 null, rootnodeName, 100 "setUpTree.do?select=ROOT-NODE", 101 "content", true, domain); 102 103 TreeControl control = new TreeControl(root); 104 105 if(treeBuildersStr != null) { 106 Class treeBuilderImpl; 107 TreeBuilder treeBuilderBase; 108 109 ArrayList treeBuilders = new ArrayList (INIT_PLUGIN_MAX); 110 int i = 0; 111 StringTokenizer st = new StringTokenizer (treeBuildersStr, ","); 112 while (st.hasMoreTokens()) { 113 treeBuilders.add(st.nextToken().trim()); 114 } 115 116 if(treeBuilders.size() == 0) 117 treeBuilders.add(treeBuildersStr.trim()); 118 119 for(i = 0; i < treeBuilders.size(); i++) { 120 121 try{ 122 treeBuilderImpl = Class.forName((String )treeBuilders.get(i)); 123 treeBuilderBase = 124 (TreeBuilder)treeBuilderImpl.newInstance(); 125 treeBuilderBase.buildTree(control, servlet, request); 126 }catch(Throwable t){ 127 t.printStackTrace(System.out); 128 } 129 } 130 } 131 132 HttpSession session = request.getSession(); 133 session.setAttribute("treeControlTest", control); 134 135 String name = request.getParameter("select"); 136 if (name != null) { 137 control.selectNode(name); 138 return (mapping.findForward("Blank")); 140 } 141 142 return (mapping.findForward("Tree Control Test")); 143 144 } 145 } 146 | Popular Tags |