RESTful and JSON remoting

Linux setup

Prerequisites

Java 6

mvn 2.0.9 or higher

Install meta-framework

Install roo

$ wget http://spring-roo-repository.springsource.org/spring-roo-1.2.5.RELEASE.zip

$ unzip spring-roo-1.2.5.RELEASE.zip

$ export ROO_HOME=`pwd`/spring-roo-1.2.5.RELEASE

$ export PATH=$PATH:$ROO_HOME/bin

$ sudo ln -s $ROO_HOME/bin/roo.sh /usr/bin/roo

$ export ROO_OPTS="-Droo.bright=true"

$ export JAVA_OPTS="-Xms512m -Xmx1024m -XX:PermSize=64m -XX:MaxPermSize=1024m"

$ MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=1024m"

Test roo

Run from the ROO console:

$ mkdir hello
$ cd hello
$ roo
roo> hint
roo> project --topLevelPackage com.foo
roo> jpa setup --provider HIBERNATE --database HYPERSONIC_IN_MEMORY
roo> entity jpa --class ~.Timer --testAutomatically
roo> field string --fieldName message --notNull
roo> hint web mvc
roo> web mvc setup
roo> web mvc all --package ~.web
roo> selenium test --controller ~.web.TimerController
roo> web gwt setup
roo> web gwt all --proxyPackage ~.client.proxy --requestPackage ~.client.request
roo> perform tests
roo> quit

Alternatively, download hello.roo and run:

$ mkdir hello
$ cd hello
roo> script --file hello.roo
roo> quit

Run the tomcat application server:

$ mvn tomcat:run

Test the application:

$ firefox http://localhost:8080/tenminutes

$ firefox http://localhost:8080/hello