Ready-to-Run Distributions for Prudence 2.0-beta10
If you're experienced with Prudence, it is strongly recommended that you install it via Sincerity (see instructions below), a packaging tool that makes it easy to add exactly the features you want to your Prudence containers, as well as manage third-party libraries.
However, we also offer these ready-to-run distributions, which already include Sincerity, its most commonly used plugins, as well as the Prudence examples:
To start Prudence, open a terminal, change to the installation directory and run:
./sincerity start prudence
(In Windows: "sincerity.bat start prudence")
Browse to http://localhost:8080/ to see the Prudence Administration application, from where you can access the installed applications. Or, browse to http://localhost:8080/prudence-example/ to see the Prudence Example application.
If this is your first time using Prudence, continue to the tutorial to learn how to create your own Prudence applications.
Your distribution can be upgraded at any time by running "./sincerity install".
Installing Prudence Using Sincerity
Assuming you have Sincerity installed, the following command line will install and start the Prudence example in a container named "prudence":
sincerity create prudence : add prudence.example : install : start restlet
Sincerity comes with friendly shortcuts for all Prudence core features and add-ons. The following table lists these shortcuts, as well as the full package identifier for which the shortcut is an alias.
All packages are hosted on the Three Crickets Repository, which is a Maven-compatible standard web site.
|Prudence Skeleton||prudence||com.threecrickets.prudence prudence-skeleton||Everything you need to start writing your Prudence applications. The Prudence skeleton is an extension of Sincerity's Restlet skeleton.|
|Cluster Support||prudence.cluster||com.threecrickets.prudence prudence-cluster||Adds support for application.distributedGlobals and for the distributed mode of application.task.|
|H2 Cache Backend||prudence.cache.h2||com.threecrickets.prudence prudence-cache-h2||Adds a cache backend based on the H2 database. By default H2 will run in embedded mode, but it's possible to run H2 separate for a shared cache.|
|Hazelcast Cache Backend||prudence.cache.hazelcast||com.threecrickets.prudence prudence-cache-hazelcast||Adds a distributed cache backend based on Hazelcast.|
|memcached Cache Backend||prudence.cache.memcached||com.threecrickets.prudence prudence-cache-memcached||Adds a distributed cache backend based on memcached. You will need to install memached separately.|
|MongoDB Cache Backend||prudence.cache.mongodb||com.threecrickets.prudence prudence-cache-mongodb||Adds a distributed cache backend based on MongoDB. You will need to install MongoDB separately.|
|Administration Application||prudence.admin||com.threecrickets.prudence prudence-admin||Useful for live administration of your container.|
|Prudence Library||com.threecrickets.prudence prudence||This is just the Prudence JVM library, which can be useful for building non-Prudence Restlet applications. It is installed as a dependency of the skeleton.|
Additional Programming Languages
|Python||python||com.threecrickets.sincerity.plugin sincerity-python||Based on the Jython engine. Note that Sincerity internally supports installing Python packages from PyPI ("The Cheese Factory").|
|Ruby||ruby||com.threecrickets.sincerity.plugin sincerity-ruby||Based on the JRuby engine. Note that Sincerity internally supports installing Ruby gems.|
|PHP||php||com.threecrickets.sincerity.plugin sincerity-php||Based on the Quercus engine. Note that Sincerity internally supports installing PHP modules from PEAR. In case you are planning on redistributing your application, also take note of Quercus' GPL license. Commercial licenses are also available.|
|Lua||lua||com.threecrickets.sincerity.plugin sincerity-lua||Based on the Luaj engine.|
The following Sincerity packages work well with Prudence:
|Restlet Logging Add-on||restlet.logging||com.threecrickets.sincerity.skeleton sincerity-restlet-logging||Powerful logging based on log4j. This will also pull in the Sincerity logging plugin|
|Service Plugin||service||com.threecrickets.sincerity.plugin sincerity-service||Lets you run Prudence as a background service/daemon using Tanuki's Java Service Wrapper. In case you are planning on redistributing your application, also take note of the Wrapper's GPL license. Commercial licenses are also available.|
|Redistribution Plugin||redistribution||com.threecrickets.sincerity.plugin sincerity-redistribution||Makes it easy to package and redistribute your Prudence application for others to install.|
Support for Legacy JVMs
The default Prudence skeleton depends on a few libraries that require JVM 8. However, it's possible to switch these to libraries compatible with JVM 7 using the following:
./sincerity add prudence.jvm7 : install
Shared sticky notes on the web! Stickstick is provided as an example SQL data-driven, RESTful "AJAX" application based on Prudence. It is available rewritten in six different programming languages.
To install it in your Prudence container, run "sincerity add" with one of the following package identifiers:
|Stickstick (Python)||com.threecrickets.stickstick stickstick-python|
|Stickstick (Ruby)||com.threecrickets.stickstick stickstick-ruby|
|Stickstick (PHP)||com.threecrickets.stickstick stickstick-php|
|Stickstick (Groovy)||com.threecrickets.stickstick stickstick-groovy|
|Stickstick (Clojue)||com.threecrickets.stickstick stickstick-clojure|
The complete Prudence Manual, essentially a copy of this web site, is available for download as a PDF.