5 ms·
J2EE Is Dead - Completely Dead
- rb2k_ 16y agocopy pasta because the server is dead (completely dead) ;) J2EE 1.4 or officially: "JSR 151: JavaTM 2 Platform, Enterprise Edition 1.4 (J2EE 1.4) Specification" was released at 24 Nov, 2003 and was designed to be used with JDK 1.4, J2EE 1.3 was released at 24 September 2001 and is more than 9 years old now. In JDK 1.4 there were no annotations available, so you had to configure everything with XML. J2EE 1.4 is more Configuration Over Convention, than the current - more reasonable opposite principle of Configuration by Exception or Convention over Configuration. If I read or hear "J2EE" I always have to think about xdoclet with about 50 lines of XML, a Home Interface, Remote Interface and an unrelated Bean class just to implement a helloWorld() method. ...with Java EE 6 a helloWorld() takes exactly one line of code - as it should be. Even JDK 1.5 is End of Service Life and so officially dead for greenfield projects as well. Most of the J2EE 1.4 application servers were not even officially supported on JDK 1.5, so it is truly ancient technology. However: there is more interests in Java EE 6 - measured in number of session attendees at conferences, blog statistics, number of sold books :-) and project requests, than ever. What also amazed me was the result of my informal surveys after talks at various conferences (JAX, W-JAX, JavaOne and Devoxx). The majority of attendees do use Java EE 5. The minority is using J2EE 1.4. Even the number of Java EE 6 projects seems to be slightly higher, than J2EE. ...and Java EE 6 is only one year young... So J2EE is dead, but Java EE 6 rocks.
- brown9-2 16y agoI always have to think about xdoclet with about 50 lines of XML, a Home Interface, Remote Interface and an unrelated Bean class just to implement a helloWorld() method It amazes me that when people say "J2EE" they're really describing "EJB"
- ra 16y agoSeems that link is completely dead. Maybe it's getting DDoSed by a disorganised horde of anonymous pro J2EE teenagers.
- petervandijck 16y agoThank god for that. As a funny related story: a former boss once made me (told me to) give a talk about J2EE, and I had NO idea what I was talking about. I was a PHP developer. My first year employed on the web. I should have refused, but was too unexperienced. If you were there (Scotland 2001), apologies!
- glhaynes 16y agoWow! Sounds like a scene from a (nerdy) sitcom. What'd you do?
- petervandijck 16y agoI gave the talk. Died a little inside that day.
- fierarul 16y agoSadly so is the web server. Google Cache seems to have it, but it's overall rather thin: http://webcache.googleusercontent.com/search?q=cache:Fbn8cjcBmukJ:blog.adam-bien.com/+&cd=5&hl=en&ct=clnk http://webcache.googleusercontent.com/search?q=cache:Fbn8cjc... Something along the lines the king is dead long live the king.
- swah 16y agoCan anyone show the one line hello world?
- mgkimsal 16y agoThe author links to a page that's not accessible. The google cache shows this page: http://webcache.googleusercontent.com/search?q=cache:3cGnLJFTP3gJ:www.adam-bien.com/roller/abien/entry/simplest_possible_ejb_3_1+http://www.adam-bien.com/roller/abien/entry/simplest_possible_ejb_3_1&cd=1&hl=en&ct=clnk&gl=us http://webcache.googleusercontent.com/search?q=cache:3cGnLJF... copy/paste from the link above ================= @Stateless public class SimpleSample { public void doSomething() { /*business logic*/ } } How to compile: You will need the the EJB 3.0 / 3.1 API in the classpath, or at least the @Stateless annotation. How to deploy: Just JAR the class and put the JAR into e.g: [glassfishv3-prelude-b23]\glassfish\domains\domain1\autodeploy How to use: e.g.: import javax.ejb.EJB; public class MyServlet extends HttpServlet{ @EJB private SimpleSample sample; } And: there is no XML, strange configuration, libraries, additional frameworks or jars needed... ================= Looks a slight bit more than 1 line to me. Note: the page was linked to from another page indicating you can do 'hello world' in JEE6 in 'one line' of code. Java people have a funny way of counting lines sometimes.
- drtse4 16y agoHe should have left out that "exactly". The main point is something he highlights at the beginning, J2EE was the triumph of configuration over convention, it had a lot of xml descriptors and interfaces/utility classes to be implemented (this caused by the some architectural decisions that remind me of CORBA). This stuff was usually auto-generated but you still often had to tweak these file manually. The polar opposite of modern web frameworks.
- milkinm 16y agoOk. Can we please, please, please, please stop proclaiming things dead. In the past year i have read at least half a dozen articles proclaiming various technologies dead. The Web, Grails, Java, Telephones, ect... PS I declare that declaring preemptive postmortems to be dead!
- kondro 16y agoSigh, more sensationalist headlines that really have no content. Unsurprisingly, old technology is old and new technology is new.
- swah 16y agoAnyone else noticed this: when you Google for Java related stuff, Google's magic stops working, and you get into a sea of outdated and confusing pages from all kinds of sources. Also, for most of those results, you'll get some horrible unusable web site, probably with serif fonts to compliment.
- spuz 16y agoYes. You can choose to view only results from the past year which helps but Google really need to fix the problem of previously highly ranked pages becoming obsolete over time.
- rbanffy 16y agoThis is more a reflection of the whole Java ecosystem. I am currently maintaining an application that runs - and will continue to run until it's EOL'ed - in Java 1.5. Not that 1.6 is that much better. Also, there are lots and lots of people who learn just enough Java so they can get jobs in programming. Body shops hire them because they are cheap and because none of their clients, who demand their products to be written with enterprisey brands they read about in enterprisey magazines, will ever look into the code they write. Unfortunately, most of them also learn HTML and build websites. And that creates the problem you see.
- brown9-2 16y agoI haven't noticed this. Do you have any example search terms?
- DanielRibeiro 16y agoThis happens with ruby and python as well, though not as often. As always, limiting to things from at most two years usually does the trick.
- gaustin 16y agoFor a few reasons, I had to take a job maintaining/enhancing some huge government Java applications (largely Oracle based). I thought that there was some interesting things going on in the ecosystem because of what I read about all of the JVM-based hacking. I thought that because all of this hacking there would be a lot of solid, well integrated tools and good documentation. I had successfully avoided Java for most of my career, so it was also an opportunity to learn something new. That was a terrible mistake. It's almost impossible to find answers that are relevant. There is very little readable documentation, even directly from Oracle. When you do find a relevant bit of information on a forum or blog, it's either outdated or useless because the author doesn't specify what their environment is. I asked my colleagues for books, blogs or other resources to help me get up to speed. They pretty much laughed and said I'm out of luck. I won't complain about the tooling. It's bad, but that may be more a matter of taste than anything else.
- sgt 16y agoSo before anyone thinks he is referring to Java on the enterprise in general; he is not. Java EE 6 is the current Java enterprise solution. J2EE is the old, e.g. 1.4 or 1.5. Java EE 6 is far better, and technologies like JPA and JTA are quite powerful. There's also a lot less boilerplate code than before. As another poster said, Java EE 6 rocks for enterprise development, particularly with large teams.
- al05 16y agoI tried out Java EE6, I was impressed on the improvements they have made. Once you set it up correctly, you get quite a lot of stuff for free.
- mark_l_watson 16y agoI agree, Java EE 6 is a huge improvement to older J2EE versions. I am going to spend some time next year helping a friend's company with a Java EE 6 project so I have recently spent a few evening brushing up on for a much improved platform. Not at all what I would consider to be agile but solid infrastructure that saves time on projects that require many components, high level error handling, uniform messaging, etc., etc.
- wallflower 16y agoJ2EE is dead because Spring/Hibernate have replaced them because they are the lightweight transactional enterprise application framework that J2EE never was. We have come a long way from the Java Pet Store.