JAVA PLATFORMS•J2SE – Java 2 Standard Edition Java for the desktop / workstation ••J2ME – Java 2 Micro Edition Java for the consumer device•J2EE - Java 2 Enterprise Edition Java for the server
J2EE Supports• Extensible Markup Language• Web Applications• Web Services Support / WSDL Standard Format• UDDI and ebXML Standard Formats• HTTP-SOAP Transport Protocol
•J2EE comes with a built in application server•J2EE defines Java API for XML Processing (JAXP)API for processing XML•Uses SAX and DOM standards
•J2EE does not specify the nature and structure ofthe runtime.•J2EE Container – capability of the runtime tomanage application components.•J2EE APIs specifies the contract between theapplications and the container.
Data JDBC RDBMSClient Application Logic JavaMail Web Container Mail ServerHTML/ XML RMI Servlets JSPs J2EE RMI/IIOP JavaMail Application JDBC JNDI Server JMS IIOP JTA JAF Applet EJB Container CORBA Session Beans Entity Beans JNDI ClientApplica- tion RMI/IIOP Directory Services JavaMail JDBC JNDI JMS JMS JTA JAF
•The Component technologies – to hold the business logic. (JSP, Servlets and EJB)•The Service technologies – to provide supported services to applicationcomponents (JDBC, JTA, JNDI)•The Communication technologies – transparent to appln programmer, providethe mechanism for communication among different parts of the appln.(JMS, JavaMail, RMI-IIOP)•They are re-usable software units containing business logic.• An EJB is just a collection of Java classes and an XML file, bundled into a singleunit.
• They are re-usable software units containing business logic.• An EJB is just a collection of Java classes and an XML file, bundled into a single unit.• Java classes must follow certain rules and provide certain callback methods.
• Intended for the use of a single client.• Lifespan is limited to that of its client.• When the client leaves the web site or the application is shut down, the session bean disappears.
Can keep information on behalf of its client across method calls.For example, Full information of the client is stored in every transactionsexample , credit card
• This bean implements a particular business logic, though itscreated for a particular client, it doesn’t have to remember anythingabout the client.• Can be considered as a remote procedure that gets executed onbehalf of the client, taking some parameters and returns the result(of calculation in a particular business rule context).
•Persistence is its basic property.•It stays around even after the program is terminated until it is deleted.•When the program is restarted, it can gain access to this bean again.•It can be used by any program on the network.•It is executed remotely.•It is identified by a primary key.•Its nothing but the object representation of records in RDBMS tables.
Advantages• J2EE provides a complete architecture for developing - Distributed systems including object persistence, session tracking, transaction management, …•Separation of technical and application-specific code - Deployment descriptors - Container Managed Persistence
Disadvantages• Very complex technology Even simple examples require many interfaces, bean classes, deployment descriptors.• Many errors occur only at runtime (several steps required until the application is running)- Compilation- Packaging- Deployment- Running the application
A Web Application Framework (WAF) is areusable, skeletal, semi-complete modular platformthat can be specialized to produce custom webapplications , which commonly serve the web browsersvia the Https protocol.WAF usually implements the Model-View-Controller(MVC) design pattern, typically in the Model 2architecture to develop request-response web-basedapplications on the Java EE and .NET models.
Request-based Framework : Struts WebWork Beehive , StripesComponent-based Framework Jave Server Faces (JSF) Tapestry WicketHybrid – Meta Framework RIFE Spring FrameworkRIA-based Framework DWR Echo2 JSON-RPC-Java