Sunday, June 13, 2010

Java Platform, Enterprise Edition (Segment 1)

Check out TPCI History for Java

It's already 01:30 AM, and I'm still awake to wrote this blog. I have learned many software languages and none of them has the same design-centers. Let me write about one of my favorite tools in developing software.

Java EE

First of all, J2EE is not a product; it is an open standards-based solution and abstraction of many existing products, libraries and frameworks. J2EE is an specifications from Sun published as documents describing on how the Web and EJB (Enterprise JavaBeans) containers must behave, then software vendors implement the specification and sell it as a product as part of the standard-based solution for building enterprise class applications.

Get the community driven JBoss Java Application Server

Back in 1995, when Sun releases Java. Netscape introduced support for Applets and Java quickly gained popularity. When browser wars arises, it became harder to write cross-browser Java Applets. Communication between Java Applets and the back-end using JRMP protocol becomes a problem due to unfriendly proxy servers and firewalls.

The idea of Ultra-Thin Client (UTC) is to separate the business logic from presentation logic, that is, move the entire business logic to the server and limit the client responsibilities to presentation logic and user interaction.

The introduction of Ultra-Thin Client paradigm has lead to the introduction of Java Servlets API and Enterprise JavaBeans component technology around 1997-98. EJB and JTA help make transactions more business-oriented. Applets, Servlets and Enterprise JavaBeans communication is based on request-response messaging pattern. The messaging is indeed simple.

You might be saying that Java Platform, Enterprise Edition is too complex or was slow. I will not argue with that if that's what you believe, you might want to search for "Java Performance Benchmark" on Google and see it for yourself. =P

It is impossible to send a request and receive a response in a single transaction and its hard to deal with syntactical incorrect messages. How does J2EE solves this type of problem? I will wrote a follow up on my next post. To be continue ...

Thank you and happy reading .",)