Return-Path: Delivered-To: apmail-incubator-geronimo-cvs-archive@www.apache.org Received: (qmail 57330 invoked from network); 8 Nov 2003 08:02:13 -0000 Received: from daedalus.apache.org (HELO mail.apache.org) (208.185.179.12) by minotaur-2.apache.org with SMTP; 8 Nov 2003 08:02:13 -0000 Received: (qmail 33515 invoked by uid 500); 8 Nov 2003 08:01:48 -0000 Delivered-To: apmail-incubator-geronimo-cvs-archive@incubator.apache.org Received: (qmail 33487 invoked by uid 500); 8 Nov 2003 08:01:48 -0000 Mailing-List: contact geronimo-cvs-help@incubator.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: list-post: Reply-To: geronimo-dev@incubator.apache.org Delivered-To: mailing list geronimo-cvs@incubator.apache.org Received: (qmail 33474 invoked from network); 8 Nov 2003 08:01:48 -0000 Received: from unknown (HELO minotaur.apache.org) (209.237.227.194) by daedalus.apache.org with SMTP; 8 Nov 2003 08:01:48 -0000 Received: (qmail 57305 invoked by uid 1714); 8 Nov 2003 08:02:11 -0000 Date: 8 Nov 2003 08:02:11 -0000 Message-ID: <20031108080211.57304.qmail@minotaur.apache.org> From: janb@apache.org To: incubator-geronimo-cvs@apache.org Subject: cvs commit: incubator-geronimo/modules/web/src/java/org/apache/geronimo/web AbstractWebContainer.java X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N janb 2003/11/08 00:02:10 Modified: modules/web/src/java/org/apache/geronimo/web AbstractWebContainer.java Log: Support deployment of exploded wars so that it works with the current FileScanner strategy. Revision Changes Path 1.12 +34 -1 incubator-geronimo/modules/web/src/java/org/apache/geronimo/web/AbstractWebContainer.java Index: AbstractWebContainer.java =================================================================== RCS file: /home/cvs/incubator-geronimo/modules/web/src/java/org/apache/geronimo/web/AbstractWebContainer.java,v retrieving revision 1.11 retrieving revision 1.12 diff -u -r1.11 -r1.12 --- AbstractWebContainer.java 30 Oct 2003 07:47:05 -0000 1.11 +++ AbstractWebContainer.java 8 Nov 2003 08:02:10 -0000 1.12 @@ -56,8 +56,10 @@ package org.apache.geronimo.web; +import java.io.File; import java.io.InputStream; import java.io.IOException; +import java.net.MalformedURLException; import java.net.URI; import java.net.URL; import java.util.ArrayList; @@ -387,6 +389,37 @@ throw new DeploymentException( "Failed to close stream for URL: " + url, iox); } } + } + else if (type == URLType.RESOURCE) + { + //we will try and deploy a WEB-INF/web.xml by looking for the parent directory + if (!url.getPath().endsWith("web.xml")) + return false; + + try + { + File file = new File (url.toExternalForm()); + + if (!file.exists()) + throw new DeploymentException ("No such file:"+url); + + File parent = file.getParentFile(); + if (!parent.getName().equals("WEB-INF")) + throw new DeploymentException ("web.xml must be in WEB-INF directory"); + + // find the parent dir of WEB-INF and try to deploy that + parent = parent.getParentFile(); + url = parent.toURL(); + } + catch (NullPointerException e) + { + throw new DeploymentException ("No path to web.xml file", e); + } + catch (MalformedURLException e) + { + throw new DeploymentException ("Bad url for possible webapp directory", e); + } + } else {