1 /** 2 * 3 * Copyright 2003-2005 The Apache Software Foundation 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); 6 * you may not use this file except in compliance with the License. 7 * You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 */ 17 package org.apache.geronimo.tomcat; 18 19 import org.apache.catalina.Context; 20 import org.apache.catalina.Lifecycle; 21 import org.apache.catalina.startup.ContextConfig; 22 import org.apache.catalina.startup.Embedded; 23 import org.apache.commons.logging.Log; 24 import org.apache.commons.logging.LogFactory; 25 import org.apache.geronimo.webservices.WebServiceContainer; 26 27 /** 28 * @version $Rev: 355877 $ $Date: 2005-12-10 18:48:27 -0800 (Sat, 10 Dec 2005) $ 29 */ 30 public class TomcatGeronimoEmbedded extends Embedded{ 31 32 private static final Log log = LogFactory.getLog(TomcatGeronimoEmbedded.class); 33 34 public Context createContext(String path, String docBase, ClassLoader cl) { 35 36 if( log.isDebugEnabled() ) 37 log.debug("Creating context '" + path + "' with docBase '" + 38 docBase + "'"); 39 40 GeronimoStandardContext context = new GeronimoStandardContext(); 41 42 context.setDocBase(docBase); 43 context.setPath(path); 44 45 if (cl != null) 46 context.setParentClassLoader(cl); 47 48 ContextConfig config = new ContextConfig(); 49 config.setCustomAuthenticators(authenticators); 50 ((Lifecycle) context).addLifecycleListener(config); 51 52 context.setDelegate(true); 53 return (context); 54 55 } 56 57 public Context createEJBWebServiceContext(String contextPath, 58 WebServiceContainer webServiceContainer, 59 String securityRealmName, 60 String realmName, 61 String transportGuarantee, 62 String authMethod, 63 ClassLoader classLoader) { 64 65 if( log.isDebugEnabled() ) 66 log.debug("Creating EJBWebService context '" + contextPath + "'."); 67 68 TomcatEJBWebServiceContext context = new TomcatEJBWebServiceContext(contextPath, webServiceContainer, securityRealmName, realmName, transportGuarantee, authMethod, classLoader); 69 70 ContextConfig config = new ContextConfig(); 71 config.setCustomAuthenticators(authenticators); 72 ((Lifecycle) context).addLifecycleListener(config); 73 74 return (context); 75 76 } 77 78 }