<?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.

-->
<project name="Apache MyFaces Extension-Scripting">
  <bannerLeft>
    <name>Apache MyFaces Extension-Scripting</name>


    <src>images/extscriptlogo.png</src>

    <href>http://myfaces.apache.org/ext-scripting</href>

  </bannerLeft>
  <bannerRight>
    <name>Apache MyFaces</name>
    <src>img/banners/MyFaces_logo.png</src>
    <href>http://myfaces.apache.org/</href>
  </bannerRight>
  <skin>
    <groupId>org.apache.myfaces.maven</groupId>
    <artifactId>myfaces-site-skin</artifactId>
    <version>3</version>
  </skin>
  <body>
    <links>
      <item name="Introduction" href="./index.html"/>
      <item name="Download" href="./download.html"/>
      <item name="Installation" href="./installation.html"/>
      <item name="Users Guide" href="./usersguide.html"/>
      <item name="Example Configurations" href="./exampleconfig.html"/>
      <item name="Apache" href="http://www.apache.org"/>
      <item name="MyFaces" href="http://myfaces.apache.org/index.html"/>
    </links>

    <menu name="Download">
        <item name="Download" href="download.html"/>
    </menu>
    <menu name="Documentation">
      <item name="Introduction" href="index.html" />
      <item name="Latest Version Installation" href="installation.html" />
      <item name="Installation of version 1.0.2 or earlier" href="install102.html" />
      <item name="Openwebbeans and Spring" href="owbSpring.html" />
      <item name="Users Guide" href="usersguide.html"/>
      <item name="Appendix A: Setup Checklist" href="setupSteps.html" />
      <item name="Appendix B: Configuration Entries" href="configentries.html" />
      <item name="Appendix B1: Configuration Entries for 1.0.2 or earlier" href="configentries102.html" />
      <item name="Appendix C: Example Configurations" href="exampleconfig.html" />
      <item name="Appendix C1: Example Configurations 1.0.2 or earlier" href="exampleconfig102.html" />
      <item name="Issue Tracking" href="issuetracking.html"></item>
    </menu>

    <menu ref="modules"/>
    <menu ref="reports"/>

    <menu name="Apache MyFaces" inherit="top">
       <item name="Overview"       href="http://myfaces.apache.org/index.html"/>
       <item name="Download"       href="http://myfaces.apache.org/download.html"/>
     </menu>

     <menu name="MyFaces Projects" inherit="top">
         <item name="Core JSF-2.1"   href="../core21/index.html" collapse="true">
           <item name="dummy"        href="dummy"/>
         </item>
         <item name="Core JSF-2.0"   href="../core20/index.html" collapse="true">
           <item name="dummy"        href="dummy"/>
         </item>
         <item name="Core JSF-1.2"   href="../core12/index.html" collapse="true">
           <item name="dummy"        href="dummy"/>
         </item>
         <item name="Core JSF-1.1"   href="../core11/index.html" collapse="true">
           <item name="dummy"        href="dummy"/>
         </item>
     </menu>

     <menu name="UI-Component Sets" inherit="top">
         <item name="Trinidad"       href="../trinidad/index.html"/>
         <item name="Tobago"         href="../tobago/index.html"/>
         <item name="Tomahawk"       href="../tomahawk/index.html" collapse="true">
           <item name="dummy"        href="dummy"/>
         </item>
     </menu>

     <menu name="Add-ons and Extensions" inherit="top">
         <item name="CODI"           href="../extensions/cdi/index.html"/>
         <item name="Orchestra"      href="../orchestra/index.html"/>
         <item name="ExtVal"         href="../extensions/validator/index.html"/>
         <item name="ExtScript"      href="../extensions/scripting/index.html"/>

         <item name="Portlet Bridge" href="../portlet-bridge/index.html"/>
         <item name="Test"           href="../test/index.html" collapse="false">
           <item name="Myfaces Test Framework for JSF 1.2 (and 1.1)" href="http://myfaces.apache.org/test/myfaces-test12/index.html"/>
           <item name="Myfaces Test Framework for JSF 2.0"           href="http://myfaces.apache.org/test/myfaces-test20/index.html"/>
         </item>
         <item name="Commons"        href="../commons/index.html"/>
         <item name="HTML5"          href="../html5/index.html"/>
         <item name="Sandbox"        href="../sandbox/index.html" collapse="true">
           <item name="dummy"        href="dummy"/>
         </item>
         <item name="Others"         href="../otherProjects.html"/>
     </menu>

     <menu name="External Resources">
         <item name="Ext-Scripting Interview" href="http://www.jsfcentral.com/articles/punz-03-12.html"/>
         <item name="Groovy Language Homepage" href="http://http://groovy.codehaus.org/" />
         <item name="Scala Language Homepage" href="http://www.scala-lang.org/" />
         <item name="Scala and Apache MyFaces Part 1"
               href="http://www.irian.at/de/blog/-/blogs/marrying-scala-with-apache-myfaces" />
         <item name="Scala and Apache MyFaces Part 2"
               href="http://www.irian.at/de/blog/-/blogs/marrying-scala-with-apache-myfaces" />
         <item name="Scala and Apache MyFaces Part 3"
                   href="http://www.irian.at/de/blog/-/blogs/marrying-scala-with-apache-myfaces" />

     </menu>

    <menu name="Foundation">
      <item name="ASF" href="http://apache.org/" />
      <item name="Sponsorship" href="http://www.apache.org/foundation/sponsorship.html" />
      <item name="Thanks" href="http://www.apache.org/foundation/thanks.html" />
    </menu>



    
  </body>
</project>
