Wow, this is heady stuff. I have worked out roughly how Pluto works. It's not too complicated. The basic application is in
pluto-portal-2.0.0.war. All this does is run the portal, the pluto page administration and an about box portlet. If you need more functionality you add another .war file, like the testsuite. In order for Pluto to run the other war file, however, you need to:
- copy five jars into the shared lib folder of apache-tomcat-6.0.20: pluto-container-api-2.0.0.jar, pluto-container-driver-api-2.0.0.jar, pluto-taglib-2.0.0.jar, portlet-api_2.0_spec-1.0.jar and ccpp-1.0.jar.
- copy tomcat-users.xml from the pluto installation into tomcat's conf directory. Or define a role "pluto" and a user "pluto".
- Rename pluto-portal-2.0.0.war to pluto.war and pluto-testsuite-2.0.0.war to testsuite.war and copy them from pluto-2.0.0/PlutoDomain to apache-tomcat-6.0.20/webapps.
And that appears to be it. The only drawback is, defining add-on portlets this way means that you have to modify the default tomcat installation. This makes it difficult to use a commercial tomcat server. Hmmm. But otherwise Pluto can't launch the portlets in the other war file.
And I still haven't worked out how to add portlets to the testsuite, or rather how to replace them with my own. But compared to Jetspeed it's as clean as a whistle. It's so nice that the portlets you add are all in a separate webapp.
Tomorrow I'm going to try to replace the testsuite with my own webapp of portlets defined in Eclipse. No fr***in Maven!!!