<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
    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.
-->
<!-- $Rev$ $Date$ -->

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>org.apache.geronimo.genesis.config</groupId>
        <artifactId>project-config</artifactId>
        <version>1.5</version>
    </parent>

    <groupId>org.apache.geronimo.plugins</groupId>
    <artifactId>grails</artifactId>
    <name>Geronimo Plugins :: Geronimo Grails Plugin</name>
    <packaging>car</packaging>

    <version>1.0-SNAPSHOT</version>

    <description>
        This plugin collects the necessary Grails dependencies so that 
        a Grails application can be deployed and run in a Geronimo 
        Server with just a dependency on this plugin rather than requiring
        each Grails application to include all of the necessary dependencies.
        NOTE:  This plugin requires that the following jars to be pre-installed into 
        the server:  
        - org.hibernate/hibernate/3.2.6.ga/hibernate-3.2.6.ga.jar
        - org.hibernate/hibernate-annotations/3.3.0.ga/hibernate-annotations-3.3.0.ga.jar
        - org.hibernate/hibernate-commons-annotations/3.3.0.ga/hibernate-commons-annotations-3.3.0.ga.jar
        - org.springframework/spring-hibernate3/2.0-m4/spring-hibernate3-2.0-m4.jar
    </description>

    <scm>
        <connection>scm:svn:http://svn.apache.org/repos/asf/geronimo/plugins/grails/trunk</connection>
        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/geronimo/plugins/grails/trunk</developerConnection>
        <url>http://svn.apache.org/viewvc/geronimo/plugins/grails/trunk</url>
    </scm>

    <properties>
        <geronimoVersion>2.1.3</geronimoVersion>
        <siteId>plugins/grails</siteId>
        <projectName>Apache Geronimo Plugins :: Grails</projectName>
    </properties>

    <url>http://geronimo.apache.org/maven/${siteId}/${version}</url>
    <distributionManagement>
        <site>
            <id>geronimo-website</id>
            <url>${staging.siteURL}/${siteId}/${version}</url>
        </site>
    </distributionManagement>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.apache.geronimo.framework</groupId>
                <artifactId>geronimo-gbean-deployer</artifactId>
                <type>car</type>
                <version>${geronimoVersion}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.geronimo.configs</groupId>
                <artifactId>j2ee-deployer</artifactId>
                <type>car</type>
                <version>${geronimoVersion}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.geronimo.framework</groupId>
                <artifactId>jee-specs</artifactId>
                <version>${geronimoVersion}</version>
                <type>car</type>
            </dependency>

            <!--=================-->
            <!-- Needed for grails apps -->
            <!--=================-->

            <dependency>
                <groupId>ant</groupId>
                <artifactId>ant-launcher</artifactId>
                <version>1.6.5</version>
            </dependency>

            <dependency>
                <groupId>ant</groupId>
                <artifactId>ant</artifactId>
                <version>1.6.5</version>
            </dependency>

            <dependency>
                <groupId>antlr</groupId>
                <artifactId>antlr</artifactId>
                <version>2.7.6</version>
            </dependency>

            <dependency>
                <groupId>cglib</groupId>
                <artifactId>cglib-nodep</artifactId>
                <version>2.1_3</version>
            </dependency>

            <dependency>
                <groupId>commons-beanutils</groupId>
                <artifactId>commons-beanutils</artifactId>
                <version>1.7.0</version>
            </dependency> 

            <dependency>
                <groupId>commons-cli</groupId>
                <artifactId>commons-cli</artifactId>
                <version>1.0</version>
            </dependency>

            <dependency>
                <groupId>commons-collections</groupId>
                <artifactId>commons-collections</artifactId>
                <version>3.2</version>
            </dependency>

            <dependency>
                <groupId>commons-dbcp</groupId>
                <artifactId>commons-dbcp</artifactId>
                <version>1.2.1</version>
            </dependency>

            <dependency>
                <groupId>commons-fileupload</groupId>
                <artifactId>commons-fileupload</artifactId>
                <version>1.1.1</version>
            </dependency>

            <dependency>
                <groupId>commons-io</groupId>
                <artifactId>commons-io</artifactId>
                <version>1.4</version>
            </dependency>

            <dependency>
                <groupId>commons-lang</groupId>
                <artifactId>commons-lang</artifactId>
                <version>2.1</version>
            </dependency>

            <dependency>
                <groupId>commons-logging</groupId>
                <artifactId>commons-logging</artifactId>
                <version>1.1</version>
            </dependency>

            <dependency>
                <groupId>commons-pool</groupId>
                <artifactId>commons-pool</artifactId>
                <version>1.2</version>
            </dependency>

            <dependency>
                <groupId>commons-validator</groupId>
                <artifactId>commons-validator</artifactId>
                <version>1.3.0</version>
            </dependency>

            <dependency>
                <groupId>dom4j</groupId>
                <artifactId>dom4j</artifactId>
                <version>1.6.1</version>
            </dependency>

            <!-- grails uses version 1.3.0 -->
            <dependency>
                <groupId>ehcache</groupId>
                <artifactId>ehcache</artifactId>
                <version>1.2beta4</version>
            </dependency>

            <dependency>
                <groupId>org.grails</groupId>
                <artifactId>grails-cli</artifactId>
                <version>1.1-SNAPSHOT</version>
            </dependency>

            <dependency>
                <groupId>org.grails</groupId>
                <artifactId>grails-core</artifactId>
                <version>1.1-SNAPSHOT</version>
            </dependency>

            <dependency>
                <groupId>org.grails</groupId>
                <artifactId>grails-crud</artifactId>
                <version>1.1-SNAPSHOT</version>
            </dependency>

            <dependency>
                <groupId>org.grails</groupId>
                <artifactId>grails-gorm</artifactId>
                <version>1.1-SNAPSHOT</version>
            </dependency>

            <dependency>
                <groupId>org.grails</groupId>
                <artifactId>grails-spring</artifactId>
                <version>1.1-SNAPSHOT</version>
            </dependency>

            <dependency>
                <groupId>org.grails</groupId>
                <artifactId>grails-test</artifactId>
                <version>1.1-SNAPSHOT</version>
            </dependency>

            <dependency>
                <groupId>org.grails</groupId>
                <artifactId>grails-web</artifactId>
                <version>1.1-SNAPSHOT</version>
            </dependency>

            <dependency>
                <groupId>org.grails</groupId>
                <artifactId>grails-webflow</artifactId>
                <version>1.1-SNAPSHOT</version>
            </dependency>

            <dependency>
                <groupId>org.codehaus.groovy</groupId>
                <artifactId>groovy-all</artifactId>
                <version>1.5.6</version>
            </dependency>

            <!-- scope provided to ensure that we don't install the jar when installing the plugin  (LGPL) -->
            <!-- we still need to come up with some mechanism to tell the user that we are not including this jar and it must be installed manually  -->
            <dependency>
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-annotations</artifactId>
                <version>3.3.0.ga</version>
                <scope>provided</scope>
            </dependency>

            <!-- scope provided to ensure that we don't install the jar when installing the plugin  (LGPL) -->
            <!-- we still need to come up with some mechanism to tell the user that we are not including this jar and it must be installed manually  -->
            <dependency>
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-commons-annotations</artifactId>
                <version>3.3.0.ga</version>
                <scope>provided</scope>
                <exclusions>
                    <exclusion>
                        <groupId>javax.transaction</groupId>
                        <artifactId>jta</artifactId>
                    </exclusion>
                </exclusions>
            </dependency> 

            <!--  try this in place of hibernate3.jar -->
            <!-- scope provided to ensure that we don't install the jar when installing the plugin  (LGPL) -->
            <!-- we still need to come up with some mechanism to tell the user that we are not including this jar and it must be installed manually  -->
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-hibernate3</artifactId>
                <version>2.0-m4</version>
                <scope>provided</scope>
                <exclusions>
                    <exclusion>
                        <groupId>javax.transaction</groupId>
                        <artifactId>jta</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

           <!--  Appears to be needed by spring-hibernate3  -->
            <!-- scope provided to ensure that we don't install the jar when installing the plugin (LGPL) -->
            <!-- we still need to come up with some mechanism to tell the user that we are not including this jar and it must be installed manually  -->
           <dependency>
               <groupId>org.hibernate</groupId>
               <artifactId>hibernate</artifactId>
               <version>3.2.6.ga</version>
               <scope>provided</scope>
               <exclusions>
                   <exclusion>
                       <groupId>javax.transaction</groupId>
                       <artifactId>jta</artifactId>
                   </exclusion>
               </exclusions>
           </dependency> 

            <dependency>
                <groupId>hsqldb</groupId>
                <artifactId>hsqldb</artifactId>
                <version>1.8.0.5</version>
            </dependency>

            <dependency>
                <groupId>jaxen</groupId>
                <artifactId>jaxen</artifactId>
                <version>1.1.1</version>
            </dependency>

            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>3.8.2</version>
            </dependency>

            <dependency>
                <groupId>log4j</groupId>
                <artifactId>log4j</artifactId>
                <version>1.2.15</version>
                <exclusions>
                    <exclusion>
                        <groupId>javax.jms</groupId>
                        <artifactId>jms</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>com.sun.jdmk</groupId>
                        <artifactId>jmxtools</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>com.sun.jmx</groupId>
                        <artifactId>jmxri</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>ognl</groupId>
                <artifactId>ognl</artifactId>
                <version>2.6.9</version>
            </dependency>

            <dependency>
                <groupId>oro</groupId>
                <artifactId>oro</artifactId>
                <version>2.0.8</version>
            </dependency>

            <!--  grails uses version 2.4.1-->
            <dependency>
                <groupId>opensymphony</groupId>
                <artifactId>oscache</artifactId>
                <version>2.4</version>
                <exclusions>
                    <exclusion>
                        <groupId>javax.jms</groupId>
                        <artifactId>jms</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>opensymphony</groupId>
                <artifactId>sitemesh</artifactId>
               <version>2.3</version>
            </dependency>

            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring</artifactId>
                <version>2.5.4</version>
            </dependency>

            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-webmvc</artifactId>
                <version>2.5.4</version>
            </dependency> 

            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-test</artifactId>
                <version>2.5.4</version>
            </dependency> 

            <!-- the next 3 deps are used to replace spring-webflow and spring-binding 2.0-m1 in grails -->
           <dependency>
               <groupId>org.springframework.webflow</groupId>
               <artifactId>org.springframework.binding</artifactId>
               <version>2.0.3.RELEASE</version>
           </dependency> 
           <dependency>
               <groupId>org.springframework.webflow</groupId>
               <artifactId>org.springframework.js</artifactId>
               <version>2.0.3.RELEASE</version>
           </dependency> 
           <dependency>
               <groupId>org.springframework.webflow</groupId>
               <artifactId>org.springframework.webflow</artifactId>
               <version>2.0.3.RELEASE</version>
           </dependency>

            <!-- grails uses version 2.4 -->
            <dependency>
                <groupId>taglibs</groupId>
                <artifactId>standard</artifactId>
                <version>1.1.2</version>
            </dependency> 

            <dependency>
                <groupId>xerces</groupId>
                <artifactId>xercesImpl</artifactId>
                <version>2.6.2</version>
            </dependency> 

            <dependency>
                <groupId>xpp3</groupId>
                <artifactId>xpp3_min</artifactId>
                <version>1.1.3.4.O</version>
            </dependency> 

            <dependency>
                <groupId>com.thoughtworks.xstream</groupId>
                <artifactId>xstream</artifactId>
                <version>1.2.1</version>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <dependencies>
        <dependency>
            <groupId>org.apache.geronimo.framework</groupId>
            <artifactId>geronimo-gbean-deployer</artifactId>
            <type>car</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.geronimo.configs</groupId>
            <artifactId>j2ee-deployer</artifactId>
            <type>car</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.geronimo.framework</groupId>
            <artifactId>jee-specs</artifactId>
            <type>car</type>
        </dependency>

        <!--=================-->
        <!-- Needed for grails apps -->
        <!--=================-->

        <dependency>
            <groupId>ant</groupId>
            <artifactId>ant-launcher</artifactId>
        </dependency>

        <dependency>
            <groupId>ant</groupId>
            <artifactId>ant</artifactId>
        </dependency>

        <dependency>
            <groupId>antlr</groupId>
            <artifactId>antlr</artifactId>
        </dependency>

        <dependency>
            <groupId>cglib</groupId>
            <artifactId>cglib-nodep</artifactId>
        </dependency>

        <dependency>
            <groupId>commons-beanutils</groupId>
            <artifactId>commons-beanutils</artifactId>
        </dependency> 

        <dependency>
            <groupId>commons-cli</groupId>
            <artifactId>commons-cli</artifactId>
        </dependency>

        <dependency>
            <groupId>commons-collections</groupId>
            <artifactId>commons-collections</artifactId>
        </dependency>

        <dependency>
            <groupId>commons-dbcp</groupId>
            <artifactId>commons-dbcp</artifactId>
        </dependency>

        <dependency>
            <groupId>commons-fileupload</groupId>
            <artifactId>commons-fileupload</artifactId>
        </dependency>

        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
        </dependency>

        <dependency>
            <groupId>commons-lang</groupId>
            <artifactId>commons-lang</artifactId>
        </dependency>

        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
        </dependency>

        <dependency>
            <groupId>commons-pool</groupId>
            <artifactId>commons-pool</artifactId>
        </dependency>

        <dependency>
            <groupId>commons-validator</groupId>
            <artifactId>commons-validator</artifactId>
        </dependency>

        <dependency>
            <groupId>dom4j</groupId>
            <artifactId>dom4j</artifactId>
        </dependency>

        <dependency>
            <groupId>ehcache</groupId>
            <artifactId>ehcache</artifactId>
        </dependency>

        <dependency>
            <groupId>org.grails</groupId>
            <artifactId>grails-cli</artifactId>
        </dependency>

        <dependency>
            <groupId>org.grails</groupId>
            <artifactId>grails-core</artifactId>
        </dependency>

        <dependency>
            <groupId>org.grails</groupId>
            <artifactId>grails-crud</artifactId>
        </dependency>

        <dependency>
            <groupId>org.grails</groupId>
            <artifactId>grails-gorm</artifactId>
        </dependency>

        <dependency>
            <groupId>org.grails</groupId>
            <artifactId>grails-spring</artifactId>
        </dependency>

        <dependency>
            <groupId>org.grails</groupId>
            <artifactId>grails-test</artifactId>
        </dependency>

        <dependency>
            <groupId>org.grails</groupId>
            <artifactId>grails-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.grails</groupId>
            <artifactId>grails-webflow</artifactId>
        </dependency>

        <dependency>
            <groupId>org.codehaus.groovy</groupId>
            <artifactId>groovy-all</artifactId>
        </dependency>

        <!-- scope provided to ensure that we don't install the jar when installing the plugin (LGPL) -->
        <!-- we still need to come up with some mechanism to tell the user that we are not including this jar and it must be installed manually  -->
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-annotations</artifactId>
            <scope>provided</scope>
        </dependency>

        <!-- scope provided to ensure that we don't install the jar when installing the plugin (LGPL) -->
        <!-- we still need to come up with some mechanism to tell the user that we are not including this jar and it must be installed manually  -->
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-commons-annotations</artifactId>
            <scope>provided</scope>
        </dependency> 

        <!--  try this in place of hibernate3.jar -->
        <!-- scope provided to ensure that we don't install the jar when installing the plugin (LGPL) -->
        <!-- we still need to come up with some mechanism to tell the user that we are not including this jar and it must be installed manually  -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-hibernate3</artifactId>
            <scope>provided</scope>
        </dependency>

       <!-- Appears to be needed by spring-hibernate3  -->
       <!-- scope provided to ensure that we don't install the jar when installing the plugin (LGPL) -->
       <!-- we still need to come up with some mechanism to tell the user that we are not including this jar and it must be installed manually  -->
       <dependency>
           <groupId>org.hibernate</groupId>
           <artifactId>hibernate</artifactId>
           <scope>provided</scope>
       </dependency> 

        <dependency>
            <groupId>hsqldb</groupId>
            <artifactId>hsqldb</artifactId>
        </dependency>

        <dependency>
            <groupId>jaxen</groupId>
            <artifactId>jaxen</artifactId>
        </dependency>

        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
        </dependency>

        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
        </dependency>

        <dependency>
            <groupId>ognl</groupId>
            <artifactId>ognl</artifactId>
        </dependency>

        <dependency>
            <groupId>oro</groupId>
            <artifactId>oro</artifactId>
        </dependency>

        <dependency>
            <groupId>opensymphony</groupId>
            <artifactId>oscache</artifactId>
        </dependency>

        <dependency>
            <groupId>opensymphony</groupId>
            <artifactId>sitemesh</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
        </dependency> 

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-test</artifactId>
        </dependency> 

        <!-- the next 3 deps are used to replace spring-webflow and sprint-binding 2.0-m1 in grails -->
       <dependency>
           <groupId>org.springframework.webflow</groupId>
           <artifactId>org.springframework.binding</artifactId>
       </dependency> 
       <dependency>
           <groupId>org.springframework.webflow</groupId>
           <artifactId>org.springframework.js</artifactId>
       </dependency> 
       <dependency>
           <groupId>org.springframework.webflow</groupId>
           <artifactId>org.springframework.webflow</artifactId>
       </dependency>

        <dependency>
            <groupId>taglibs</groupId>
            <artifactId>standard</artifactId>
        </dependency> 

        <dependency>
            <groupId>xerces</groupId>
            <artifactId>xercesImpl</artifactId>
        </dependency> 

        <dependency>
            <groupId>xpp3</groupId>
            <artifactId>xpp3_min</artifactId>
        </dependency> 

        <dependency>
            <groupId>com.thoughtworks.xstream</groupId>
            <artifactId>xstream</artifactId>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.geronimo.buildsupport</groupId>
                <artifactId>car-maven-plugin</artifactId>
                <version>${geronimoVersion}</version>

                <!-- Install as extention to allow 'car' packaging to be used. -->
                <extensions>true</extensions>

                <configuration>
                    <archive>
                        <!-- Do not include META-INF/maven to avoid long file problems on windows -->
                        <addMavenDescriptor>false</addMavenDescriptor>
                    </archive>
                    <category>Geronimo Plugins</category>
                    <osiApproved>true</osiApproved>
                    <useMavenDependencies>
                        <value>true</value>
                        <includeVersion>true</includeVersion>
                    </useMavenDependencies>
                </configuration>
            </plugin>
        </plugins>
    </build>

</project>
