| 1 7 package winstone.jndi; 8 9 import java.util.Iterator ; 10 import java.util.List ; 11 import java.util.Map ; 12 13 import org.w3c.dom.Node ; 14 15 import winstone.Logger; 16 import winstone.WebAppConfiguration; 17 18 24 public class WebAppJNDIManager extends ContainerJNDIManager { 25 final static String ELEM_ENV_ENTRY = "env-entry"; 26 final static String ELEM_ENV_ENTRY_NAME = "env-entry-name"; 27 final static String ELEM_ENV_ENTRY_TYPE = "env-entry-type"; 28 final static String ELEM_ENV_ENTRY_VALUE = "env-entry-value"; 29 30 35 public WebAppJNDIManager(Map args, List webXMLNodes, ClassLoader loader) { 36 super(args, webXMLNodes, loader); 37 38 if (webXMLNodes != null) 41 for (Iterator i = webXMLNodes.iterator(); i.hasNext();) { 42 Node node = (Node ) i.next(); 43 44 if (node.getNodeType() != Node.ELEMENT_NODE) 46 continue; 47 else if (node.getNodeName().equals(ELEM_ENV_ENTRY)) { 48 String name = null; 49 String type = null; 50 String value = null; 51 for (int m = 0; m < node.getChildNodes().getLength(); m++) { 52 Node envNode = node.getChildNodes().item(m); 53 if (envNode.getNodeType() != Node.ELEMENT_NODE) 54 continue; 55 else if (envNode.getNodeName().equals(ELEM_ENV_ENTRY_NAME)) 56 name = WebAppConfiguration.getTextFromNode(envNode); 57 else if (envNode.getNodeName().equals(ELEM_ENV_ENTRY_TYPE)) 58 type = WebAppConfiguration.getTextFromNode(envNode); 59 else if (envNode.getNodeName().equals(ELEM_ENV_ENTRY_VALUE)) 60 value = WebAppConfiguration.getTextFromNode(envNode); 61 } 62 if ((name != null) && (type != null) && (value != null)) { 63 Logger.log(Logger.FULL_DEBUG, JNDI_RESOURCES, 64 "WebAppJNDIManager.CreatingResourceWebXML", 65 name); 66 Object obj = createObject(name, type, value, args, loader); 67 if (obj != null) 68 this.objectsToCreate.put(name, obj); 69 } 70 } 71 } 72 } 73 74 } 75 | Popular Tags |