Java arrives on Heroku code cloud
J2EE containers snuffed
Ensure Ease of Recovery with Asigra’s Agentless Software
Heroku – the multi-language "platform cloud" owned by Saleforce.com – is now running Java applications.
Akin to Google App Engine, Microsoft Azure, or VMware's Cloud Foundry, Heroku is an online service for building, deploying, and readily scaling applications. It was originally designed for Ruby on Rails apps, but has since expanded to Clojure, Node.js, and now Java.
In May, the San Francisco-based Heroku rolled out a new service stack meant to run "any" modern language, and the addition of Java, founder Adam Wiggins tells The Register, indicates that it can. "Java is much more mature and more fragmented than languages we're done in the past," he says. "If we can do Java, we can do almost any other language. This proves our polyglot hypothesis."
Announced on Thursday as a beta, Heroku's Java cloud does not use J2EE containers, and the company believes others will soon follow suit. "J2EE containers, we believe, are about to be disrupted away," he says. "You don't need them for scalability, for reliability, for robustness." And by abandoning the containers, the company can run a service that handles Java alongside other languages.
"Techniques for deployment, logging, and scaling are applicable to all app deployments, regardless of language. A common deployment infrastructure reduces language choice to just a question of syntax and libraries," the company said in a blog post. "Reduced coupling between app and infrastructure enables picking the right language for each job."
Wiggins acknowledges that many Java programmers are unlikely to understand the company's stance on containers. But he seems to take a certain amount of pride in this. Heroku is trying to change things. Not to keep them the same. ®
COMMENTS
Actually...
Jetty is just a "servlet container", i.e. a callback mechanism where the call just happens to be a HTTP request. Nothing particularly fancy.
A J2EE container is old-school anyway (so ugly and 2000). Today, we have "JEE" containers. And they contain services for messaging, naming, database access (EJB3), code injection, AOP, and whatnot. They also contain HTTP callback handling.
None of this is necessarily needed of course. And some of it should really be rolled back into the standard JVM environment, in particular some of the annotation-based facilities.
the controversy is ... there is no controversy!
Seriously? Oh Herouku have abandoned the full J {2} EE specification and they are eschewing implementing containers! ... stop the presses clear the back page.
This is not news, pretty much all of the current Java clouds have already done this, perhaps with the exception of RedHat/JBoss for obvious reasons ...
This does however beg the question, how does this relate to VMForce.com, which was supposed (I thought) to be a strategic partnership between Salesforce and VMWare to deploy Java/Spring etc in order to capture the enterprise developers???
funny that the keen hacks @ the Register failed to investigate ... yawn
I was going slow
Jetty is a java enterprise container, equivalent to tomcat, which they explicitly mention as a target. Fair enough, is not a full implementation of the jee( you're right, that's the correct name now) spec, but it's an implementation of part of it. So i disagree with ' it clearly isn't'. The difference we are describing is between a jee application server and a servlet container.
I'd say they are both java enterprise containers, although different. You would not.
And why don't I stitch it together into a full jee (I want proposing to build it all myself, just switch it together from the different components, it can be done, i didn't say it should..)? Because that would be daft my dear fellow, i deploy spring based web apps like most other people in the field I'm in. To tomcat, or sometimes jetty, to which I'm partial. Java enterprise (well, ejb mainly) was bypassed years ago. It's got some adoption, but it's not been the default for ages.
I'm still of the opinion that they choose an unfortunate example for their new system, which looks nice.
Seriously, try and build a webserver in java. Use one of the off the shelf templating libs, or better yet, build the thing in groovy or scala. It'll be done in 20 lines, and will work ok for moderate lead. You don't need something of the complexity of a servlet container for many things.
So forget the weekend, I'd take half an hour.

IT infrastructure monitoring strategies
Agentless Backup is Not a Myth
Top 10 SIEM implementer’s checklist
Steps to Take Before Choosing a Business Continuity Partner
Enabling efficient data center monitoring