How the J2EE and .Net platforms perform
While a "90 percent overlap" exists between .Net and J2EE (Java 2 Enterprise Edition), differences in the low level language, the presentation tier and the handling of portability may influence a developer's choice of software platform.
Roger Sessions, chief executive officer of distributed software training specialist ObjectWatch Inc., noted that in J2EE, the low level language is the Java byte code whereas with .Net, it is the Microsoft intermediate language (MSIL), which ships with Microsoft's new Web services development tool VisualStudio.Net later this year.
"The design in the underlying language is different," said Sessions, who was one of the speakers at the Microsoft Developers' Fest in Singapore last week. ObjectWatch specializes in advanced training for software architects.
"Java byte code is very tightly tied to Java, and works very well for Java. MSIL, on the other hand, works with all programming languages except Java," said Sessions.
Although Microsoft recently released J#, a full implementation of Sun Microsystems' Java language specification that will run many existing Java applications after a simple recompile or binary conversion, Sessions is not convinced. "Microsoft may say that its J# is Java compatible, but it is not just a matter of syntax. It's also the Java APIs (application programming interface) and J# does not support these," he pointed out.
Depending on its existing skill sets, therefore, a programming shop may favor one technology over the other. "A programming shop with Java experience can work more effectively with J2EE, using Java byte code. But if it has Visual Basic experience, it would be more productive with .NET, using MSIL," said Sessions.
Another difference between J2EE and .Net lies at the presentation tier, which interacts with the browser, said Sessions. For Microsoft, the programming framework for this layer is ASP.Net and for J2EE, it is the Java server pages (JSP).
"Microsoft has a technology that was initially the same as JSP, called ASP (application server pages), but ASP.Net is very different," Sessions pointed out.
As he explained, four layers of code come into play in processing a browser interaction.
The three most complex of these -- the processing of the user request from the browser, state management, and the output of information to different browsers -- have been automated in ASP.Net. Programmers will thus only have to code for access to business logic, for example, to authorize a credit card transaction. And this, according to Sessions, is the simplest of the four levels.
"There is a 90 percent complexity reduction with ASP.Net compared with ASP/JSP," he said. "At some point, J2EE will have to respond."
Sign up for ITworld's Daily newsletter
Follow ITworld on Twitter @IT_world
Esther Schindler
If the comments are ugly, the code is ugly
claird
SVG a graphics format for 21st century
pasmith
Take Chrome OS for a test spin
Sandra Henry-Stocker
Solaris Tip: Have Your Files Changed Since Installation?
jfruh
Android fragments vs. the iPhone monolith
mikelgan
What Gizmodo missed about the Pro WX Wireless USB disk drive
Sidekick: The Good News & the Bad News
Either way you look at it Microsoft Data Center management did not follow standards or best practices in this failure. In which case it makes me wonder more about the outsourcing of corporate data much less personal data.
- mburton325
Join the conversation here
Quick, practical advice for IT pros. Made fresh daily.
Want to cash in on your IT savvy? Send your tip to tips@itworld.com. If we post it, we'll send you a $25 Amazon e-gift card.













