Well, unlike other popular ‘web’ languages like PHP/RoR, Java has the legacy of being cumbersome to deploy and maintain in an web server. All this time, only enterprises had the effort to use the Java stack on their web tier. Freelance developers never (or rarely) opted for Java.
But the development of cloud platforms such as Amazon Web Services and Google App Engine has changed the landscape dramatically. Cloud providers managed the hard part of deployment and server management while the developers focused on the application that they are developing. Now pushing a Java app to the wild is just a click-away; at least in GAE it is!
Even though I’ve not used Heroku before, I’ve read some good reviews about it in Hacker News. With Heroku, all you need to deploy your app is to do a git push! Cool, isn’t it? And, it is not just Java – you can even run the JVM languages like Scala and JRuby.
Moreover, I’m a big fan for the design of their How it works page.
So, if you are developing your app in Java, you have one more hosting provider to consider!