openpreserve / plato

The Preservation Planning Tool Plato
http://ifs.tuwien.ac.at/dp/plato
Apache License 2.0
10 stars 5 forks source link

Plato: The Preservation Planning Tool

Efficient and trustworthy preservation planning.

How to install and use

Requirements

To install you need:

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:

  1. Install and setup MySQL server

    1. Install MySQL 5 Server (tested with version 5.1.54)
    2. 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.
    3. 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
      
    4. Restart MySQL server
  2. Setup Database for Planning Suite If you run Planning Suite and IDP on the same domain, you can use a predefined script:

    1. 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.
    2. Run it via ./setup-database.sh <MySQL root password> <Plato DB password> <IDP DB password>
    3. 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.
  3. Install and setup JBoss AS 7

    1. 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.
    2. Copy the file standalone.xml you have generated during database setup to [JBOSS_HOME]/standalone/configuration/standalone.xml
  4. Install MySQL Drivers

    1. Download [MySQL Connector/J] (http://dev.mysql.com/downloads/connector/j)
    2. 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)
  5. Install and setup PicketLink

    1. Go to the modules/org/picketlink/main directory and delete all jar files in it.
    2. 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
    3. Copy both Picketlink 2.1.4 jars into modules/org/picketlink/main directory
    4. 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>
      
  6. Install UTF8EncodingValve

    Please refer to the [readme of jboss-utils] (https://github.com/openplanets/plato/blob/integration/jboss-util/README.md)

  7. Configure Plato Some aspects of Plato can be configured using configuration files. See Plato configuration for further information.

  8. 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

Roadmap