Introduction and Relevant Definitions
Java, in the context of software, means numerous computer software products and specifications. Taken together these provide a system for developing application software and deploying it in a cross platform environment. Java is provided by Sun Microsystems. Computer Software, or simply software, refers to digital data which can be stored, processed and displayed by a computer. JavaEE application development is software designed to help the user perform a particular task.
Java finds application on a wise range of computing platforms. These range from super Ã¢Â€Â“ computers and enterprise servers on the high end to mobile cell phones and embedded devices on the low end. Java applets are used in desktop computers to obtain secure World Wide Web services. However it is not commonly used on desktops. Java is most widely used in web servers, mobiles and enterprise applications.
Java EE refers to Java Enterprise Edition. It is the industry standard for developing robust, portable, scalable and secure server side Java applications. This encompasses the Java Standard Edition or Java SE and other APIs which are useful for applications related to multi tier client server enterprise like web services, component model, management, and communication APIs. These features make it the standard edition in the industry for implementing enterprise class service oriented architecture (SOA) and Web 2.0 applications. Apache is the general term used to denote the Apache HTTP Web Server software which played a key role in the initial development of the World Wide Web. Application development with apache has been most widely used HTTP Server software since April 1996.
The Apache Tomcat open source application server is used to develop Java EE application. Tomcat is based on how Java Server Pages (JSP) and Java Servlet specifications were originally implemented. These specifications were donated to the Apache Software Foundation in the year 1999. The participation of Sun Microsystems in the development of Apache Tomcat is a continuous process. The focus of this process is to keep Tomcat updated with the new versions that keep coming out of the Java Community Source Process (SM). The precise role of Sun Microsystems is to adapt and integrate the current version of the Tomcat source code (current at that point of time) into the new releases of the Java Enterprise Edition.
Apart from this, Apache Geronimo uses Open JPA for providing Java Persistence API to Java EE applications deployed in the server. In spite of being a part of EJB 3.0, JPA is independent of it. Therefore, JPA can be used in Java SE, web and ejb applications in the same uniform manner. The JSF application has an ejb application and a web application. The ejb application uses JPA to manipulate entities in the database, while the java development with apache uses JSF to look up ejbs that trigger operations on the entities. An embedded derby database, which comes with Geronimo, is used. Environments required to develop, deploy and run the said application include Sun JDK 5.0+ (J2SE 1.5), Web Tools Platform (WTP) 2.0.1, Data tools Platform (DTP) 1.5.1, Apache Geronimo 2.1, Eclipse Modeling Framework (EMFÃ‚Â ) 2.3.1 etc.