Author: apetrelli
Date: Sun Jul 13 02:03:32 2008
New Revision: 676285

URL: http://svn.apache.org/viewvc?rev=676285&view=rev
Log:
TILES-84
Using Spring to resolve wildcard-specified resources and paths for portlets.
Added missing "package.html" in a new package in tiles-servlet.

Added:
    
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/
    
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesApplicationContext.java
   (with props)
    
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesContextFactory.java
   (with props)
    
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/package.html
   (with props)
    
tiles/framework/trunk/tiles-portlet/src/test/java/org/apache/tiles/portlet/context/wildcard/
    
tiles/framework/trunk/tiles-portlet/src/test/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesApplicationContextTest.java
   (with props)
    
tiles/framework/trunk/tiles-portlet/src/test/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesContextFactoryTest.java
   (with props)
    
tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/wildcard/package.html
   (with props)
Modified:
    tiles/framework/trunk/tiles-portlet/pom.xml
    
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/PortletTilesApplicationContext.java

Modified: tiles/framework/trunk/tiles-portlet/pom.xml
URL: 
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-portlet/pom.xml?rev=676285&r1=676284&r2=676285&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-portlet/pom.xml (original)
+++ tiles/framework/trunk/tiles-portlet/pom.xml Sun Jul 13 02:03:32 2008
@@ -127,6 +127,26 @@
     </dependency>
 
     <dependency>
+      <groupId>org.springframework</groupId>
+      <artifactId>spring-web</artifactId>
+      <version>2.5.5</version>
+      <optional>true</optional>
+    </dependency>
+
+    <dependency>
+      <groupId>org.springframework</groupId>
+      <artifactId>spring-webmvc-portlet</artifactId>
+      <version>2.5.5</version>
+      <optional>true</optional>
+      <exclusions>
+        <exclusion>
+          <groupId>org.springframework</groupId>
+          <artifactId>spring-webmvc</artifactId>
+        </exclusion>
+      </exclusions>
+    </dependency>
+
+    <dependency>
       <groupId>javax.portlet</groupId>
       <artifactId>portlet-api</artifactId>
       <version>1.0</version>

Modified: 
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/PortletTilesApplicationContext.java
URL: 
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/PortletTilesApplicationContext.java?rev=676285&r1=676284&r2=676285&view=diff
==============================================================================
--- 
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/PortletTilesApplicationContext.java
 (original)
+++ 
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/PortletTilesApplicationContext.java
 Sun Jul 13 02:03:32 2008
@@ -26,7 +26,8 @@
 import javax.portlet.PortletContext;
 import javax.portlet.PortletRequest;
 import javax.portlet.PortletResponse;
-import java.net.MalformedURLException;
+
+import java.io.IOException;
 import java.net.URL;
 import java.util.Map;
 import java.util.Set;
@@ -133,12 +134,12 @@
 
 
     /** [EMAIL PROTECTED] */
