Installing the Pluto 1.1 Binary Build

  1. Download a Pluto 1.1 binary distribution from a distribution site.
  2. Unzip the binary distribution into a directory.
    1. <PLUTO-1.1-HOME> will be the top level directory.
  3. Execute startup.bat (Windows) or startup.sh (Unix) in <PLUTO-1.1-HOME>/bin.
    1. Use shutdown.bat/shutdown.sh to stop the portal
  4. Browse to http://localhost:8080/pluto/portal
  5. Login as the user pluto (password=pluto).

Building Pluto from Source

Maven 2 is utilized as the project management and build system for Pluto 1.1. Pluto currently provides Maven plugins which can be used to install the Pluto Portal, assemble portlet applications, deploy applications, and publish portlet applications to the Pluto Portal.

Obtaining Pluto 1.1 Source Code

The Pluto project uses the Subversion version control system. If you're new to Subversion, you can check out the online book about Subversion. Note that we are currently using Subversion 1.3.x (there are separate versions of the book covering the different versions of Subversion). Web Access to Subversion To browse the Pluto 1.1 source code, you can use the ViewCVS web interface to Subversion. This is current at all times. Normal Subversion Access Anyone can check code out of Subversion anonymously. However, you need to specify a username and password in order to update the Subversion repository, and only Pluto committers have the permissions to do that. We run Subversion over standard HTTPS, so hopefully you won't have problems with intervening firewalls.

Check out from Subversion

Again, anyone can do this. To check out the latest distribution of Pluto 1.1 (trunk) to a directory called 'pluto' use this command:
svn checkout https://svn.apache.org/repos/asf/portals/pluto/trunk/ pluto

To check out Pluto 1.1.0-beta2 source to the 'pluto' directory use this command:

svn checkout https://svn.apache.org/repos/asf/portals/pluto/tags/release-1.1.0-beta2/ pluto

Zipped up Pluto source distributions can also be downloaded from a distribution mirror.

Building Pluto with Maven 2

<PLUTO-1.1-SRCHOME> is the local directory where the Pluto 1.1 source distribution has been checked out or unzipped into.

$> cd <PLUTO-1.1-SRCHOME>
$> mvn install
$> mvn pluto:install -DinstallDir=path/to/appserver
          

The install goal is a built in Maven 2 lifecycle which builds the project artifacts and installs them into the Maven repository.

The pluto:install goal will take the resulting artifacts and properly deploy them within the configured Tomcat installation. Currently, the Pluto 1.1 install has been tested on Tomcat 5.5.9 and Tomcat 5.5.17. The Tomcat 5 archive can be found here.

If installing to a directory that contains spaces, installDir needs to be enclosed within quotes:

C:\pluto> mvn pluto:install -DinstallDir="C:\Program Files\Apache Software Foundation\Tomcat 5.5"
          

Installing Pluto Manually

This section documents the manual installation of Pluto into Tomcat. It replaces the pluto:install goal, but requires that the built-in Maven 2 install goal (mvn install) be run from <PLUTO-1.1-SRCHOME>.

Step 1:

$> cd <PLUTO-1.1-SRCHOME>
$> mvn install
          

Step 2: Copy the following to <TOMCAT_HOME>/shared/lib:

  • castor-1.0.jar
  • portlet-api-1.0.jar
  • pluto-container-1.1-beta2.jar
  • pluto-descriptor-api-1.1-beta2.jar
  • pluto-descriptor-impl-1.1-beta2.jar
  • pluto-taglib-1.1.0-beta2.jar
Step 3: Copy the following to <TOMCAT_HOME>/common/endorsed:
  • xercesImpl-2.6.2.jar
  • xmlParserAPIs-2.6.2.jar
Step 4: Copy the following to <TOMCAT_HOME>/conf/Catalina/localhost:
  • <PLUTO_SRCHOME>/pluto-portal/src/main/resources/pluto.xml
  • <PLUTO_SRCHOME>/pluto-testsuite/src/main/resources/testsuite.xml
Step 5: Copy the following to <TOMCAT_HOME>/webapps:
  • <PLUTO_SRCHOME>/pluto-portal/target/pluto-portal.war
  • <PLUTO_SRCHOME>/pluto-testsuite/target/pluto-testsuite.war

Installing Pluto with a Windows EXE

The NSIS Installer is not yet complete, but we hope to have a fully functional one soon. Anyone is more than welcome to assist us in this process.

Configuring Source-Built Pluto for Application Scope PortletSession Attributes

To be able to use application-scoped PortletSession attributes in Pluto, modify the Connector element for port 8080 in <TOMCAT_HOME>/conf/server.xml by adding the following attribute and value: emptySessionPath="true".

Configuring User and Role in the Pluto Source Build

The Pluto Testsuite portlet application needs the role 'pluto' to run the Security Mapping Test. So before starting tomcat, you should edit <TOMCAT_HOME>/conf/tomcat-users.xml, add the role 'pluto', and add a user in that role. The simplest way to do this is to edit add the 'pluto' role to the 'tomcat' user's record. Here is a sample tomcat-users.xml file:
<?xml version="1.0" encoding="utf-8"?>
<tomcat-users>
  <role rolename="pluto"/>
  <role rolename="tomcat"/>
  <role rolename="role1"/>
  <user username="tomcat" password="tomcat" roles="tomcat,pluto"/>
  <user username="role1" password="tomcat" roles="role1"/>
  <user username="both" password="tomcat" roles="tomcat,role1"/>
</tomcat-users>
        

Starting the Portal

Now you are ready to use the Pluto Portal built from source. Start up tomcat by running startup.bat (for windows) or startup.sh (for *nix) in <TOMCAT_HOME>/bin, and browse to http://localhost:8080/pluto/portal. Login to Pluto using the user and password you just created in tomcat-users.xml. If you added the 'pluto' role to the 'tomcat' user's record, you can login as 'tomcat/tomcat'.