J2EE is dying, competition doesn’t means innovation everytime but, digging its own tomb

Competition means Innovation but Java is dying because of the amount of frameworks that are available. I wonder if someone is smart enough to understand and follow the amount of MVC frameworks, Design patterns or Object Relational Mapping tools that are available?

We can try to calculate the combinations of solutions (I don’t try to be exhaustive):

Web application frameworks: Apache Tapestry, Backbase, Bindows, DOJO, Eclipse RAP, Echo2, GWT, JFaces, Java Server Faces, JaverServer Pages, JavaServer Type Libraries, Struts, WebWork… (13)
Application frameworks: Spring, EJB3, Guice, Pico, Rico… (5)
Data access frameworks: Apache OJB, Cayenne, DBC, iBatis, JDBC, Hibernate, JDO, JPA, Oracle Toplink… (9)

Which means something like 13 * 5 * 9 combinations;  I let you to make the calculation!

Dear developers and architects, when will you stop thinking that your framework is better than the others and create your own one ? Could you participate to already existing ones instead?

7 thoughts on “J2EE is dying, competition doesn’t means innovation everytime but, digging its own tomb

  1. frank

    Do you really think that having a lot of (good) choice means that a technology is dying ? That’s a very strange point of view… Do you think there is only one solution to a problem, that every similar problem has the exact same solution ?
    I am happy to be in the java world where innovation is going so fast, where frustrations are often solved by new solutions…

  2. Ted Husted

    It’s true that there a lot of Java frameworks, but in practice, most are marginalized by Struts. (As much as some people dislike admitting it.)

    Meanwhile, the Struts project has been working to create convergence among Java web frameworks. For Struts 2, we adopted WebWork 2, and adopted features from other framework, like Stripes.

    Though, apparently, Ajax is dying too, since there are already as many Ajax frameworks as there are Java frameworks. Equally so, the entire web development platform is on a fast-track to the graveyard. Aside from Java and .NET, we also have PHP, Python, and Ruby. Choice enough for every star in the sky.

    The real bottom line is that enterprise web development is still hard, too hard, and we’ve come no where close to solving the problem. Our friends in Redmond are making their contribution, but .NET is not a panacea. Even Scott Guthrie will tell you that. We’ve still a long way to go.


  3. Benoit LAFFITTE

    J2EE is dying because people have the choice?

    If I consider your argument translate to the video game industry, games are dying (Sony PS2/PS3 game, PC Game , Wii game; RPG game, Action Game, Licenced Game)… but if you have a look to business figures, it isn’t the case… All console have some avantages and disavantages, it’s the same for frameworks.

    What I’m saying that each product, each framework, and each technologie have it’s own audience, strenth and flaws. A quick sample:
    Hibernate versus IBatis. If you look at purpose of both, you will say “OK is the same purpose, so nevermindmind to choose one rather than the other!”. And you will make a big mistake… to be short Hibernate can be choose for products with multi base deployment (DB2, or Oracle…), with IBatis you can tune your application with SQL instruction for a specific Database…

    I’m agree with the idea that all open source products are not good as well as all commercial are not good too. But you can say that J2EE is dying because you have the choice… is like saying that relationnal database are dying because you have too many providers (Oracle, Microsoft, IBM,…).
    Do you prefer the “Windows Approach”: Same for all (or near), with few choices… ?

  4. Dominique De Vito

    I disagree. You see an ‘OR’ relationships, where I see an ‘AND’ relationship. Currently, in Java, you can have a cake AND eat it!

    Look, you have (1) a server-side Java standard called Java EE, (2) AND if you are not happy with this first solution, you can try an open source alternative. You have both ways. Not in Microsoft world.

    I disagee also with your evaluation of the solution combinations.

    * Web application frameworks:
    – JaverServer Pages, JavaServer Type Libraries : quite simple to understand, where is the big deal ?
    – Struts, WebWork : Struts is in town for 5+ years, and quite simple. Any true architect should know it for a while. And Struts 2 is simpler than Struts 1.
    – Apache Tapestry : big evolutions for each major release. Defined more as an experimental framework, but with advanced features.
    – Backbase, Bindows, DOJO, Eclipse RAP : I know little about these tools.
    – Echo2, GWT : new similar players in town. Quite exciting.
    – Java Server Faces : a moving target. with some (real or not?) complexity.
    * Total : count ~ 5
    * The total seems big, but don’t forget also all these solutions seem to move according to the same direction. POJO-based, event-based, use of annotation, etc. But, one should separate JavaScript solutions versus Java solutions.

    * Application frameworks:
    – Spring, EJB3 : I have heard about it, never used until now.
    – Pico : quite dead, no ?
    – Guice : a bit new. still waiting to read more about it.
    – Rico : never heard
    * Total : count = 1,5

    * Data access frameworks:
    – Apache OJB, Cayenne, DBC : never met, very low buzz
    – iBatis, JDBC : quite simple to understand, where is the big deal ?
    – Hibernate, JDO, JPA, Oracle Toplink : all of them are quite similar. All are JPA-like or JPA-improved solutions.
    * Total : count = 1

    Overall total : less than 10. Not that much.

    And one more point. If you still think having 2 solutions (a server-side standard and open source alternatives) is a drawback instead of an advantage, let me say these 2 solutions are not that far away from each other. EJB 3 has taken inspiration from Hibernate (Gavin King was part of the EJB3 expert group), JSF was inspired from open source web frameworks out there, etc. Expert groups seem to do a good job while looking around, and taking into account good ideas whenever there are available.

  5. Colm Smyth

    This post is either flamebait or misguided. J2EE has never been more popular. Most developers seem to find a way to make a choice of which framework(s) to use without evaluating every possible combination.

  6. Nyst

    J2EE/JEE is more lively than ever. Dominique De Vito is right that we see an ‘AND’ relationship between all the technologies, and the more control over them we can fit in our experience the merrier.

    I personally navigate in this sea of technologies, frameworks and integration problems quite comfortably and enjoy this very much. Do you?


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.