<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
  Copyright 2005-2006 The Apache Software Foundation

  Licensed 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="Maven">
  <bannerLeft>
    <name>Pluto</name>
    <src>http://portals.apache.org/pluto/images/pluto.png</src>
    <href>http://portals.apache.org/pluto</href>
  </bannerLeft>
  <bannerRight>
    <src>http://portals.apache.org/pluto/images/banner.png</src>
  </bannerRight>
  <body>
    <links>
      <item name="Pluto Home" href="http://portals.apache.org/pluto"/>
      <item name="JSR 168" href="http://jcp.org/en/jsr/detail?id=168"/>
	  <item name="Chinese Translation" href="http://heavyz.sourceforge.net/pluto_zh/pluto-container"/>
    </links>

	<menu name="Pluto Portal">
      <item name="Getting Started" href="/getting-started.html"/>
	</menu>

    ${reports}
  </body>
</project>
