<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright 2004 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.
-->

<document>
  
  <properties>
    <title>Getting Started</title>
    <author email="ddewolf@apache.org">David DeWolf</author>
  </properties>
  
  <body>
    
    <section name="Getting Started">
      <p>
        The Pluto Portlet Container is not designed for use by end users. The
        container is meant to be embeded within portal and web applications to
        provide Java Portlet Specification compliance. If you are a user looking
        to develop, test, or deploy portlets, please see the
        <a href="../pluto-portal-driver/index.html">Pluto Portal Driver</a>.
      </p>
      <p>
        If you are looking for information on how to embed pluto in your portal
        or web application, please see the <a href="embed.html">embedding pluto</a>
        documentation for Pluto 1.1.
      </p>
    </section>
    
  </body>
  
</document>

