| 1 15 16 package com.jdon.strutsutil; 17 18 import java.io.InputStream ; 19 import java.util.Iterator ; 20 import java.util.Map ; 21 import java.util.Set ; 22 23 import javax.servlet.ServletContext ; 24 import javax.servlet.ServletException ; 25 26 import org.apache.struts.action.ActionServlet; 27 import org.apache.struts.action.PlugIn; 28 import org.apache.struts.config.ModuleConfig; 29 import org.apache.struts.config.PlugInConfig; 30 31 import com.jdon.container.config.app.AppConfigureCollection; 32 import com.jdon.container.startup.ContainerSetupScript; 33 import com.jdon.util.FileLocator; 34 import com.jdon.util.StringUtil; 35 36 50 51 public class InitPlugIn implements PlugIn { 52 public final static String module = InitPlugIn.class.getName(); 53 54 private ContainerSetupScript css = new ContainerSetupScript(); 55 56 private FileLocator fileLocator = new FileLocator(); 57 58 private ActionServlet servlet = null; 59 60 private ModuleConfig config = null; 61 62 public void init(ActionServlet servlet, ModuleConfig config) 63 throws ServletException { 64 this.config = config; 66 this.servlet = servlet; 67 68 ServletContext sc = servlet.getServletContext(); 69 70 String config_file = ""; 71 PlugInConfig[] plugInConfigs = config.findPlugInConfigs(); 72 int length = plugInConfigs.length; 73 for (int i = 0; i < length; i++) { 74 Set entries = plugInConfigs[i].getProperties().entrySet(); 75 Iterator iter = entries.iterator(); 76 while (iter.hasNext()) { 77 Map.Entry entry = (Map.Entry ) iter.next(); 78 if (AppConfigureCollection.CONFIG_NAME.equals(entry.getKey())) { config_file = (String ) entry.getValue(); 80 String [] configs = StringUtil.split(config_file, ","); 81 for (int j = 0; j < configs.length; j++) { 82 if (checkExsit(configs[j])) { 83 css.prepare(configs[j], sc); 84 } 85 } 86 87 } 88 } 89 } 90 } 91 92 public boolean checkExsit(String config_file) { 93 boolean ret = false; 94 InputStream xmlFile = null; 95 try { 96 xmlFile = fileLocator.getConfPathXmlStream(config_file); 97 if (xmlFile != null) 98 ret = true; 99 } catch (Exception ex) { 100 101 } 102 return ret; 103 } 104 105 public void destroy() { 106 css.destroyed(servlet.getServletContext()); 107 config = null; 108 servlet = null; 109 } 110 111 } 112 | Popular Tags |