Friday, April 07, 2006

.NET vs J2EE

.NET Architecture for Web services

J2EE Architecture for Web Services

.NET and against J2EE
  • .NET has Microsoft's A-team marketing it
  • .NET released their web services story before J2EE did, and thus has some mind-share
  • .NET has a better story for shared context today than J2EE
  • .NET has an awesome tool story with Visual Studio.NET
  • .NET has a simpler programming model, enabling rank-and-file developers to be
  • Productive without shooting themselves in the foot
  • .NET gives you language neutrality when developing new eBusiness applications, whereas
  • J2EE makes you treat other languages as separate applications
  • .NET benefits from being strongly interweaved with the underlying operating system

J2EE and against .NET
  • J2EE is being marketed by an entire industry
  • J2EE is a proven platform, with a few new web services APIs. .NET is a rewrite and introduces risk as with any first-generation technology
  • Only J2EE lets you deploy web services today
  • Existing J2EE code will translate into a J2EE web services system without major rewrites.
  • Not true for Windows DNA code ported to .NET.
    .NET web services are not interoperable with current industry standards. Their BizTalk framework has proprietary SOAP extensions and does not support ebXML.
  • J2EE is a more advanced programming model, appropriate for well-trained developers who want to build more advanced object models and take advantage of performance features
  • J2EE lets you take advantage of existing hardware you may have
  • J2EE gives you platform neutrality, including Windows. You also get good (but not free) portability. This isolates you from heterogeneous deployment environments.
    J2EE has a better legacy integration story through the Java Connector Architecture (JCA)
  • J2EE lets you use any operating system you prefer, such as Windows, UNIX, or mainframe. Developers can use the environment they are most productive in.
  • J2EE lets you use Java, which is better than C# due to market-share and maturity. According to Gartner, there are 2.5 million Java developers. IDC predicts this will grow to 4 million by 2003. 78% universities teach Java, and 50% of universities require Java.
    We would not want to use any language other than C# or Java for development of new mission-critical solutions, such as a hacked object-oriented version of C, VB, or COBOL.
  • We are finding most ISVs and consulting companies going with J2EE because they cannot control their customers' target platforms. We believe this application availability will result in J2EE beginning to dominate more and more as time goes on.

Common Features:

  • Regardless of which platform you pick, new developers will need to be trained (Java training for J2EE, OO training for .NET)
  • You can build web services today using both platforms
  • Both platforms offer a low system cost, such as jBoss/Linux/Cobalt for J2EE, or Windows/Win32 hardware for .NET.
  • Both platforms offer a single-vendor solution.
  • The scalability of both solutions are theoretically unlimited.


  1. my comment regarding "Common Features" section.
    you satted:
    "Regardless of which platform you pick, new developers will need to be trained (Java training for J2EE, OO training for .NET)"

    OO training is a must in order to develop in both ,Net and J2EE.
    IT is not just for .Net

  2. This comment has been removed by a blog administrator.

  3. You are comparing these two technologies. Well. But what are you trying to convey to readers? What is the objective of this article? And what is your conclusion?

  4. Conclusion is left to the reader.
    The target technology can be decided only based on what the programmer is familiar with and whats the need of the application to be deployed.

    I read in a similar review that the result is in favor of J2EE!