Here's how I got it running on Debian 7:
sudo apt-get install openjdk-7-jdk mysql-server libmysql-java tomcat7 maven
(define mysql_root_password during installation)
sudo vi /etc/environment
add paths:
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
export CATALINA_HOME=/usr/share/tomcat7
export MAVEN_HOME=/usr/share/maven
source /etc/environment
mysql -u root -p
set up database:
mysql> create database webpasswordsafe;
mysql> create user wps@localhost identified by 'mysql_wps_password';
mysql> grant all privileges on webpasswordsafe.* to wps@localhost;
mysql> grant usage on webpasswordsafe.* to wps@localhost;
mysql> flush privileges;
mysql> exit
Download JCE from
http://www.oracle.com/technetwork/java/javase/downloads/index.htmlThe link is at bottom of page: Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 7
unzip UnlimitedJCEPolicyJDK7.zip
sudo cp UnlimitedJCEPolicy/*.jar $JAVA_HOME/jre/lib/security/
wget
http://webpasswordsafe.googlecode.com/files/webpasswordsafe-src-1.3.zipwget
http://webpasswordsafe.googlecode.com/files/webpasswordsafe-dependencies-bin-1.2.zipunzip webpasswordsafe-src-1.3.zip
cp /usr/share/java/mysql-connector-java.jar webpasswordsafe/war/WEB-INF/lib/
mv webpasswordsafe-dependencies-bin-1.2.zip /tmp
cd /tmp
unzip webpasswordsafe-dependencies-bin-1.2.zip
cp -r webpasswordsafe-dependencies-bin/resources/* ~/webpasswordsafe/war/gxt/
mvn install:install-file -DgroupId=com.extjs -DartifactId=gxt -Dversion=2.2.5 -Dpackaging=jar -Dfile=gxt-2.2.5-gwt22.jar
mvn install:install-file -DgroupId=net.sf.gwt-widget -DartifactId=gwt-sl -Dversion=1.1 -Dpackaging=jar -Dfile=gwt-sl-1.1.jar
mvn install:install-file -DgroupId=trove -DartifactId=trove -Dversion=2.0.4 -Dpackaging=jar -Dfile=trove-2.0.4.jar
cd ~
vi webpasswordsafe/war/WEB-INF/encryption.properties
set secret key at encryptor.jasypt.password
I assume that the default encryption algorithm is ok.
vi webpasswordsafe/war/WEB-INF/jdbc.properties
set db user key
jdbc.username=wps
jdbc.password=mysql_wps_password
uncomment mysql config:
# MySQL/MariaDB settings
hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/webpasswordsafe
jdbc.validationQuery=select 1
vi webpasswordsafe/war/WEB-INF/webpasswordsafe-service.xml
I didn't change anything. By default local authentication is used and that's ok for me
cd webpasswordsafe
mvn clean package
have a cup of tea - it takes a while
The result wil be a .war (web archive) file
sudo /etc/init.d/tomcat7 stop
sudo cp target/webpasswordsafe-1.3.war /var/lib/tomcat7/webapps/
sudo /etc/init.d/tomcat7 start
On Debian, the tomcat auto-deploy feature is enabled by default. Just placing the .war file there and starting the server will install it.
Give it a test drive http://<host>:8080/webpasswordsafe-1.3