blob: 94ae275e7d9b3db5ed3697428bf23369179a34ad [file]
<?xml version="1.0"?>
<!--
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>
<author email="ddewolf.AT.apache.D0T.org">David H. DeWolf</author>
<title>Pluto Project | Declaration of Intent</title>
</properties>
<body>
<section name="Statement of Intent">
<p>
The Pluto Portlet Container is the Reference Implementation of
the Java Portlet Specification. As such, Pluto offers
the development community a reference for interpretation of
the specification, portlet developers a container with which
compliant portlets can be tested, and portal developers
a compliant container with which they can integrate.
</p>
<p>
The following document attempts to clarify the development
priorities of the Apache Pluto project.
</p>
<p>
The primary concern of the pluto community is to
ensure that the Pluto Container maintains compatibility with
the most current Java Portlet Specification. Enhancements
and bug fixes should be completed in a manner in which
compatibility is maintained.
</p>
<p>
It is the responsibility of the pluto development team to
ensure that no ambiguity is introduced into the reference
implementation. No enhancements should be implemented which
introduce questions about the specification.
</p>
<p>
It is desirable for Pluto to become a robust and easy to use
portlet container. This will facilitate its wider acceptance
and usage in the community. In order to accomplish these goals,
it is assumed that enhancements which are above and beyond the
specification will be introduced. These enhancements may be
integrated with Pluto as long as they do not compromise the
integrity of the reference implementation as described above.
</p>
<p>
Furthermore, functionality which is clearly beyond the scope
of the specification should be documented as such and placed
into a package which helps to distinguish it as such. The Pluto
container should always remain fully specification compliant
and in working state when these enhancements are removed. In
most cases, this removal should be supported through
configuration parameters.
</p>
<p>
Finally, while the pluto project contains several subprojects,
it is important to realize that the container itself is the
most important aspect of the project. It, in an of itself, is
the Java Portlet reference implementation. The portalDriver
(Pluto Test Portal), testsuite, and deployer exist to simplfy
the use and testing of the container. As such, any significant
enhancements to these components (most especially the portal
driver) should be scrutinized before implementation, as most
likely, it is outside the scope of the pluto project and belong
in a portal full implementation.
</p>
</section>
</body>
</document>