Google App Engine for Java is another PaaS option for running Java in the cloud. I wonder how these two compare?
The problem with services like Cloudbees and Amazon's Elastic Beanstalk is that you end up updating an entire war file that you build locally. This can take a long time.
Cloudfoundry only serves up deltas, but you still end up having to build the entire war file on your local machine ( at least for Grails ).
Heroku's approach seems much nicer, you get some initial setup pain, but then you can just use a standard git workflow.
CloudFoundry Beta has some really bad limitation right now, ie. no pricing, cannot assign point an external domain name, etc.