Plato: The Preservation Planning Tool
Efficient and trustworthy preservation planning.
How to install and use
Requirements
To install you need:
- Java 7
- MySQL 5 Server
- JBoss AS 7.1.0.Final
Download
At the moment there are no precompiled versions available, please refer to the instructions for building Plato on the contribute page.
Install instructions
To install follow these steps:
-
Install and setup MySQL server
- Install MySQL 5 Server (tested with version 5.1.54)
- Set UTF8 as a default encoding/collation.
Check appropriate MySQL 5.X reference manual for instruction on how to do this. There were some changes so it might not be the same for all versions.
- Configuration
Make the following changes in your MySQL config file (on Linux it is my.cnf and on Windows my.ini)
#in the Server Section [mysqld]
max_allowed_packet = 128M
max_sp_recursion_depth = 255
thread_stack = 512K
- Restart MySQL server
-
Setup Database for Planning Suite
If you run Planning Suite and IDP on the same domain, you can use a predefined script:
- Switch to the tools directory, there you will find the script setup-database.sh.
It creates DB users and databases for IDP and Plato, and prepares a config file for your JBoss AS 7 server.
- Run it via
./setup-database.sh <MySQL root password> <Plato DB password> <IDP DB password>
- You will find two new files in this directory: standalone.xml for your production environment, adjust it to your needs, and additionally standalone-test.xml - the configuration for your test server.
-
Install and setup JBoss AS 7
- Download and install JBoss AS 7.1.0.Final.
You can use JBoss AS 7.1.1.Final, but there are [issues with the included JSF implementation] (https://issues.jboss.org/browse/AS7-4366), so you have to replace the corresponding modules yourself.
- Copy the file standalone.xml you have generated during database setup to [JBOSS_HOME]/standalone/configuration/standalone.xml
-
Install MySQL Drivers
- Download [MySQL Connector/J] (http://dev.mysql.com/downloads/connector/j)
- Create a driver module as described in [Installing a JDBC driver as a module] (https://community.jboss.org/wiki/DataSourceConfigurationInAS7#Installing_a_JDBC_driver_as_a_module)
-
Install and setup PicketLink
- Go to the modules/org/picketlink/main directory and delete all jar files in it.
- Download Picketlink 2.1.4 jars for JBoss AS 7.1.x here: picketlink-core-2.1.4.Final.jar and
picketlink-jbas7-2.1.4.Final.jar
- Copy both Picketlink 2.1.4 jars into modules/org/picketlink/main directory
- In modules/org/picketlink/main do the following changes to the module.xml file :
<module xmlns="urn:jboss:module:1.1" name="org.picketlink">
<resources>
<resource-root path="picketlink-core-2.1.4.Final.jar"/>
<resource-root path="picketlink-jbas7-2.1.4.Final.jar"/>
</resources>
<dependencies>
<module name="javax.api"/>
<module name="javax.security.auth.message.api"/>
<module name="javax.security.jacc.api"/>
<module name="javax.transaction.api"/>
<module name="javax.xml.bind.api"/>
<module name="javax.xml.stream.api"/>
<module name="javax.servlet.api"/>
<module name="org.jboss.common-core"/>
<module name="org.jboss.logging"/>
<module name="org.jboss.as.web"/>
<module name="org.jboss.security.xacml"/>
<module name="org.picketbox"/>
<module name="javax.xml.ws.api"/>
<module name="org.apache.log4j"/>
<module name="org.apache.santuario.xmlsec"/>
</dependencies>
</module>
-
Install UTF8EncodingValve
Please refer to the [readme of jboss-utils] (https://github.com/openplanets/plato/blob/integration/jboss-util/README.md)
-
Configure Plato
Some aspects of Plato can be configured using configuration files. See Plato configuration for further information.
-
Optional: FITS
Use
To use the tool, start up JBoss 7 and navigate with your browser to e.g. at http://localhost:8080/plato
Troubleshooting
If you encounter problems please use the built in feedback functionality in Plato (on the right side of the page),
or refer to github
Licence
Plato is released under Apache version 2.0 license.
Acknowledgements
This work was partially supported by the SCAPE project. The SCAPE project is co-funded by the European Union under FP7 ICT-2009.4.1 (Grant Agreement number 270137)
Support
This tool is supported by the Open Planets Foundation. If you require support, feel free to contact plato [at] ifs.tuwien.ac.at.
Features and roadmap
Version 4.4
- Policy aware
- Reads content profiles
- Integration of myExperiment
- Connects to repositories via open APIs (Data Connector API and Plan Management API)
- Read only view for public plans
- Deploy of executable Preservation Action Plan
Roadmap
- Improved template creation for Executable Plan (based on used migration and quality assurance components)
- Smarter triggers for monitoring
- Implementation of Notification API to recieve planning requests
- Policy-based improvements to increase efficiency
- Implementation of Reassessment API