Return-Path: Delivered-To: apmail-geronimo-dev-archive@www.apache.org Received: (qmail 2405 invoked from network); 21 Feb 2007 00:59:33 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 21 Feb 2007 00:59:33 -0000 Received: (qmail 97988 invoked by uid 500); 21 Feb 2007 00:59:38 -0000 Delivered-To: apmail-geronimo-dev-archive@geronimo.apache.org Received: (qmail 97951 invoked by uid 500); 21 Feb 2007 00:59:38 -0000 Mailing-List: contact dev-help@geronimo.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: dev@geronimo.apache.org List-Id: Delivered-To: mailing list dev@geronimo.apache.org Received: (qmail 97938 invoked by uid 99); 21 Feb 2007 00:59:38 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 20 Feb 2007 16:59:38 -0800 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (herse.apache.org: domain of jgawor@gmail.com designates 64.233.162.226 as permitted sender) Received: from [64.233.162.226] (HELO nz-out-0506.google.com) (64.233.162.226) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 20 Feb 2007 16:59:26 -0800 Received: by nz-out-0506.google.com with SMTP id j2so2364461nzf for ; Tue, 20 Feb 2007 16:59:06 -0800 (PST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=eMUM/HucS4bQkjPOZVxicL4pQ6TFCOBwPHCR02wvRzdxnzsM91kEinON8I4CpEN9YIRHqZDR8GSEl5mJe3ddTyrGtIUURvi9F+tfSdT2ul3T36WFUuT3Fu0iykeU4W+cefK9fFXIjfP5yuq9FpfxQ4KYVuyLATf062oq9xbt8Ek= Received: by 10.114.205.1 with SMTP id c1mr3582098wag.1172019545357; Tue, 20 Feb 2007 16:59:05 -0800 (PST) Received: by 10.114.137.4 with HTTP; Tue, 20 Feb 2007 16:59:05 -0800 (PST) Message-ID: <5eb405c70702201659p5772f8efk594ef06aa00367b7@mail.gmail.com> Date: Tue, 20 Feb 2007 19:59:05 -0500 From: "Jarek Gawor" To: dev@geronimo.apache.org Subject: Re: svn commit: r509770 - in /geronimo/server/trunk/modules: geronimo-client-builder/src/main/java/org/apache/geronimo/client/builder/ geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/deployment/ geronimo-jetty6-builder/src/main/java/org/ In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <5eb405c70702201501r21de5c97pce39385f65f09c4@mail.gmail.com> X-Virus-Checked: Checked by ClamAV on apache.org Yes. For example, in testsuite/webservices-testsuite/stax-tests/stax-client run 'mvn -P child' while having Geronimo server running in the background. Jarek On 2/20/07, David Jencks wrote: > Looking into it... is the app you are deploying available for me to try? > > thanks > david jencks > > On Feb 20, 2007, at 3:01 PM, Jarek Gawor wrote: > > > I think this commit might have broken the app client. I'm pretty sure > > I was able to run the WS tests after Dims' commit but before this > > commit and everything was fine. But running the same tests after this > > patch, the app client tests stopped working. I'm attaching a test log. > > > > I'll retest to make sure. > > > > Jarek > > > > On 2/20/07, djencks@apache.org wrote: > >> Author: djencks > >> Date: Tue Feb 20 13:58:35 2007 > >> New Revision: 509770 > >> > >> URL: http://svn.apache.org/viewvc?view=rev&rev=509770 > >> Log: > >> GERONIMO-2816 related. Move the NamingBuilder.buildEnvironment > >> late enough so a classloader is available for help with annotation > >> procesing. Intermediate patch to coordinate work. > >> > >> Modified: > >> geronimo/server/trunk/modules/geronimo-client-builder/src/main/ > >> java/org/apache/geronimo/client/builder/AppClientModuleBuilder.java > >> geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/ > >> java/org/apache/geronimo/j2ee/deployment/AppClientModule.java > >> geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/ > >> java/org/apache/geronimo/j2ee/deployment/ConnectorModule.java > >> geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/ > >> java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java > >> geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/ > >> java/org/apache/geronimo/j2ee/deployment/EJBModule.java > >> geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/ > >> java/org/apache/geronimo/j2ee/deployment/Module.java > >> geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/ > >> java/org/apache/geronimo/j2ee/deployment/WebModule.java > >> geronimo/server/trunk/modules/geronimo-jetty6-builder/src/main/ > >> java/org/apache/geronimo/jetty6/deployment/JettyModuleBuilder.java > >> geronimo/server/trunk/modules/geronimo-openejb-builder/src/ > >> main/java/org/apache/geronimo/openejb/deployment/ > >> EjbModuleBuilder.java > >> geronimo/server/trunk/modules/geronimo-tomcat6-builder/src/ > >> main/java/org/apache/geronimo/tomcat/deployment/ > >> TomcatModuleBuilder.java > >> geronimo/server/trunk/modules/geronimo-web-2.5-builder/src/ > >> main/java/org/apache/geronimo/web25/deployment/ > >> AbstractWebModuleBuilder.java > >> geronimo/server/trunk/modules/geronimo-web-2.5-builder/src/ > >> test/java/org/apache/geronimo/web25/deployment/ > >> SchemaConversionTest.java > >> geronimo/server/trunk/modules/geronimo-web-2.5-builder/src/ > >> test/java/org/apache/geronimo/web25/deployment/ > >> SecurityConfigTest.java > >> geronimo/server/trunk/modules/geronimo-web-2.5-builder/src/ > >> test/java/org/apache/geronimo/web25/deployment/ > >> SpecSecurityParsingTest.java > >> > >> Modified: geronimo/server/trunk/modules/geronimo-client-builder/ > >> src/main/java/org/apache/geronimo/client/builder/ > >> AppClientModuleBuilder.java > >> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ > >> geronimo-client-builder/src/main/java/org/apache/geronimo/client/ > >> builder/AppClientModuleBuilder.java? > >> view=diff&rev=509770&r1=509769&r2=509770 > >> ===================================================================== > >> ========= > >> --- geronimo/server/trunk/modules/geronimo-client-builder/src/main/ > >> java/org/apache/geronimo/client/builder/ > >> AppClientModuleBuilder.java (original) > >> +++ geronimo/server/trunk/modules/geronimo-client-builder/src/main/ > >> java/org/apache/geronimo/client/builder/ > >> AppClientModuleBuilder.java Tue Feb 20 13:58:35 2007 > >> @@ -250,8 +250,6 @@ > >> idBuilder.resolve(serverEnvironment, new File > >> (moduleFile.getName()).getName(), "jar"); > >> } > >> > >> - namingBuilders.buildEnvironment(appClient, gerAppClient, > >> clientEnvironment); > >> - > >> if (earName == null) { > >> earName = naming.createRootName > >> (serverEnvironment.getConfigId(), NameFactory.NULL, > >> NameFactory.J2EE_APPLICATION); > >> } > >> @@ -466,6 +464,8 @@ > >> } > >> > >> public void initContext(EARContext earContext, Module > >> clientModule, ClassLoader cl) throws DeploymentException { > >> + namingBuilders.buildEnvironment(clientModule.getSpecDD(), > >> clientModule.getVendorDD(), clientModule.getEnvironment()); > >> + > >> AppClientModule appClientModule = ((AppClientModule) > >> clientModule); > >> for (Iterator resources = > >> appClientModule.getResourceModules().iterator(); resources.hasNext > >> ();) { > >> ConnectorModule connectorModule = (ConnectorModule) > >> resources.next(); > >> > >> Modified: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/ > >> main/java/org/apache/geronimo/j2ee/deployment/AppClientModule.java > >> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ > >> geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/ > >> deployment/AppClientModule.java? > >> view=diff&rev=509770&r1=509769&r2=509770 > >> ===================================================================== > >> ========= > >> --- geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/ > >> java/org/apache/geronimo/j2ee/deployment/AppClientModule.java > >> (original) > >> +++ geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/ > >> java/org/apache/geronimo/j2ee/deployment/AppClientModule.java Tue > >> Feb 20 13:58:35 2007 > >> @@ -21,6 +21,7 @@ > >> import java.net.URISyntaxException; > >> import java.util.Collection; > >> import java.util.Iterator; > >> +import java.util.HashMap; > >> import java.util.jar.JarFile; > >> > >> import org.apache.geronimo.deployment.DeploymentContext; > >> @@ -40,7 +41,7 @@ > >> > >> > >> public AppClientModule(boolean standAlone, AbstractName > >> moduleName, AbstractName appClientName, Environment > >> serverEnvironment, Environment clientEnvironment, JarFile > >> moduleFile, String targetPath, XmlObject specDD, XmlObject > >> vendorDD, String originalSpecDD, Collection resourceModules) { > >> - super(standAlone, moduleName, serverEnvironment, > >> moduleFile, targetPath, specDD, vendorDD, originalSpecDD, null); > >> + super(standAlone, moduleName, serverEnvironment, > >> moduleFile, targetPath, specDD, vendorDD, originalSpecDD, null, > >> new HashMap()); > >> this.clientEnvironment = clientEnvironment; > >> this.appClientName = appClientName; > >> this.resourceModules = resourceModules; > >> > >> Modified: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/ > >> main/java/org/apache/geronimo/j2ee/deployment/ConnectorModule.java > >> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ > >> geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/ > >> deployment/ConnectorModule.java? > >> view=diff&rev=509770&r1=509769&r2=509770 > >> ===================================================================== > >> ========= > >> --- geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/ > >> java/org/apache/geronimo/j2ee/deployment/ConnectorModule.java > >> (original) > >> +++ geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/ > >> java/org/apache/geronimo/j2ee/deployment/ConnectorModule.java Tue > >> Feb 20 13:58:35 2007 > >> @@ -20,6 +20,7 @@ > >> import java.net.URI; > >> import java.net.URISyntaxException; > >> import java.util.jar.JarFile; > >> +import java.util.HashMap; > >> > >> import org.apache.geronimo.deployment.DeploymentContext; > >> import org.apache.geronimo.gbean.AbstractName; > >> @@ -32,7 +33,7 @@ > >> */ > >> public class ConnectorModule extends Module { > >> public ConnectorModule(boolean standAlone, AbstractName > >> moduleName, Environment environment, JarFile moduleFile, String > >> targetPath, XmlObject specDD, XmlObject vendorDD, String > >> originalSpecDD) { > >> - super(standAlone, moduleName, environment, moduleFile, > >> targetPath, specDD, vendorDD, originalSpecDD, null); > >> + super(standAlone, moduleName, environment, moduleFile, > >> targetPath, specDD, vendorDD, originalSpecDD, null, new HashMap()); > >> } > >> > >> public ConfigurationModuleType getType() { > >> > >> Modified: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/ > >> main/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java > >> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ > >> geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/ > >> deployment/EARConfigBuilder.java? > >> view=diff&rev=509770&r1=509769&r2=509770 > >> ===================================================================== > >> ========= > >> --- geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/ > >> java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java > >> (original) > >> +++ geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/ > >> java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java Tue > >> Feb 20 13:58:35 2007 > >> @@ -156,6 +156,7 @@ > >> serviceBuilders, > >> kernel.getNaming()); > >> } > >> + > >> public EARConfigBuilder(Environment defaultEnvironment, > >> AbstractNameQuery transactionManagerAbstractName, > >> AbstractNameQuery connectionTrackerAbstractName, > >> @@ -186,8 +187,8 @@ > >> new SingleElementCollection(connectorConfigBuilder), > >> new SingleElementCollection > >> (activationSpecInfoLocator), > >> new SingleElementCollection(appClientConfigBuilder), > >> - securityBuilder == null? Collections.EMPTY_SET: > >> Collections.singleton(securityBuilder), > >> - serviceBuilder == null? Collections.EMPTY_SET: > >> Collections.singleton(serviceBuilder), > >> + securityBuilder == null ? Collections.EMPTY_SET : > >> Collections.singleton(securityBuilder), > >> + serviceBuilder == null ? Collections.EMPTY_SET : > >> Collections.singleton(serviceBuilder), > >> naming); > >> } > >> > >> @@ -302,9 +303,9 @@ > >> XmlObject xmlObject = XmlBeansUtil.parse(specDD); > >> application = convertToApplicationSchema > >> (xmlObject).getApplication(); > >> } catch (XmlException e) { > >> - throw new DeploymentException("Could not parse > >> application.xml", e); > >> + throw new DeploymentException("Could not parse > >> application.xml", e); > >> } catch (Exception e) { > >> - //ee5 spec allows optional application.xml, > >> continue with application == null > >> + //ee5 spec allows optional application.xml, > >> continue with application == null > >> } > >> } > >> > >> @@ -353,9 +354,9 @@ > >> LinkedHashSet modules = new LinkedHashSet(); > >> try { > >> addModules(earFile, application, gerApplication, > >> moduleLocations, modules, environment, earName, idBuilder); > >> - if(application == null && modules.isEmpty()) { > >> - //if no application.xml and no modules detected, > >> return null for stand-alone module processing > >> - return null; > >> + if (application == null && modules.isEmpty()) { > >> + //if no application.xml and no modules detected, > >> return null for stand-alone module processing > >> + return null; > >> } > >> } catch (Throwable e) { > >> // close all the modules > >> @@ -429,7 +430,7 @@ > >> XmlBeansUtil.validateDD(result); > >> return (ApplicationDocument) result; > >> } > >> - > >> + > >> // otherwise assume DTD > >> SchemaConversionUtils.convertToSchema(cursor, > >> SchemaConversionUtils.JAVAEE_NAMESPACE, schemaLocationURL, version); > >> cursor.toStartDoc(); > >> @@ -452,8 +453,8 @@ > >> public Artifact getConfigurationID(Object plan, JarFile > >> module, ModuleIDBuilder idBuilder) throws IOException, > >> DeploymentException { > >> ApplicationInfo applicationInfo = (ApplicationInfo) plan; > >> Artifact test = applicationInfo.getEnvironment > >> ().getConfigId(); > >> - if(!test.isResolved()) { > >> - throw new IllegalStateException("Module ID should be > >> fully resolved by now (not "+test+")"); > >> + if (!test.isResolved()) { > >> + throw new IllegalStateException("Module ID should be > >> fully resolved by now (not " + test + ")"); > >> } > >> return test; > >> } > >> @@ -497,9 +498,9 @@ > >> // Copy over all files that are _NOT_ modules (e.g. > >> META-INF and APP-INF files) > >> Set moduleLocations = > >> applicationInfo.getModuleLocations(); > >> if (ConfigurationModuleType.EAR == applicationType && > >> earFile != null) { > >> - //get the value of the library-directory element > >> in spec DD > >> - ApplicationType specDD = (ApplicationType) > >> applicationInfo.getSpecDD(); > >> - String libDir = getLibraryDirectory(specDD); > >> + //get the value of the library-directory element > >> in spec DD > >> + ApplicationType specDD = (ApplicationType) > >> applicationInfo.getSpecDD(); > >> + String libDir = getLibraryDirectory(specDD); > >> for (Enumeration e = earFile.entries(); > >> e.hasMoreElements();) { > >> ZipEntry entry = e.nextElement(); > >> String entryName = entry.getName(); > >> @@ -511,11 +512,11 @@ > >> break; > >> } > >> } > >> - if(libDir != null && entry.getName > >> ().startsWith(libDir) && entry.getName().endsWith(".jar")) { > >> - NestedJarFile library = new > >> NestedJarFile(earFile, entry.getName()); > >> + if (libDir != null && entry.getName > >> ().startsWith(libDir) && entry.getName().endsWith(".jar")) { > >> + NestedJarFile library = new NestedJarFile > >> (earFile, entry.getName()); > >> earContext.addIncludeAsPackedJar > >> (URI.create(entry.getName()), library); > >> - } else if(addEntry) { > >> - earContext.addFile(URI.create(entry.getName > >> ()), earFile, entry); > >> + } else if (addEntry) { > >> + earContext.addFile(URI.create > >> (entry.getName()), earFile, entry); > >> } > >> } > >> } > >> @@ -595,10 +596,10 @@ > >> } catch (DeploymentException e) { > >> cleanupContext(earContext, configurationDir); > >> throw e; > >> - } catch(RuntimeException e) { > >> + } catch (RuntimeException e) { > >> cleanupContext(earContext, configurationDir); > >> throw e; > >> - } catch(Error e) { > >> + } catch (Error e) { > >> cleanupContext(earContext, configurationDir); > >> throw e; > >> } finally { > >> @@ -608,17 +609,17 @@ > >> } > >> } > >> } > >> - > >> - private String getLibraryDirectory(ApplicationType specDD) { > >> - if(specDD == null || !specDD.isSetLibraryDirectory > >> ()) { > >> - //value 'lib' is used if element not set > >> or ear does not contain a dd > >> - return "lib"; > >> - } > >> - > >> - //only set if not empty value, empty value implies > >> no library directory > >> - String value = specDD.getLibraryDirectory > >> ().getStringValue(); > >> - return value.trim().length() > 0 ? value : null; > >> - } > >> + > >> + private String getLibraryDirectory(ApplicationType specDD) { > >> + if (specDD == null || !specDD.isSetLibraryDirectory()) { > >> + //value 'lib' is used if element not set or ear does > >> not contain a dd > >> + return "lib"; > >> + } > >> + > >> + //only set if not empty value, empty value implies no > >> library directory > >> + String value = specDD.getLibraryDirectory().getStringValue > >> (); > >> + return value.trim().length() > 0 ? value : null; > >> + } > >> > >> private void cleanupContext(EARContext earContext, File > >> configurationDir) { > >> List configurations = new > >> ArrayList(); > >> @@ -642,17 +643,16 @@ > >> } > >> } > >> > >> - private boolean cleanupConfigurationDir(File configurationDir) > >> - { > >> + private boolean cleanupConfigurationDir(File configurationDir) { > >> LinkedList cannotBeDeletedList = new > >> LinkedList(); > >> > >> - if (!DeploymentUtil.recursiveDelete > >> (configurationDir,cannotBeDeletedList)) { > >> + if (!DeploymentUtil.recursiveDelete(configurationDir, > >> cannotBeDeletedList)) { > >> // Output a message to help user track down file problem > >> log.warn("Unable to delete " + > >> cannotBeDeletedList.size() + > >> " files while recursively deleting directory " > >> + configurationDir + LINE_SEP + > >> - "The first file that could not be deleted > >> was:" + LINE_SEP + " "+ > >> - ( !cannotBeDeletedList.isEmpty() ? > >> cannotBeDeletedList.getFirst() : "") ); > >> + "The first file that could not be deleted > >> was:" + LINE_SEP + " " + > >> + (!cannotBeDeletedList.isEmpty() ? > >> cannotBeDeletedList.getFirst() : "")); > >> return false; > >> } > >> return true; > >> @@ -669,8 +669,8 @@ > >> try { > >> mapVendorPlans(gerApplication, altVendorDDs, earFile); > >> if (earFile != null) { > >> - if(application != null) { > >> - ModuleType[] moduleTypes = > >> application.getModuleArray(); > >> + if (application != null) { > >> + ModuleType[] moduleTypes = > >> application.getModuleArray(); > >> > >> //get a set containing all of the files in > >> the ear that are actually modules > >> for (ModuleType moduleXml : moduleTypes) { > >> @@ -737,77 +737,77 @@ > >> modules.add(module); > >> } > >> } else { > >> - //no application.xml available, must > >> inspect ear to locate and process modules > >> - Enumeration entries = > >> earFile.entries(); > >> - while (entries.hasMoreElements()) { > >> - ModuleBuilder builder; > >> - Object moduleContextInfo = null; > >> - String moduleTypeName; > >> - ZipEntry entry = > >> entries.nextElement(); > >> - if(entry.getName().endsWith > >> (".war")) { > >> - if (getWebConfigBuilder() > >> == null) { > >> - throw new > >> DeploymentException("Cannot deploy web application; No war > >> deployer defined: " + entry.getName()); > >> - } > >> - builder = > >> getWebConfigBuilder(); > >> - moduleTypeName = "a war"; > >> - moduleContextInfo = > >> entry.getName().split(".war")[0]; > >> - } else if(entry.getName().endsWith > >> (".rar")) { > >> - if > >> (getConnectorConfigBuilder() == null) { > >> - throw new > >> DeploymentException("Cannot deploy resource adapter; No rar > >> deployer defined: " + entry.getName()); > >> - } > >> - builder = > >> getConnectorConfigBuilder(); > >> - moduleTypeName = "a > >> connector"; > >> - } else if(entry.getName().endsWith > >> (".jar") && !isLibraryEntry(application, entry)) { > >> - try { > >> - NestedJarFile > >> moduleFile = new NestedJarFile(earFile, entry.getName()); > >> - if > >> (moduleFile.getEntry("META-INF/application-client.xml") != null) { > >> - if > >> (getAppClientConfigBuilder() == null) { > >> - > >> throw new DeploymentException("Cannot deploy app client; No app > >> client deployer defined: " + entry.getName()); > >> - } > >> - builder = > >> getAppClientConfigBuilder(); > >> - > >> moduleTypeName = "an application client"; > >> - } else if > >> (moduleFile.getEntry("META-INF/ejb-jar.xml") != null) { > >> - builder = > >> getEjbConfigBuilder(); > >> - if > >> (builder == null) { > >> - > >> throw new DeploymentException("Cannot deploy ejb application; No > >> ejb deployer defined: " + entry.getName()); > >> - } > >> - > >> moduleTypeName = "an EJB"; > >> - } else { > >> - continue; > >> - } > >> - //TODO if no ejb- > >> jar.xml inspect classes for EJB component annotations to identify > >> as EJBJar module > >> - } catch (IOException e) { > >> - throw new > >> DeploymentException("Invalid moduleFile: " + entry.getName(), e); > >> - } > >> - } else { > >> - continue; > >> - } > >> - > >> - moduleLocations.add(entry.getName()); > >> - > >> - NestedJarFile moduleFile; > >> - try { > >> - moduleFile = new > >> NestedJarFile(earFile, entry.getName()); > >> - } catch (IOException e) { > >> - throw new > >> DeploymentException("Invalid moduleFile: " + entry.getName(), e); > >> - } > >> - > >> - Module module = > >> builder.createModule(altVendorDDs.get(entry.getName()), > >> - moduleFile, > >> - entry.getName(), > >> - null, > >> - environment, > >> - moduleContextInfo, > >> - earName, > >> - naming, idBuilder); > >> - > >> - if (module == null) { > >> - throw new > >> DeploymentException("Module was not " + moduleTypeName + ": " + > >> entry.getName()); > >> - } > >> - > >> - modules.add(module); > >> - } > >> - } > >> + //no application.xml available, must inspect > >> ear to locate and process modules > >> + Enumeration entries = > >> earFile.entries(); > >> + while (entries.hasMoreElements()) { > >> + ModuleBuilder builder; > >> + Object moduleContextInfo = null; > >> + String moduleTypeName; > >> + ZipEntry entry = entries.nextElement(); > >> + if (entry.getName().endsWith(".war")) { > >> + if (getWebConfigBuilder() == null) { > >> + throw new DeploymentException > >> ("Cannot deploy web application; No war deployer defined: " + > >> entry.getName()); > >> + } > >> + builder = getWebConfigBuilder(); > >> + moduleTypeName = "a war"; > >> + moduleContextInfo = entry.getName > >> ().split(".war")[0]; > >> + } else if (entry.getName().endsWith > >> (".rar")) { > >> + if (getConnectorConfigBuilder() == > >> null) { > >> + throw new DeploymentException > >> ("Cannot deploy resource adapter; No rar deployer defined: " + > >> entry.getName()); > >> + } > >> + builder = getConnectorConfigBuilder(); > >> + moduleTypeName = "a connector"; > >> + } else if (entry.getName().endsWith > >> (".jar") && !isLibraryEntry(application, entry)) { > >> + try { > >> + NestedJarFile moduleFile = new > >> NestedJarFile(earFile, entry.getName()); > >> + if (moduleFile.getEntry("META-INF/ > >> application-client.xml") != null) { > >> + if (getAppClientConfigBuilder > >> () == null) { > >> + throw new > >> DeploymentException("Cannot deploy app client; No app client > >> deployer defined: " + entry.getName()); > >> + } > >> + builder = > >> getAppClientConfigBuilder(); > >> + moduleTypeName = "an > >> application client"; > >> + } else if (moduleFile.getEntry > >> ("META-INF/ejb-jar.xml") != null) { > >> + builder = getEjbConfigBuilder(); > >> + if (builder == null) { > >> + throw new > >> DeploymentException("Cannot deploy ejb application; No ejb > >> deployer defined: " + entry.getName()); > >> + } > >> + moduleTypeName = "an EJB"; > >> + } else { > >> + continue; > >> + } > >> + //TODO if no ejb-jar.xml inspect > >> classes for EJB component annotations to identify as EJBJar module > >> + } catch (IOException e) { > >> + throw new DeploymentException > >> ("Invalid moduleFile: " + entry.getName(), e); > >> + } > >> + } else { > >> + continue; > >> + } > >> + > >> + moduleLocations.add(entry.getName()); > >> + > >> + NestedJarFile moduleFile; > >> + try { > >> + moduleFile = new NestedJarFile > >> (earFile, entry.getName()); > >> + } catch (IOException e) { > >> + throw new DeploymentException > >> ("Invalid moduleFile: " + entry.getName(), e); > >> + } > >> + > >> + Module module = builder.createModule > >> (altVendorDDs.get(entry.getName()), > >> + moduleFile, > >> + entry.getName(), > >> + null, > >> + environment, > >> + moduleContextInfo, > >> + earName, > >> + naming, idBuilder); > >> + > >> + if (module == null) { > >> + throw new DeploymentException("Module > >> was not " + moduleTypeName + ": " + entry.getName()); > >> + } > >> + > >> + modules.add(module); > >> + } > >> + } > >> } > >> > >> //all the modules in the geronimo plan should have > >> been found by now. > >> @@ -914,14 +914,14 @@ > >> } > >> } > >> } > >> - > >> - private boolean isLibraryEntry(ApplicationType > >> application, ZipEntry entry) { > >> - String libDir = getLibraryDirectory(application); > >> - if(libDir != null && entry.getName().startsWith > >> (libDir)) { > >> - return true; > >> - } > >> - return false; > >> - } > >> + > >> + private boolean isLibraryEntry(ApplicationType application, > >> ZipEntry entry) { > >> + String libDir = getLibraryDirectory(application); > >> + if (libDir != null && entry.getName().startsWith(libDir)) { > >> + return true; > >> + } > >> + return false; > >> + } > >> > >> private void mapVendorPlans(GerApplicationType > >> gerApplication, Map altVendorDDs, JarFile earFile) > >> throws DeploymentException { > >> //build map from module path to alt vendor dd > >> @@ -959,15 +959,15 @@ > >> } > >> > >> private URL getAltSpecDDURL(JarFile earFile, ModuleType > >> moduleXml) throws DeploymentException { > >> - if (moduleXml != null && moduleXml.isSetAltDd()) { > >> - try { > >> - return DeploymentUtil.createJarURL > >> (earFile, moduleXml.getAltDd().getStringValue()); > >> - } catch (MalformedURLException e) { > >> - throw new DeploymentException > >> ("Invalid alt sped dd url: " + moduleXml.getAltDd().getStringValue > >> (), e); > >> - } > >> - } > >> - return null; > >> - } > >> + if (moduleXml != null && moduleXml.isSetAltDd()) { > >> + try { > >> + return DeploymentUtil.createJarURL(earFile, > >> moduleXml.getAltDd().getStringValue()); > >> + } catch (MalformedURLException e) { > >> + throw new DeploymentException("Invalid alt sped > >> dd url: " + moduleXml.getAltDd().getStringValue(), e); > >> + } > >> + } > >> + return null; > >> + } > >> > >> private ModuleBuilder getBuilder(Module module) throws > >> DeploymentException { > >> if (module instanceof EJBModule) { > >> > >> Modified: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/ > >> main/java/org/apache/geronimo/j2ee/deployment/EJBModule.java > >> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ > >> geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/ > >> deployment/EJBModule.java?view=diff&rev=509770&r1=509769&r2=509770 > >> ===================================================================== > >> ========= > >> --- geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/ > >> java/org/apache/geronimo/j2ee/deployment/EJBModule.java (original) > >> +++ geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/ > >> java/org/apache/geronimo/j2ee/deployment/EJBModule.java Tue Feb 20 > >> 13:58:35 2007 > >> @@ -33,11 +33,9 @@ > >> */ > >> public class EJBModule extends Module { > >> private AbstractName moduleCmpEngineName; > >> - private final Map sharedContext; > >> > >> public EJBModule(boolean standAlone, AbstractName moduleName, > >> Environment environment, JarFile moduleFile, String targetPath, > >> XmlObject specDD, XmlObject vendorDD, String originalSpecDD, Map > >> sharedContext) { > >> - super(standAlone, moduleName, environment, moduleFile, > >> targetPath, specDD, vendorDD, originalSpecDD, null); > >> - this.sharedContext = sharedContext; > >> + super(standAlone, moduleName, environment, moduleFile, > >> targetPath, specDD, vendorDD, originalSpecDD, null, sharedContext); > >> } > >> > >> public ConfigurationModuleType getType() { > >> @@ -56,8 +54,5 @@ > >> this.moduleCmpEngineName = moduleCmpEngineName; > >> } > >> > >> - public Map getSharedContext() { > >> - return sharedContext; > >> - } > >> } > >> > >> > >> Modified: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/ > >> main/java/org/apache/geronimo/j2ee/deployment/Module.java > >> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ > >> geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/ > >> deployment/Module.java?view=diff&rev=509770&r1=509769&r2=509770 > >> ===================================================================== > >> ========= > >> --- geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/ > >> java/org/apache/geronimo/j2ee/deployment/Module.java (original) > >> +++ geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/ > >> java/org/apache/geronimo/j2ee/deployment/Module.java Tue Feb 20 > >> 13:58:35 2007 > >> @@ -17,6 +17,7 @@ > >> package org.apache.geronimo.j2ee.deployment; > >> > >> import java.util.jar.JarFile; > >> +import java.util.Map; > >> import java.net.URI; > >> > >> import org.apache.xmlbeans.XmlObject; > >> @@ -45,8 +46,9 @@ > >> > >> private EARContext earContext; > >> private EARContext rootEarContext; > >> + protected final Map sharedContext; > >> > >> - protected Module(boolean standAlone, AbstractName moduleName, > >> Environment environment, JarFile moduleFile, String targetPath, > >> XmlObject specDD, XmlObject vendorDD, String originalSpecDD, > >> String namespace) { > >> + protected Module(boolean standAlone, AbstractName moduleName, > >> Environment environment, JarFile moduleFile, String targetPath, > >> XmlObject specDD, XmlObject vendorDD, String originalSpecDD, > >> String namespace, Map sharedContext) { > >> assert targetPath != null: "targetPath is null"; > >> assert moduleName != null: "moduleName is null"; > >> > >> @@ -69,6 +71,7 @@ > >> } > >> > >> targetPathURI = URI.create(targetPath + "/"); > >> + this.sharedContext = sharedContext; > >> } > >> > >> public abstract ConfigurationModuleType getType(); > >> @@ -155,5 +158,9 @@ > >> > >> public void setRootEarContext(EARContext rootEarContext) { > >> this.rootEarContext = rootEarContext; > >> + } > >> + > >> + public Map getSharedContext() { > >> + return sharedContext; > >> } > >> } > >> > >> Modified: geronimo/server/trunk/modules/geronimo-j2ee-builder/src/ > >> main/java/org/apache/geronimo/j2ee/deployment/WebModule.java > >> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ > >> geronimo-j2ee-builder/src/main/java/org/apache/geronimo/j2ee/ > >> deployment/WebModule.java?view=diff&rev=509770&r1=509769&r2=509770 > >> ===================================================================== > >> ========= > >> --- geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/ > >> java/org/apache/geronimo/j2ee/deployment/WebModule.java (original) > >> +++ geronimo/server/trunk/modules/geronimo-j2ee-builder/src/main/ > >> java/org/apache/geronimo/j2ee/deployment/WebModule.java Tue Feb 20 > >> 13:58:35 2007 > >> @@ -29,12 +29,10 @@ > >> */ > >> public class WebModule extends Module { > >> private final String contextRoot; > >> - private final Map sharedContext; > >> > >> public WebModule(boolean standAlone, AbstractName moduleName, > >> Environment environment, JarFile moduleFile, String targetPath, > >> XmlObject specDD, XmlObject vendorDD, String originalSpecDD, > >> String contextRoot, Map sharedContext, String namespace) { > >> - super(standAlone, moduleName, environment, moduleFile, > >> targetPath, specDD, vendorDD, originalSpecDD, namespace); > >> + super(standAlone, moduleName, environment, moduleFile, > >> targetPath, specDD, vendorDD, originalSpecDD, namespace, > >> sharedContext); > >> this.contextRoot = contextRoot; > >> - this.sharedContext = sharedContext; > >> } > >> > >> public String getContextRoot() { > >> @@ -43,10 +41,6 @@ > >> > >> public ConfigurationModuleType getType() { > >> return ConfigurationModuleType.WAR; > >> - } > >> - > >> - public Map getSharedContext() { > >> - return sharedContext; > >> } > >> > >> } > >> > >> Modified: geronimo/server/trunk/modules/geronimo-jetty6-builder/ > >> src/main/java/org/apache/geronimo/jetty6/deployment/ > >> JettyModuleBuilder.java > >> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ > >> geronimo-jetty6-builder/src/main/java/org/apache/geronimo/jetty6/ > >> deployment/JettyModuleBuilder.java? > >> view=diff&rev=509770&r1=509769&r2=509770 > >> ===================================================================== > >> ========= > >> --- geronimo/server/trunk/modules/geronimo-jetty6-builder/src/main/ > >> java/org/apache/geronimo/jetty6/deployment/JettyModuleBuilder.java > >> (original) > >> +++ geronimo/server/trunk/modules/geronimo-jetty6-builder/src/main/ > >> java/org/apache/geronimo/jetty6/deployment/JettyModuleBuilder.java > >> Tue Feb 20 13:58:35 2007 > >> @@ -129,7 +129,6 @@ > >> private final Collection defaultFilterMappings; > >> private final GBeanData pojoWebServiceTemplate; > >> > >> - private final Collection webServiceBuilder; > >> protected final NamespaceDrivenBuilderCollection > >> clusteringBuilders; > >> > >> private final List defaultWelcomeFiles; > >> @@ -153,7 +152,7 @@ > >> NamingBuilder namingBuilders, > >> ResourceEnvironmentSetter resourceEnvironmentSetter, > >> Kernel kernel) throws GBeanNotFoundException { > >> - super(kernel, securityBuilders, serviceBuilders, > >> namingBuilders, resourceEnvironmentSetter); > >> + super(kernel, securityBuilders, serviceBuilders, > >> namingBuilders, resourceEnvironmentSetter, webServiceBuilder); > >> this.defaultEnvironment = defaultEnvironment; > >> this.defaultSessionTimeoutSeconds = > >> (defaultSessionTimeoutSeconds == null) ? new Integer(30 * 60) : > >> defaultSessionTimeoutSeconds; > >> this.jettyContainerObjectName = jettyContainerName; > >> @@ -162,7 +161,6 @@ > >> this.defaultFilters = defaultFilters; > >> this.defaultFilterMappings = defaultFilterMappings; > >> this.pojoWebServiceTemplate = getGBeanData(kernel, > >> pojoWebServiceTemplate); > >> - this.webServiceBuilder = webServiceBuilder; > >> this.clusteringBuilders = new > >> NamespaceDrivenBuilderCollection(clusteringBuilders, > >> GerClusteringDocument.type.getDocumentElementName()); > >> > >> //todo locale mappings > >> @@ -233,8 +231,6 @@ > >> clusteringBuilders.buildEnvironment(jettyWebApp, > >> environment); > >> } > >> > >> - getNamingBuilders().buildEnvironment(webApp, jettyWebApp, > >> environment); > >> - > >> // Note: logic elsewhere depends on the default artifact > >> ID being the file name less extension (ConfigIDExtractor) > >> String warName = new File(moduleFile.getName()).getName(); > >> if (warName.lastIndexOf('.') > -1) { > >> @@ -242,13 +238,6 @@ > >> } > >> idBuilder.resolve(environment, warName, "war"); > >> > >> - Map servletNameToPathMap = buildServletNameToPathMap > >> (webApp, contextRoot); > >> - > >> - Map sharedContext = new HashMap(); > >> - for (Iterator iterator = webServiceBuilder.iterator(); > >> iterator.hasNext();) { > >> - WebServiceBuilder serviceBuilder = > >> (WebServiceBuilder) iterator.next(); > >> - serviceBuilder.findWebServices(moduleFile, false, > >> servletNameToPathMap, environment, sharedContext); > >> - } > >> AbstractName moduleName; > >> if (earName == null) { > >> earName = naming.createRootName > >> (environment.getConfigId(), NameFactory.NULL, > >> NameFactory.J2EE_APPLICATION); > >> @@ -257,7 +246,7 @@ > >> moduleName = naming.createChildName(earName, > >> targetPath, NameFactory.WEB_MODULE); > >> } > >> > >> - return new WebModule(standAlone, moduleName, environment, > >> moduleFile, targetPath, webApp, jettyWebApp, specDD, contextRoot, > >> sharedContext, JETTY_NAMESPACE); > >> + return new WebModule(standAlone, moduleName, environment, > >> moduleFile, targetPath, webApp, jettyWebApp, specDD, contextRoot, > >> new HashMap(), JETTY_NAMESPACE); > >> } > >> > >> JettyWebAppType getJettyWebApp(Object plan, JarFile > >> moduleFile, boolean standAlone, String targetPath, WebAppType > >> webApp) throws DeploymentException { > >> @@ -317,7 +306,6 @@ > >> // GerMessageDestinationType[] gerMessageDestinations = > >> gerWebApp.getMessageDestinationArray(); > >> > >> // ENCConfigBuilder.registerMessageDestinations > >> (earContext, module.getName(), messageDestinations, > >> gerMessageDestinations); > >> - getNamingBuilders().initContext(webApp, gerWebApp, > >> module.getEarContext().getConfiguration(), > >> earContext.getConfiguration(), module); > >> if ((webApp.getSecurityConstraintArray().length > 0 || > >> webApp.getSecurityRoleArray().length > 0) && > >> !gerWebApp.isSetSecurityRealmName()) { > >> throw new DeploymentException("web.xml for web app " > >> + module.getName() + " includes security elements but Geronimo > >> deployment plan is not provided or does not contain >> realm-name> element necessary to configure security accordingly."); > >> > >> Modified: geronimo/server/trunk/modules/geronimo-openejb-builder/ > >> src/main/java/org/apache/geronimo/openejb/deployment/ > >> EjbModuleBuilder.java > >> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ > >> geronimo-openejb-builder/src/main/java/org/apache/geronimo/openejb/ > >> deployment/EjbModuleBuilder.java? > >> view=diff&rev=509770&r1=509769&r2=509770 > >> ===================================================================== > >> ========= > >> --- geronimo/server/trunk/modules/geronimo-openejb-builder/src/ > >> main/java/org/apache/geronimo/openejb/deployment/ > >> EjbModuleBuilder.java (original) > >> +++ geronimo/server/trunk/modules/geronimo-openejb-builder/src/ > >> main/java/org/apache/geronimo/openejb/deployment/ > >> EjbModuleBuilder.java Tue Feb 20 13:58:35 2007 > >> @@ -230,9 +230,6 @@ > >> idBuilder.resolve(environment, new File > >> (moduleFile.getName()).getName(), "jar"); > >> } > >> > >> - if (ejbModule.getEjbJar().getAssemblyDescriptor() != null) { > >> - namingBuilder.buildEnvironment(null, null, environment); > >> - } > >> > >> Map sharedContext = new HashMap(); > >> > >> @@ -329,6 +326,9 @@ > >> } > >> module.setEarContext(moduleContext); > >> module.setRootEarContext(earContext); > >> + if (((EjbModule)module).getEjbJar().getAssemblyDescriptor > >> () != null) { > >> + namingBuilder.buildEnvironment(null, null, > >> module.getEnvironment()); > >> + } > >> for (ModuleBuilderExtension builder : > >> moduleBuilderExtensions) { > >> try { > >> builder.installModule(earFile, earContext, > >> module, configurationStores, targetConfigurationStore, repository); > >> > >> Modified: geronimo/server/trunk/modules/geronimo-tomcat6-builder/ > >> src/main/java/org/apache/geronimo/tomcat/deployment/ > >> TomcatModuleBuilder.java > >> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ > >> geronimo-tomcat6-builder/src/main/java/org/apache/geronimo/tomcat/ > >> deployment/TomcatModuleBuilder.java? > >> view=diff&rev=509770&r1=509769&r2=509770 > >> ===================================================================== > >> ========= > >> --- geronimo/server/trunk/modules/geronimo-tomcat6-builder/src/ > >> main/java/org/apache/geronimo/tomcat/deployment/ > >> TomcatModuleBuilder.java (original) > >> +++ geronimo/server/trunk/modules/geronimo-tomcat6-builder/src/ > >> main/java/org/apache/geronimo/tomcat/deployment/ > >> TomcatModuleBuilder.java Tue Feb 20 13:58:35 2007 > >> @@ -94,8 +94,6 @@ > >> private final Environment defaultEnvironment; > >> private final AbstractNameQuery tomcatContainerName; > >> > >> - private final Collection webServiceBuilder; > >> - > >> private static final String TOMCAT_NAMESPACE = > >> TomcatWebAppDocument.type.getDocumentElementName().getNamespaceURI(); > >> > >> public TomcatModuleBuilder(Environment defaultEnvironment, > >> @@ -106,11 +104,10 @@ > >> NamingBuilder namingBuilders, > >> ResourceEnvironmentSetter resourceEnvironmentSetter, > >> Kernel kernel) { > >> - super(kernel, securityBuilders, serviceBuilders, > >> namingBuilders, resourceEnvironmentSetter); > >> + super(kernel, securityBuilders, serviceBuilders, > >> namingBuilders, resourceEnvironmentSetter, webServiceBuilder); > >> this.defaultEnvironment = defaultEnvironment; > >> > >> this.tomcatContainerName = tomcatContainerName; > >> - this.webServiceBuilder = webServiceBuilder; > >> } > >> > >> protected Module createModule(Object plan, JarFile > >> moduleFile, String targetPath, URL specDDUrl, boolean standAlone, > >> String contextRoot, AbstractName earName, Naming naming, > >> ModuleIDBuilder idBuilder) throws DeploymentException { > >> @@ -186,13 +183,6 @@ > >> } > >> idBuilder.resolve(environment, warName, "war"); > >> > >> - Map servletNameToPathMap = buildServletNameToPathMap > >> (webApp, contextRoot); > >> - > >> - Map sharedContext = new HashMap(); > >> - for (Iterator iterator = webServiceBuilder.iterator(); > >> iterator.hasNext();) { > >> - WebServiceBuilder serviceBuilder = > >> (WebServiceBuilder) iterator.next(); > >> - serviceBuilder.findWebServices(moduleFile, false, > >> servletNameToPathMap, environment, sharedContext); > >> - } > >> AbstractName moduleName; > >> if (earName == null) { > >> earName = naming.createRootName > >> (environment.getConfigId(), NameFactory.NULL, > >> NameFactory.J2EE_APPLICATION); > >> @@ -201,7 +191,7 @@ > >> moduleName = naming.createChildName(earName, > >> targetPath, NameFactory.WEB_MODULE); > >> } > >> > >> - return new WebModule(standAlone, moduleName, environment, > >> moduleFile, targetPath, webApp, tomcatWebApp, specDD, contextRoot, > >> sharedContext, TOMCAT_NAMESPACE); > >> + return new WebModule(standAlone, moduleName, environment, > >> moduleFile, targetPath, webApp, tomcatWebApp, specDD, contextRoot, > >> new HashMap(), TOMCAT_NAMESPACE); > >> } > >> > >> > >> > >> Modified: geronimo/server/trunk/modules/geronimo-web-2.5-builder/ > >> src/main/java/org/apache/geronimo/web25/deployment/ > >> AbstractWebModuleBuilder.java > >> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ > >> geronimo-web-2.5-builder/src/main/java/org/apache/geronimo/web25/ > >> deployment/AbstractWebModuleBuilder.java? > >> view=diff&rev=509770&r1=509769&r2=509770 > >> ===================================================================== > >> ========= > >> --- geronimo/server/trunk/modules/geronimo-web-2.5-builder/src/ > >> main/java/org/apache/geronimo/web25/deployment/ > >> AbstractWebModuleBuilder.java (original) > >> +++ geronimo/server/trunk/modules/geronimo-web-2.5-builder/src/ > >> main/java/org/apache/geronimo/web25/deployment/ > >> AbstractWebModuleBuilder.java Tue Feb 20 13:58:35 2007 > >> @@ -33,6 +33,7 @@ > >> import java.util.LinkedList; > >> import java.util.Map; > >> import java.util.Set; > >> +import java.util.Iterator; > >> import java.util.jar.JarEntry; > >> import java.util.jar.JarFile; > >> import java.util.zip.ZipEntry; > >> @@ -56,6 +57,8 @@ > >> import org.apache.geronimo.j2ee.deployment.Module; > >> import org.apache.geronimo.j2ee.deployment.ModuleBuilder; > >> import org.apache.geronimo.j2ee.deployment.NamingBuilder; > >> +import org.apache.geronimo.j2ee.deployment.WebServiceBuilder; > >> +import org.apache.geronimo.j2ee.deployment.WebModule; > >> import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory; > >> import org.apache.geronimo.kernel.Kernel; > >> import org.apache.geronimo.kernel.Naming; > >> @@ -105,6 +108,7 @@ > >> protected final NamespaceDrivenBuilderCollection > >> securityBuilders; > >> protected final NamespaceDrivenBuilderCollection > >> serviceBuilders; > >> protected final ResourceEnvironmentSetter > >> resourceEnvironmentSetter; > >> + protected final Collection webServiceBuilder; > >> > >> protected final NamingBuilder namingBuilders; > >> > >> @@ -118,12 +122,13 @@ > >> */ > >> private static final URI RELATIVE_MODULE_BASE_URI = URI.create > >> ("../"); > >> > >> - protected AbstractWebModuleBuilder(Kernel kernel, Collection > >> securityBuilders, Collection serviceBuilders, NamingBuilder > >> namingBuilders, ResourceEnvironmentSetter > >> resourceEnvironmentSetter) { > >> + protected AbstractWebModuleBuilder(Kernel kernel, Collection > >> securityBuilders, Collection serviceBuilders, NamingBuilder > >> namingBuilders, ResourceEnvironmentSetter > >> resourceEnvironmentSetter, Collection webServiceBuilder) { > >> this.kernel = kernel; > >> this.securityBuilders = new > >> NamespaceDrivenBuilderCollection(securityBuilders, SECURITY_QNAME); > >> this.serviceBuilders = new > >> NamespaceDrivenBuilderCollection(serviceBuilders, SERVICE_QNAME); > >> this.namingBuilders = namingBuilders; > >> this.resourceEnvironmentSetter = resourceEnvironmentSetter; > >> + this.webServiceBuilder = webServiceBuilder; > >> } > >> > >> static { > >> @@ -655,6 +660,17 @@ > >> XmlObject[] securityElements = > >> XmlBeansUtil.selectSubstitutionGroupElements(SECURITY_QNAME, > >> gerWebApp); > >> if (securityElements.length > 0 && !hasSecurityRealmName) { > >> throw new DeploymentException("You have supplied a > >> security configuration for web app " + module.getName() + " but no > >> security-realm-name to allow login"); > >> + } > >> + getNamingBuilders().buildEnvironment(module.getSpecDD(), > >> module.getVendorDD(), module.getEnvironment()); > >> + //this is silly > >> + getNamingBuilders().initContext(module.getSpecDD(), > >> gerWebApp, module.getEarContext().getConfiguration(), > >> earContext.getConfiguration(), module); > >> + > >> + Map servletNameToPathMap = buildServletNameToPathMap > >> ((WebAppType) module.getSpecDD(), ((WebModule) > >> module).getContextRoot()); > >> + > >> + Map sharedContext = module.getSharedContext(); > >> + for (Iterator iterator = webServiceBuilder.iterator(); > >> iterator.hasNext();) { > >> + WebServiceBuilder serviceBuilder = > >> (WebServiceBuilder) iterator.next(); > >> + serviceBuilder.findWebServices(module.getModuleFile > >> (), false, servletNameToPathMap, module.getEnvironment(), > >> sharedContext); > >> } > >> securityBuilders.build(gerWebApp, earContext, > >> module.getEarContext()); > >> serviceBuilders.build(gerWebApp, earContext, > >> module.getEarContext()); > >> > >> Modified: geronimo/server/trunk/modules/geronimo-web-2.5-builder/ > >> src/test/java/org/apache/geronimo/web25/deployment/ > >> SchemaConversionTest.java > >> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ > >> geronimo-web-2.5-builder/src/test/java/org/apache/geronimo/web25/ > >> deployment/SchemaConversionTest.java? > >> view=diff&rev=509770&r1=509769&r2=509770 > >> ===================================================================== > >> ========= > >> --- geronimo/server/trunk/modules/geronimo-web-2.5-builder/src/ > >> test/java/org/apache/geronimo/web25/deployment/ > >> SchemaConversionTest.java (original) > >> +++ geronimo/server/trunk/modules/geronimo-web-2.5-builder/src/ > >> test/java/org/apache/geronimo/web25/deployment/ > >> SchemaConversionTest.java Tue Feb 20 13:58:35 2007 > >> @@ -21,6 +21,7 @@ > >> import java.util.List; > >> import java.util.ArrayList; > >> import java.util.Collection; > >> +import java.util.Collections; > >> import java.util.jar.JarFile; > >> > >> import org.apache.geronimo.testsupport.XmlBeansTestSupport; > >> @@ -127,7 +128,7 @@ > >> private static class WebModuleBuilder extends > >> AbstractWebModuleBuilder { > >> > >> protected WebModuleBuilder(Kernel kernel) { > >> - super(kernel, null, null, null, null); > >> + super(kernel, null, null, null, null, > >> Collections.EMPTY_SET); > >> } > >> > >> protected Module createModule(Object plan, JarFile > >> moduleFile, String targetPath, URL specDDUrl, boolean standAlone, > >> String contextRoot, AbstractName earName, Naming naming, > >> ModuleIDBuilder idBuilder) throws DeploymentException { > >> > >> Modified: geronimo/server/trunk/modules/geronimo-web-2.5-builder/ > >> src/test/java/org/apache/geronimo/web25/deployment/ > >> SecurityConfigTest.java > >> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ > >> geronimo-web-2.5-builder/src/test/java/org/apache/geronimo/web25/ > >> deployment/SecurityConfigTest.java? > >> view=diff&rev=509770&r1=509769&r2=509770 > >> ===================================================================== > >> ========= > >> --- geronimo/server/trunk/modules/geronimo-web-2.5-builder/src/ > >> test/java/org/apache/geronimo/web25/deployment/ > >> SecurityConfigTest.java (original) > >> +++ geronimo/server/trunk/modules/geronimo-web-2.5-builder/src/ > >> test/java/org/apache/geronimo/web25/deployment/ > >> SecurityConfigTest.java Tue Feb 20 13:58:35 2007 > >> @@ -23,6 +23,7 @@ > >> import java.util.HashMap; > >> import java.util.Map; > >> import java.util.Set; > >> +import java.util.Collections; > >> import java.util.jar.JarFile; > >> > >> import org.apache.geronimo.common.DeploymentException; > >> @@ -84,7 +85,7 @@ > >> private static class WebModuleBuilder extends > >> AbstractWebModuleBuilder { > >> > >> protected WebModuleBuilder(Kernel kernel) { > >> - super(kernel, null, null, null, null); > >> + super(kernel, null, null, null, null, > >> Collections.EMPTY_SET); > >> } > >> > >> protected Module createModule(Object plan, JarFile > >> moduleFile, > >> > >> Modified: geronimo/server/trunk/modules/geronimo-web-2.5-builder/ > >> src/test/java/org/apache/geronimo/web25/deployment/ > >> SpecSecurityParsingTest.java > >> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/modules/ > >> geronimo-web-2.5-builder/src/test/java/org/apache/geronimo/web25/ > >> deployment/SpecSecurityParsingTest.java? > >> view=diff&rev=509770&r1=509769&r2=509770 > >> ===================================================================== > >> ========= > >> --- geronimo/server/trunk/modules/geronimo-web-2.5-builder/src/ > >> test/java/org/apache/geronimo/web25/deployment/ > >> SpecSecurityParsingTest.java (original) > >> +++ geronimo/server/trunk/modules/geronimo-web-2.5-builder/src/ > >> test/java/org/apache/geronimo/web25/deployment/ > >> SpecSecurityParsingTest.java Tue Feb 20 13:58:35 2007 > >> @@ -26,6 +26,7 @@ > >> import java.util.HashSet; > >> import java.util.Map; > >> import java.util.HashMap; > >> +import java.util.Collections; > >> import java.util.jar.JarFile; > >> import java.security.PermissionCollection; > >> > >> @@ -45,7 +46,7 @@ > >> import org.apache.xmlbeans.XmlObject; > >> > >> /** > >> - * @version $Rev:$ $Date:$ > >> + * @version $Rev$ $Date$ > >> */ > >> public class SpecSecurityParsingTest extends TestCase { > >> > >> @@ -73,7 +74,7 @@ > >> public static class TestWebModuleBuilder extends > >> AbstractWebModuleBuilder { > >> > >> protected TestWebModuleBuilder() { > >> - super(null, null, null, null, null); > >> + super(null, null, null, null, null, > >> Collections.EMPTY_SET); > >> } > >> > >> protected Module createModule(Object plan, JarFile > >> moduleFile, String targetPath, URL specDDUrl, boolean standAlone, > >> String contextRoot, AbstractName earName, Naming naming, > >> ModuleIDBuilder idBuilder) throws DeploymentException { > >> > >> > >> > >> >> > > >