-    public URL getResource(String path) throws MalformedURLException {
+    public URL getResource(String path) throws IOException {
         return context.getResource(path);
     }
 
     /** [EMAIL PROTECTED] */
-    public Set<URL> getResources(String path) throws MalformedURLException {
+    public Set<URL> getResources(String path) throws IOException {
         HashSet<URL> set = new HashSet<URL>();
         set.add(getResource(path));
         return set;

Added: 
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesApplicationContext.java
URL: 
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesApplicationContext.java?rev=676285&view=auto
==============================================================================
--- 
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesApplicationContext.java
 (added)
+++ 
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesApplicationContext.java
 Sun Jul 13 02:03:32 2008
@@ -0,0 +1,95 @@
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.tiles.portlet.context.wildcard;
+
+import java.io.IOException;
+import java.net.URL;
+import java.util.HashSet;
+import java.util.Set;
+
+import javax.portlet.PortletContext;
+
+import org.apache.tiles.portlet.context.PortletTilesApplicationContext;
+import org.springframework.core.io.Resource;
+import org.springframework.core.io.support.ResourcePatternResolver;
+import 
org.springframework.web.portlet.context.PortletContextResourcePatternResolver;
+
+/**
+ * Portlet-based implementation of the TilesApplicationContext interface that
+ * can resolve resources even using wildcards.
+ *
+ * @version $Rev$ $Date$
+ * @since 2.1.0
+ */
+public class WildcardPortletTilesApplicationContext extends
+        PortletTilesApplicationContext {
+
+    /**
+     * The pattern resolver.
+     *
+     * @since 2.1.0
+     */
+    protected ResourcePatternResolver resolver;
+
+    /**
+     * Constructor.
+     *
+     * @param portletContext The portlet context.
+     * @since 2.1.0
+     */
+    public WildcardPortletTilesApplicationContext(PortletContext 
portletContext) {
+        super(portletContext);
+    }
+
+    /** [EMAIL PROTECTED] */
+    @Override
+    public void initialize(PortletContext context) {
+        super.initialize(context);
+
+        resolver = new PortletContextResourcePatternResolver(context);
+    }
+
+    /** [EMAIL PROTECTED] */
+    @Override
+    public URL getResource(String path) throws IOException {
+        URL retValue = null;
+        Set<URL> urlSet = getResources(path);
+        if (urlSet != null && !urlSet.isEmpty()) {
+            retValue = urlSet.iterator().next();
+        }
+        return retValue;
+    }
+
+    /** [EMAIL PROTECTED] */
+    @Override
+    public Set<URL> getResources(String path) throws IOException {
+        Set<URL> urlSet = null;
+        Resource[] resources = resolver.getResources(path);
+        if (resources != null && resources.length > 0) {
+            urlSet = new HashSet<URL>();
+            for (int i = 0; i < resources.length; i++) {
+                urlSet.add(resources[i].getURL());
+            }
+        }
+        return urlSet;
+    }
+}

Propchange: 
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesApplicationContext.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesApplicationContext.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: 
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesContextFactory.java
URL: 
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesContextFactory.java?rev=676285&view=auto
==============================================================================
--- 
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesContextFactory.java
 (added)
+++ 
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesContextFactory.java
 Sun Jul 13 02:03:32 2008
@@ -0,0 +1,48 @@
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.tiles.portlet.context.wildcard;
+
+import javax.portlet.PortletContext;
+
+import org.apache.tiles.TilesApplicationContext;
+import org.apache.tiles.portlet.context.PortletTilesContextFactory;
+
+/**
+ * Acts like [EMAIL PROTECTED] ServletTilesContextFactory}, except in the
+ * [EMAIL PROTECTED] #createApplicationContext(Object)} method that creates an 
instance of
+ * [EMAIL PROTECTED] WildcardPortletTilesApplicationContext}.
+ *
+ * @version $Rev$ $Date$
+ */
+public class WildcardPortletTilesContextFactory extends
+        PortletTilesContextFactory {
+
+    /** [EMAIL PROTECTED] */
+    @Override
+    public TilesApplicationContext createApplicationContext(Object context) {
+        if (context instanceof PortletContext) {
+            PortletContext portletContext = (PortletContext) context;
+            return new WildcardPortletTilesApplicationContext(portletContext);
+        }
+        return null;
+    }
+}

Propchange: 
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesContextFactory.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesContextFactory.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: 
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/package.html
URL: 
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/package.html?rev=676285&view=auto
==============================================================================
--- 
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/package.html
 (added)
+++ 
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/package.html
 Sun Jul 13 02:03:32 2008
@@ -0,0 +1,32 @@
+<!--
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+-->
+<html>
+<head>
+    <title>Tiles portlet-specific context package with wildcard support</title>
+</head>
+<body>
+Classes and interfaces that allow to access the various contexts from a portlet
+application. These classes can manage resource getting through the use of
+Spring-like wildcards patterns.
+</body>
+</html>
\ No newline at end of file

Propchange: 
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/package.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/package.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: 
tiles/framework/trunk/tiles-portlet/src/test/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesApplicationContextTest.java
URL: 
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-portlet/src/test/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesApplicationContextTest.java?rev=676285&view=auto
==============================================================================
--- 
tiles/framework/trunk/tiles-portlet/src/test/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesApplicationContextTest.java
 (added)
+++ 
tiles/framework/trunk/tiles-portlet/src/test/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesApplicationContextTest.java
 Sun Jul 13 02:03:32 2008
@@ -0,0 +1,158 @@
+/*
+ * $Id: WildcardServletTilesApplicationContextTest.java 676174 2008-07-12 
13:01:03Z apetrelli $
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.tiles.portlet.context.wildcard;
+
+import junit.framework.TestCase;
+import org.easymock.EasyMock;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.util.Enumeration;
+import java.util.Set;
+import java.util.Vector;
+import java.util.HashSet;
+
+import javax.portlet.PortletContext;
+
+
+/**
+ * Tests [EMAIL PROTECTED] WildcardPortletTilesApplicationContext}.
+ *
+ * @version $Rev: 676174 $ $Date: 2008-07-12 15:01:03 +0200 (sab, 12 lug 2008) 
$
+ */
+public class WildcardPortletTilesApplicationContextTest extends TestCase {
+
+    /**
+     * Number of properties container inside the test.properties file.
+     */
+    private static final int TEST_PROPERTIES_SIZE = 3;
+
+    /**
+     * Number of test classes.
+     */
+    private static final int TEST_TEST_SIZE = 2;
+
+    /**
+     * The root Tiles application context.
+     */
+    private PortletContext portletContext;
+
+    /**
+     * The enhanced Tiles application context.
+     */
+    private WildcardPortletTilesApplicationContext context;
+
+    /**
+     * The original class loader.
+     */
+    private ClassLoader original;
+
+    /** [EMAIL PROTECTED] */
+    @Override
+    public void setUp() {
+        portletContext = EasyMock.createMock(PortletContext.class);
+        original = Thread.currentThread().getContextClassLoader();
+        try {
+            Thread.currentThread().setContextClassLoader(new 
MockClassLoader());
+        } catch (MalformedURLException e) {
+            throw new RuntimeException("Error when using the mock 
classloader");
+        }
+        context = new WildcardPortletTilesApplicationContext(portletContext);
+    }
+
+    /** [EMAIL PROTECTED] */
+    @Override
+    protected void tearDown() throws Exception {
+        Thread.currentThread().setContextClassLoader(original);
+    }
+
+    /**
+     * Tests resource getting.
+     *
+     * @throws IOException If something goes wrong.
+     */
+    public void testGetResources() throws IOException {
+        String url = "test.properties";
+        HashSet<URL> set = new HashSet<URL>();
+        URL u = new URL("file://tiles/test.properties");
+        set.add(u);
+        EasyMock.expect(portletContext.getResource("/" + url)).andReturn(u)
+                .anyTimes();
+        File dir = new File(".");
+        EasyMock.expect(portletContext.getResource("/WEB-INF/")).andReturn(
+                dir.toURI().toURL());
+        URL pomUrl = new URL("file://tiles/pom.xml");
+        EasyMock.expect(portletContext.getResource("/WEB-INF/pom.xml"))
+                .andReturn(pomUrl);
+        Set<String> elementSet = new HashSet<String>();
+        elementSet.add("/WEB-INF/pom.xml");
+        
EasyMock.expect(portletContext.getResourcePaths("/WEB-INF/")).andReturn(elementSet);
+        EasyMock.replay(portletContext);
+
+        assertEquals(u, context.getResource("/" + url));
+        assertEquals(pomUrl, context.getResource("/WEB-INF/*.xml"));
+        assertEquals(TEST_PROPERTIES_SIZE, context.getResources(
+                "classpath*:/test.properties").size());
+
+        assertEquals(TEST_TEST_SIZE, context.getResources(
+                
"classpath*:/org/apache/tiles/portlet/context/wildcard/*Test.class").size());
+        EasyMock.verify(portletContext);
+    }
+
+    /**
+     * An mock class loader.
+     */
+    public class MockClassLoader extends ClassLoader {
+
+        /**
+         * A vector of resources.
+         */
+        private Vector<URL> testPropertiesResources;
+
+        /**
+         * Constructor.
+         *
+         * @throws MalformedURLException If the URL is not valid (that should
+         * not happen).
+         */
+        public MockClassLoader() throws MalformedURLException {
+            testPropertiesResources = new Vector<URL>();
+            testPropertiesResources.add(new 
URL("file://tiles/test/test.properties"));
+            testPropertiesResources.add(new 
URL("file://tiles/two/test.properties"));
+            testPropertiesResources.add(new 
URL("file://tiles/three/test.properties"));
+        }
+
+        /** [EMAIL PROTECTED] */
+        @Override
+        public Enumeration<URL> findResources(String path) throws IOException {
+            Enumeration<URL> retValue = null;
+            if ("test.properties".equals(path)) {
+                retValue = testPropertiesResources.elements();
+            } else {
+                retValue = super.findResources(path);
+            }
+
+            return retValue;
+        }
+    }
+}

Propchange: 
tiles/framework/trunk/tiles-portlet/src/test/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesApplicationContextTest.java
------------------------------------------------------------------------------
    svn:mergeinfo = 

Added: 
tiles/framework/trunk/tiles-portlet/src/test/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesContextFactoryTest.java
URL: 
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-portlet/src/test/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesContextFactoryTest.java?rev=676285&view=auto
==============================================================================
--- 
tiles/framework/trunk/tiles-portlet/src/test/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesContextFactoryTest.java
 (added)
+++ 
tiles/framework/trunk/tiles-portlet/src/test/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesContextFactoryTest.java
 Sun Jul 13 02:03:32 2008
@@ -0,0 +1,64 @@
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.tiles.portlet.context.wildcard;
+
+import javax.portlet.PortletContext;
+
+import org.apache.tiles.TilesApplicationContext;
+import org.easymock.EasyMock;
+
+import junit.framework.TestCase;
+
+/**
+ * Tests [EMAIL PROTECTED] WildcardPortletTilesContextFactory}.
+ */
+public class WildcardPortletTilesContextFactoryTest extends TestCase {
+
+    /**
+     * The factory to test.
+     */
+    private WildcardPortletTilesContextFactory factory;
+
+    /**
+     * The servlet context.
+     */
+    private PortletContext servletContext;
+
+    /** [EMAIL PROTECTED] */
+    public void setUp() {
+        servletContext = EasyMock.createMock(PortletContext.class);
+        factory = new WildcardPortletTilesContextFactory();
+        EasyMock.replay(servletContext);
+    }
+
+    /**
+     * Test method for
+     * [EMAIL PROTECTED] 
org.apache.tiles.servlet.context.wildcard.WildcardPortletTilesContextFactory
+     * #createApplicationContext(java.lang.Object)}.
+     */
+    public void testCreateApplicationContext() {
+        TilesApplicationContext context = factory
+                .createApplicationContext(servletContext);
+        assertTrue("The class of the application context is not correct",
+                context instanceof WildcardPortletTilesApplicationContext);
+    }
+}

Propchange: 
tiles/framework/trunk/tiles-portlet/src/test/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesContextFactoryTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
tiles/framework/trunk/tiles-portlet/src/test/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesContextFactoryTest.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: 
tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/wildcard/package.html
URL: 
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/wildcard/package.html?rev=676285&view=auto
==============================================================================
--- 
tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/wildcard/package.html
 (added)
+++ 
tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/wildcard/package.html
 Sun Jul 13 02:03:32 2008
@@ -0,0 +1,32 @@
+<!--
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+-->
+<html>
+<head>
+    <title>Tiles servlet-specific context package with wildcard support</title>
+</head>
+<body>
+Classes and interfaces that allow to access the various contexts from a servlet
+application. These classes can manage resource getting through the use of
+Spring-like wildcards patterns.
+</body>
+</html>
\ No newline at end of file

Propchange: 
tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/wildcard/package.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/wildcard/package.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL


Reply via email to