An Introduction to J2EE by Mark Johnson

Size: px
Start display at page:

Download "An Introduction to J2EE by Mark Johnson"

Transcription

1 An Introduction to J2EE by Mark Johnson The Java 2, Enterprise Edition (J2EE) platform has been a global market-leading enterprise platform for the past several years. But like any large technology, J2EE requires a significant time investment to learn. While no single article can provide exhaustive coverage of this huge technology base, by the time you re through reading, you ll know the lay of the land, understand the basics of the system design and be ready to explore the topic in more depth. Design Goals J2EE was designed to be an integrated, extensible framework for enterprise software development. Specific goals affect the design of all of its technologies, including: Platform vendors compete on implementation, not on design. J2EE is not a software product. Instead, it is a set of related specifications that describe in detail the interfaces that a J2EE system must provide. Platform vendors and experts collaborate to develop the specifications that lay out the minimum functionality required for each technology. The vendors then compete to provide the best implementations of the specifications. This arrangement helps customers because it minimizes vendor lock-in. Create a market of software components. Many key J2EE technologies are explicitly designed as software components that can run in any platform implementation that conforms to the specifications. Packaging, distributing and installing components as components allow third parties to sell servlets and other J2EE components as drop-in solutions for anyone with a J2EE platform implementation. Integrate with existing and future technologies. J2EE interfaces are extensible. As new technologies become available, new interfaces can be created, and old interfaces can be extended and revised. Run on any hardware. The portable Java runtime decouples applications from hardware, letting customers choose hardware to fit budget and business needs. Component providers can distribute the same binary to all of their clients. Let developers focus on application logic. A J2EE platform implementation provides a much higher level of service than an operating system can provide. The platform implementation handles such everyday but complex tasks as checking permissions, managing threads, load balancing, persisting data and so on. This lets the application and component developer focus on writing code that solves business needs. Provide availability, security, reliability and scalability. The technology specifics all address one or more of these goals. Tiers & Technologies The J2EE platform provides a layer of enterprise application services on top of the Java 2, Standard Edition (J2SE). So J2EE requires a J2SE runtime installation. The basic J2EE programming model is component-based. A J2EE application is simply a collection of intercommunicating components that together support business processes. J2EE programmers create business logic components, package them in a

2 deployment unit (essentially a ZIP file with a defined structure and file extension), and then deploy the components to a server using tools provided by the platform vendor. Each component type in J2EE corresponds to a specific application tier. Sun Microsystems best-practices program for Java technology defines four tiers: The client tier contains the programs employed directly by users to interact with the system. The Web tier contains components and services that process HTTP requests. The EJB tier contains distributed business logic components called Enterprise JavaBeans (EJBs). The EIS (Enterprise Information Systems) tier contains databases, legacy business data and systems, and adapters that provide data access to the other tiers. J2EE simplifies development by defining the concept of a component container for each tier. A container is a set of interfaces that components use to access system services. Each tier has a different set of components and a corresponding container. The container for that tier hosts the component instances and manages access to them. Component object instances live inside a container, meaning that the container creates and destroys the instances as needed. The container is the runtime environment of a component. Any external service needed by the component is provided by the container. A container controls how clients access components. All access to the component by its clients is mediated by the container, allowing the container to add functionality like security, logging and transactions to the components it hosts. Imagine you wanted to serve HTTP requests dynamically. You consider using a CGI program, but then you realize that you ll have to write code to support load balancing, session state maintenance, security, internationalization, cookie management, query string parsing and several other tedious things. So instead, you choose a J2EE Web server. You decide to write your HTTP request handler as a servlet, which is a Web-tier J2EE component that services HTTP requests from within a J2EE-enabled Web server. Your servlet code looks like this: public class YourServlet extends HttpServlet { public void doget(httpservletrequest req, HttpServletResponse res) throws ServletException, IOException { String yourname = req.getparameter("yourname"); PrintWriter out = res.getwriter(); out.println("hi, " + yourname + "!"); } Your servlet subclasses HttpServlet, a class that is defined by the server. Since the class implements the doget() method, the servlet can handle HTTP GET requests. The servlet component relies on the Web container for all information or services it needs. The container receives HTTP requests, parses GET query strings or POST variables, and dispatches method calls to servlet instances to handle the requests. A

3 servlet method may request that the container do things on its behalf by calling its superclass methods, or by calling the methods of its arguments. In this case, the servlet needs two things from its environment: the parameter yourname (parsed from the query string) and an output channel to write the response to. The servlet requests these things from its container in two places. First, it uses the container s HttpServletRequest interface to retrieve the value of the query string parameter yourname. Second, it uses the container s HttpServletResponse interface to acquire an output channel to the browser. The Web container also provides other interfaces for access to the server s configuration, user-defined variables and so on. A compiled servlet is packaged in a WAR file (the Web-tier deployment unit) and deployed to the Web server using vendor-provided tools. The Web container in the server creates an instance of your class, associates it with a URL and then waits for HTTP requests. When you visit the servlet s URL in a browser, the Web container directs the HTTP request to the doget() method of an instance of your servlet class (creating one if necessary). The servlet then produces the content that forms the HTTP response, much as a CGI program would do. Essentially, any request made of a J2EE server in any tier is first intercepted by that server s component container, which provides system-level services such as load balancing; creating, destroying and migrating component instances; and enforcing security. For example, when a browser visits the URL for a servlet, the container may first authenticate the user before providing access to the servlet. The container may manage a pool of servlet instances running in different threads, directing incoming requests to available instances. Sophisticated containers can transparently balance load or provide failover among machines in a cluster. The component developer focuses on business logic and gets these high-level system services for free, because the container handles them automatically. The container also provides services (like access to request parameters) to the components it hosts. The components provide the business logic for the application, requesting system services from the container instead of from the operating system. This example skipped over the detail of how the Web server knew which URL to use for the servlet. That detail, and many others, is handled in a deployment descriptor. The deployment descriptor is an XML file that accompanies software components in the Web archive file and tells the container how to configure the component. Among many other things, deployment desciptors declaratively provide components with configuration parameters, control components transactional behavior, configure persistence mechanisms and indicate to the server how to balance load. Most vendor platforms provide GUI tools for deploying J2EE components and applications. These tools usually handle the messy job of building the deployment units and writing the deployment descriptor files. Now that the concepts of component, container and deployment descriptor are clear, let s have a look at the types of components J2EE provides.

4 Client-Tier Components The most common user client in the client tier is the traditional Web browser, accessing Web-tier components (servlets and JSP pages) in the Web tier over HTTP. In this scenario, the browser is a client, but it s not a component, because it has no container. An application developer using J2EE to create a Web application puts business logic in the Web, EJB and EIS tiers, and then provides browser access to the application using Web-tier components. In addition to browser clients, there are two types of client components in the client tier: applets and application clients. An applet is a program, usually with a user interface, that is usually downloaded with a Web page and displays its user interface as part of the page. The applet container provides services to the applet and enforces special security restrictions. The application client runs in an application client container. Application clients are usually standalone programs that run on a user s local workstation and access back-end resources through standard interfaces. An application client has access to the entire suite of J2SE APIs, as well as all J2EE technologies in other tiers. Application clients don t have the security restrictions of applets, but instead have the same security model as other J2EE components. Application clients are preferable for creating highly interactive, medium- to heavy-weight clients that need the full functionality of the Java platform and access to enterprise resources in other tiers. Web-Tier Components The components available in the Web tier are servlets and Java server pages. Both run inside a Web container, which runs inside the memory space of a Web server. Web-tier components process HTTP requests and play the same role as CGI programs in traditional Web applications. Servlets are server-side components that process HTTP requests. They are best suited for performing business logic, often using resources in other tiers. Java server pages, on the other hand, are the preferred technology for creating dynamic content. JSPs are similar to other dynamic page markup languages, such as ASP or PHP pages. JSPs consist mostly of HTML, with special markup characters that delimit Java expressions or chunks of code. The Web container serves JSPs by first replacing the text between the delimiters with the result of evaluating the text. For example, the following simple JSP does essentially the same thing as the preceding servlet example: Hi,! But it does so with a lot less code. JSPs let page designers focus on HTML, whereas servlets let programmers focus on business logic. Many J2EE Web applications use servlets and JSPs together to perform business logic and present data, respectively. The Web container provides a high level of service to its components, not only managing instances, dispatching requests and parsing parameters, but also enforcing security

5 policies, managing server-side state and supporting communication between tiers. The J2EE Web container also supports SOAP- and REST-based Web services. EJB Tier Components Enterprise JavaBeans, the EJB tier components, are application components that perform business logic and represent business data. EJB components reside in an EJB container within an EJB server, and are accessed by their clients through remote procedure call interface using CORBA. Java clients usually use Enterprise JavaBeans through Java's native Remote Method Invocation (RMI) facility. But non-java clients also can use enterprise beans using the Internet Inter-Orb Protocol (IIOP). There are four kinds of Enterprise JavaBeans: Stateless session beans provide business logic with no user-specific state (e.g., a catalog object). Stateless session beans also can act as Web service endpoints. Stateful session beans provide business logic that is specific to an individual user or agent session (e.g., a Web-based shopping cart). Message-driven beans are like stateless session beans, but are activated in response to a message, rather than an RPC invocation (e.g., a workflow queue). Entity beans represent business logic with persistent server-side state (e.g., an invoice object). The EJB components focus primarily on business logic and rely on the container for system services. Among other services, the EJB container handles RPC parameter and return value marshalling, enforces security, manages EJB instances, persists and fetches data, tracks session state, maintains conversational state and balances load. The client programming model for EJBs is simple: 1. Use a directory interface to look up the component s home interface, which is the component instance factory or lookup service. 2. Use the home interface to get a reference to an enterprise bean instance s component interface, which is the component s set of business methods. 3. Call the component interface s methods, which execute business methods remotely on the component instance in the EJB server. The programming model for the components is somewhat more complex, but that moderate increase in complexity pays for the much higher level of service provided by the EJB container. EIS-Tier Components Components in the EIS tier are called connectors. A connector is an adapter class that makes a legacy system or data source available to other J2EE components. The connector container manages connector instances and distributed transactions for the connector s resource.

6 The best-known connector is the JDBC interface, which provides vendor-neutral access to relational databases. Connectors are a key technology for using J2EE as for Enterprise Application Integration. Conclusion As you can see, the world of J2EE is large and can be intimidating. Learning to use J2EE skillfully takes time, but the basic ideas driving J2EE s design are really quite simple: Let the server handle all the really hard stuff, focus your code on business processes, and don t single-source your IT platform. That s good advice regardless of what enterprise technologies you choose. Mark Johnson is a former JavaWorld columnist and author of the Enterprise Java Tech Tips for Sun. He is co-author of Designing Enterprise Applications With the J2EE Platform, 2nd Edition. He currently works as a contractor at the National Center for Biotechnology Information. Mark can be reached at This article originally appeared in Certification Magazine,

How to Build an E-Commerce Application using J2EE. Carol McDonald Code Camp Engineer

How to Build an E-Commerce Application using J2EE. Carol McDonald Code Camp Engineer How to Build an E-Commerce Application using J2EE Carol McDonald Code Camp Engineer Code Camp Agenda J2EE & Blueprints Application Architecture and J2EE Blueprints E-Commerce Application Design Enterprise

More information

What Is the Java TM 2 Platform, Enterprise Edition?

What Is the Java TM 2 Platform, Enterprise Edition? Page 1 de 9 What Is the Java TM 2 Platform, Enterprise Edition? This document provides an introduction to the features and benefits of the Java 2 platform, Enterprise Edition. Overview Enterprises today

More information

ACM Crossroads Student Magazine The ACM's First Electronic Publication

ACM Crossroads Student Magazine The ACM's First Electronic Publication Page 1 of 8 ACM Crossroads Student Magazine The ACM's First Electronic Publication Crossroads Home Join the ACM! Search Crossroads crossroads@acm.org ACM / Crossroads / Columns / Connector / An Introduction

More information

Glassfish, JAVA EE, Servlets, JSP, EJB

Glassfish, JAVA EE, Servlets, JSP, EJB Glassfish, JAVA EE, Servlets, JSP, EJB Java platform A Java platform comprises the JVM together with supporting class libraries. Java 2 Standard Edition (J2SE) (1999) provides core libraries for data structures,

More information

Distributed Objects and Components

Distributed Objects and Components Distributed Objects and Components Introduction This essay will identify the differences between objects and components and what it means for a component to be distributed. It will also examine the Java

More information

Contents. Client-server and multi-tier architectures. The Java 2 Enterprise Edition (J2EE) platform

Contents. Client-server and multi-tier architectures. The Java 2 Enterprise Edition (J2EE) platform Part III: Component Architectures Natividad Martínez Madrid y Simon Pickin Departamento de Ingeniería Telemática Universidad Carlos III de Madrid {nati, spickin}@it.uc3m.es Introduction Contents Client-server

More information

Client-Server Architecture & J2EE Platform Technologies Overview Ahmed K. Ezzat

Client-Server Architecture & J2EE Platform Technologies Overview Ahmed K. Ezzat Client-Server Architecture & J2EE Platform Technologies Overview Ahmed K. Ezzat Page 1 of 14 Roadmap Client-Server Architecture Introduction Two-tier Architecture Three-tier Architecture The MVC Architecture

More information

Architectural Overview

Architectural Overview Architectural Overview Version 7 Part Number 817-2167-10 March 2003 A Sun ONE Application Server 7 deployment consists of a number of application server instances, an administrative server and, optionally,

More information

3-Tier Architecture. 3-Tier Architecture. Prepared By. Channu Kambalyal. Page 1 of 19

3-Tier Architecture. 3-Tier Architecture. Prepared By. Channu Kambalyal. Page 1 of 19 3-Tier Architecture Prepared By Channu Kambalyal Page 1 of 19 Table of Contents 1.0 Traditional Host Systems... 3 2.0 Distributed Systems... 4 3.0 Client/Server Model... 5 4.0 Distributed Client/Server

More information

Internet Engineering: Web Application Architecture. Ali Kamandi Sharif University of Technology kamandi@ce.sharif.edu Fall 2007

Internet Engineering: Web Application Architecture. Ali Kamandi Sharif University of Technology kamandi@ce.sharif.edu Fall 2007 Internet Engineering: Web Application Architecture Ali Kamandi Sharif University of Technology kamandi@ce.sharif.edu Fall 2007 Centralized Architecture mainframe terminals terminals 2 Two Tier Application

More information

Java EE Introduction, Content. Component Architecture: Why and How Java EE: Enterprise Java

Java EE Introduction, Content. Component Architecture: Why and How Java EE: Enterprise Java Java EE Introduction, Content Component Architecture: Why and How Java EE: Enterprise Java The Three-Tier Model The three -tier architecture allows to maintain state information, to improve performance,

More information

Virtual Credit Card Processing System

Virtual Credit Card Processing System The ITB Journal Volume 3 Issue 2 Article 2 2002 Virtual Credit Card Processing System Geraldine Gray Karen Church Tony Ayres Follow this and additional works at: http://arrow.dit.ie/itbj Part of the E-Commerce

More information

Java 2 Platform, Enterprise Edition (J2EE) Bruno Souza Java Technologist, Sun Microsystems, Inc.

Java 2 Platform, Enterprise Edition (J2EE) Bruno Souza Java Technologist, Sun Microsystems, Inc. Java 2 Platform, Enterprise Edition (J2EE) Bruno Souza Java Technologist, Sun Microsystems, Inc. J1-680, Hapner/Shannon 1 Contents The Java 2 Platform, Enterprise Edition (J2EE) J2EE Environment APM and

More information

Oracle WebLogic Foundation of Oracle Fusion Middleware. Lawrence Manickam Toyork Systems Inc www.toyork.com http://ca.linkedin.

Oracle WebLogic Foundation of Oracle Fusion Middleware. Lawrence Manickam Toyork Systems Inc www.toyork.com http://ca.linkedin. Oracle WebLogic Foundation of Oracle Fusion Middleware Lawrence Manickam Toyork Systems Inc www.toyork.com http://ca.linkedin.com/in/lawrence143 History of WebLogic WebLogic Inc started in 1995 was a company

More information

Announcements. Comments on project proposals will go out by email in next couple of days...

Announcements. Comments on project proposals will go out by email in next couple of days... Announcements Comments on project proposals will go out by email in next couple of days... 3-Tier Using TP Monitor client application TP monitor interface (API, presentation, authentication) transaction

More information

Component Middleware. Sophie Chabridon. INT - INF Department - Distributed Systems team 2006

Component Middleware. Sophie Chabridon. INT - INF Department - Distributed Systems team 2006 Sophie Chabridon INT - INF Department - Distributed Systems team 2006 Outline 1. Introduction................................................................... 3 2. Overview of EJB Technology.................................................

More information

Oracle WebLogic Server 11g: Administration Essentials

Oracle WebLogic Server 11g: Administration Essentials Oracle University Contact Us: 1.800.529.0165 Oracle WebLogic Server 11g: Administration Essentials Duration: 5 Days What you will learn This Oracle WebLogic Server 11g: Administration Essentials training

More information

Introduction to Sun ONE Application Server 7

Introduction to Sun ONE Application Server 7 Introduction to Sun ONE Application Server 7 The Sun ONE Application Server 7 provides a high-performance J2EE platform suitable for broad deployment of application services and web services. It offers

More information

JReport Server Deployment Scenarios

JReport Server Deployment Scenarios JReport Server Deployment Scenarios Contents Introduction... 3 JReport Architecture... 4 JReport Server Integrated with a Web Application... 5 Scenario 1: Single Java EE Server with a Single Instance of

More information

Web Container Components Servlet JSP Tag Libraries

Web Container Components Servlet JSP Tag Libraries Web Application Development, Best Practices by Jeff Zhuk, JavaSchool.com ITS, Inc. dean@javaschool.com Web Container Components Servlet JSP Tag Libraries Servlet Standard Java class to handle an HTTP request

More information

Mobile Devices: Server and Management Lesson 03 Application Servers Part 2

Mobile Devices: Server and Management Lesson 03 Application Servers Part 2 Mobile Devices: Server and Management Lesson 03 Application Servers Part 2 Oxford University Press 2007. All rights reserved. 1 Sun Java System Web Server 6 For large business applications Compatible with

More information

Enterprise Java Security Fundamentals

Enterprise Java Security Fundamentals Pistoia_ch03.fm Page 55 Tuesday, January 6, 2004 1:56 PM CHAPTER3 Enterprise Java Security Fundamentals THE J2EE platform has achieved remarkable success in meeting enterprise needs, resulting in its widespread

More information

White paper. IBM WebSphere Application Server architecture

White paper. IBM WebSphere Application Server architecture White paper IBM WebSphere Application Server architecture WebSphere Application Server architecture This IBM WebSphere Application Server white paper was written by: Jeff Reser, WebSphere Product Manager

More information

Client/server is a network architecture that divides functions into client and server

Client/server is a network architecture that divides functions into client and server Page 1 A. Title Client/Server Technology B. Introduction Client/server is a network architecture that divides functions into client and server subsystems, with standard communication methods to facilitate

More information

Chapter 4. Architecture. Table of Contents. J2EE Technology Application Servers. Application Models

Chapter 4. Architecture. Table of Contents. J2EE Technology Application Servers. Application Models Table of Contents J2EE Technology Application Servers... 1 ArchitecturalOverview...2 Server Process Interactions... 4 JDBC Support and Connection Pooling... 4 CMPSupport...5 JMSSupport...6 CORBA ORB Support...

More information

zen Platform technical white paper

zen Platform technical white paper zen Platform technical white paper The zen Platform as Strategic Business Platform The increasing use of application servers as standard paradigm for the development of business critical applications meant

More information

Lecture 29 Application Server. 1. Application servers in general. 2. JBoss

Lecture 29 Application Server. 1. Application servers in general. 2. JBoss Lecture 29 Application Server 1. Application servers in general 2. JBoss What is application server An application server is a software platform on which applications can be installed as services, which

More information

What is Middleware? Software that functions as a conversion or translation layer. It is also a consolidator and integrator.

What is Middleware? Software that functions as a conversion or translation layer. It is also a consolidator and integrator. What is Middleware? Application Application Middleware Middleware Operating System Operating System Software that functions as a conversion or translation layer. It is also a consolidator and integrator.

More information

Java-technology based projects

Java-technology based projects Java-technology based projects TietoEnator Corporation Oyj Simo Vuorinen simo.vuorinen@tietoenator.com 1 TietoEnator 2000 Agenda Java: language, architecture, platform? Javan promises and problems Enterprise-APIs

More information

Understanding Architecture and Framework of J2EE using Web Application

Understanding Architecture and Framework of J2EE using Web Application Understanding Architecture and Framework of J2EE using Web Application Devadrita Dey Sarkar,Anavi jaiswal, Ankur Saxena Amity University,UTTAR PRADESH Sector-125, Noida, UP-201303, India Abstract: This

More information

Core J2EE Patterns, Frameworks and Micro Architectures

Core J2EE Patterns, Frameworks and Micro Architectures Core J2EE Patterns, Frameworks and Micro Architectures Deepak.Alur@sun.com Patterns & Design Expertise Center Sun Software Services January 2004 Agenda Patterns Core J2EE Pattern Catalog Background J2EE

More information

A Brief Introduction to Java Enterprise Edition Platform (JEE)

A Brief Introduction to Java Enterprise Edition Platform (JEE) A Brief Introduction to Java Enterprise Edition Platform (JEE) Juan Manuel Gimeno Josep Maria Ribó {jmgimeno,josepma}@diei.udl.cat Title:(by-sa.eps) Creator:Adobe Illustra CreationDate:3/27/08 What do

More information

Java 2 Enterprise Edition (J2EE) versus The.NET Platform

Java 2 Enterprise Edition (J2EE) versus The.NET Platform Java 2 Enterprise Edition (J2EE) versus The.NET Platform by Felicia Cheng Jared Zheng Jonathan Card Peng Li Xiao He Nov 26, 2004 Introduction... 2 A Typical Enterprise Application Architecture... 3 The.NET

More information

Java EE 7: Back-End Server Application Development

Java EE 7: Back-End Server Application Development Oracle University Contact Us: 01-800-913-0322 Java EE 7: Back-End Server Application Development Duration: 5 Days What you will learn The Java EE 7: Back-End Server Application Development training teaches

More information

Developing Applications with Java EE 6 on WebLogic Server 12c

Developing Applications with Java EE 6 on WebLogic Server 12c Oracle University Contact Us: 0845 777 7711 Developing Applications with Java EE 6 on WebLogic Server 12c Duration: 5 Days What you will learn The Developing Applications with Java EE 6 on WebLogic Server

More information

Overview. COMP534B Software Design. Server-side Components. Server-side Components. J2EE Platform. J2EE Containers

Overview. COMP534B Software Design. Server-side Components. Server-side Components. J2EE Platform. J2EE Containers COMP534B Software Design Server-side component programming Overview Intro to Java server-side components Java s EJBs (Enterprise Java beans) Application servers (J2EE) and web services We ll take a look

More information

The end. Carl Nettelblad 2015-06-04

The end. Carl Nettelblad 2015-06-04 The end Carl Nettelblad 2015-06-04 The exam and end of the course Don t forget the course evaluation! Closing tomorrow, Friday Project upload deadline tonight Book presentation appointments with Kalyan

More information

NetBeans IDE Field Guide

NetBeans IDE Field Guide NetBeans IDE Field Guide Copyright 2005 Sun Microsystems, Inc. All rights reserved. Table of Contents Introduction to J2EE Development in NetBeans IDE...1 Configuring the IDE for J2EE Development...2 Getting

More information

Chapter 2 TOPOLOGY SELECTION. SYS-ED/ Computer Education Techniques, Inc.

Chapter 2 TOPOLOGY SELECTION. SYS-ED/ Computer Education Techniques, Inc. Chapter 2 TOPOLOGY SELECTION SYS-ED/ Computer Education Techniques, Inc. Objectives You will learn: Topology selection criteria. Perform a comparison of topology selection criteria. WebSphere component

More information

New Methods for Performance Monitoring of J2EE Application Servers

New Methods for Performance Monitoring of J2EE Application Servers New Methods for Performance Monitoring of J2EE Application Servers Adrian Mos (Researcher) & John Murphy (Lecturer) Performance Engineering Laboratory, School of Electronic Engineering, Dublin City University,

More information

WEB SERVICES. Revised 9/29/2015

WEB SERVICES. Revised 9/29/2015 WEB SERVICES Revised 9/29/2015 This Page Intentionally Left Blank Table of Contents Web Services using WebLogic... 1 Developing Web Services on WebSphere... 2 Developing RESTful Services in Java v1.1...

More information

Developing Java Web Services

Developing Java Web Services Page 1 of 5 Developing Java Web Services Hands On 35 Hours Online 5 Days In-Classroom A comprehensive look at the state of the art in developing interoperable web services on the Java EE platform. Students

More information

EJB & J2EE. Component Technology with thanks to Jim Dowling. Components. Problems with Previous Paradigms. What EJB Accomplishes

EJB & J2EE. Component Technology with thanks to Jim Dowling. Components. Problems with Previous Paradigms. What EJB Accomplishes University of Dublin Trinity College EJB & J2EE Component Technology with thanks to Jim Dowling The Need for Component-Based Technologies The following distributed computing development paradigms have

More information

J2EE Web Development. Agenda. Application servers. What is J2EE? Main component types Application Scenarios J2EE APIs and Services.

J2EE Web Development. Agenda. Application servers. What is J2EE? Main component types Application Scenarios J2EE APIs and Services. J2EE Web Development Agenda Application servers What is J2EE? Main component types Application Scenarios J2EE APIs and Services Examples 1 1. Application Servers In the beginning, there was darkness and

More information

A framework for web-based product data management using J2EE

A framework for web-based product data management using J2EE Int J Adv Manuf Technol (2004) 24: 847 852 DOI 10.1007/s00170-003-1697-8 ORIGINAL ARTICLE M.Y. Huang Y.J. Lin Hu Xu A framework for web-based product data management using J2EE Received: 8 October 2002

More information

Partitioning and Clustering Demonstration

Partitioning and Clustering Demonstration Partitioning and Clustering Demonstration Improve performance for Web and application deployment with Borland Enterprise Server by Joe Overton, U.S. Systems Engineer, Borland Software Corporation May 2002

More information

Learning GlassFish for Tomcat Users

Learning GlassFish for Tomcat Users Learning GlassFish for Tomcat Users White Paper February 2009 Abstract There is a direct connection between the Web container technology used by developers and the performance and agility of applications.

More information

WebLogic Server 7.0 Single Sign-On: An Overview

WebLogic Server 7.0 Single Sign-On: An Overview WebLogic Server 7.0 Single Sign-On: An Overview Today, a growing number of applications are being made available over the Web. These applications are typically comprised of different components, each of

More information

Introduction to J2EE Web Technologies

Introduction to J2EE Web Technologies Introduction to J2EE Web Technologies Kyle Brown Senior Technical Staff Member IBM WebSphere Services RTP, NC brownkyl@us.ibm.com Overview What is J2EE? What are Servlets? What are JSP's? How do you use

More information

Building Java Servlets with Oracle JDeveloper

Building Java Servlets with Oracle JDeveloper Building Java Servlets with Oracle JDeveloper Chris Schalk Oracle Corporation Introduction Developers today face a formidable task. They need to create large, distributed business applications. The actual

More information

25 May 11.30 Code 3C3 Peeling the Layers of the 'Performance Onion John Murphy, Andrew Lee and Liam Murphy

25 May 11.30 Code 3C3 Peeling the Layers of the 'Performance Onion John Murphy, Andrew Lee and Liam Murphy UK CMG Presentation 25 May 11.30 Code 3C3 Peeling the Layers of the 'Performance Onion John Murphy, Andrew Lee and Liam Murphy Is Performance a Problem? Not using appropriate performance tools will cause

More information

Title Page. Hosted Payment Page Guide ACI Commerce Gateway

Title Page. Hosted Payment Page Guide ACI Commerce Gateway Title Page Hosted Payment Page Guide ACI Commerce Gateway Copyright Information 2008 by All rights reserved. All information contained in this documentation, as well as the software described in it, is

More information

Web Application Development

Web Application Development Web Application Development Introduction Because of wide spread use of internet, web based applications are becoming vital part of IT infrastructure of large organizations. For example web based employee

More information

Getting Started with Web Applications

Getting Started with Web Applications 3 Getting Started with Web Applications A web application is a dynamic extension of a web or application server. There are two types of web applications: Presentation-oriented: A presentation-oriented

More information

Clustering with Tomcat. Introduction. O'Reilly Network: Clustering with Tomcat. by Shyam Kumar Doddavula 07/17/2002

Clustering with Tomcat. Introduction. O'Reilly Network: Clustering with Tomcat. by Shyam Kumar Doddavula 07/17/2002 Page 1 of 9 Published on The O'Reilly Network (http://www.oreillynet.com/) http://www.oreillynet.com/pub/a/onjava/2002/07/17/tomcluster.html See this if you're having trouble printing code examples Clustering

More information

INTRODUCTION TO WEB TECHNOLOGY

INTRODUCTION TO WEB TECHNOLOGY UNIT-I Introduction to Web Technologies: Introduction to web servers like Apache1.1, IIS, XAMPP (Bundle Server), WAMP Server(Bundle Server), handling HTTP Request and Response, installation of above servers

More information

Instituto Politécnico Nacional Escuela Superior de Cómputo. THEMATIC UNIT: I Introduction to Web Applications

Instituto Politécnico Nacional Escuela Superior de Cómputo. THEMATIC UNIT: I Introduction to Web Applications Instituto Politécnico Nacional Escuela Superior de Cómputo THEMATIC UNIT: I Introduction to Web Applications M. en C. asuncionez@gmail.com Introduction to Web Applications UNIT OF COMPETENCE The student

More information

Building Web Applications, Servlets, JSP and JDBC

Building Web Applications, Servlets, JSP and JDBC Building Web Applications, Servlets, JSP and JDBC Overview Java 2 Enterprise Edition (JEE) is a powerful platform for building web applications. The JEE platform offers all the advantages of developing

More information

PROGRESS Portal Access Whitepaper

PROGRESS Portal Access Whitepaper PROGRESS Portal Access Whitepaper Maciej Bogdanski, Michał Kosiedowski, Cezary Mazurek, Marzena Rabiega, Malgorzata Wolniewicz Poznan Supercomputing and Networking Center April 15, 2004 1 Introduction

More information

J2EE for Objects with Geographical Attributes

J2EE for Objects with Geographical Attributes 2004:142 CIV MASTER S THESIS J2EE for Objects with Geographical Attributes ULRIKA BERGLUND MASTER OF SCIENCE PROGRAMME Department of Computer Science and Electrical Engineering Division of Media Technology

More information

ON-LINE BOOKING APPLICATION NEIL TAIT

ON-LINE BOOKING APPLICATION NEIL TAIT ON-LINE BOOKING APPLICATION NEIL TAIT Submitted in partial fulfilment of the requirements of Napier University for the degree of Bachelor of Engineering with Honours in Software Engineering School of Computing

More information

JAVA ENTERPRISE IN A NUTSHELL. Jim Farley and William Crawford. O'REILLY 4 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo.

JAVA ENTERPRISE IN A NUTSHELL. Jim Farley and William Crawford. O'REILLY 4 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo. 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. JAVA ENTERPRISE IN A NUTSHELL Third Edition Jim Farley and William

More information

Java 2 Platform, Enterprise Edition (J2EE): Enabling Technologies for EAI

Java 2 Platform, Enterprise Edition (J2EE): Enabling Technologies for EAI Java 2 Platform, Enterprise Edition (J2EE): Enabling Technologies for EAI Tony Ng, Staff Engineer Rahul Sharma, Senior Staff Engineer Sun Microsystems Inc. 1 J2EE Overview Tony Ng, Staff Engineer Sun Microsystems

More information

CS 55.17. Developing Web Applications with Java Technologies

CS 55.17. Developing Web Applications with Java Technologies CS 55.17 Developing Web Applications with Java Technologies Class Introduction Instructor: David B. Pearson Email: Dpearson@SantaRosa.edu Yahoo! ID: DavidPearson Website: http://www.santarosa.edu/~dpearson/

More information

JEE Web Applications Jeff Zhuk

JEE Web Applications Jeff Zhuk JEE Web Applications Jeff Zhuk From the book and beyond Integration-Ready Architecture and Design Cambridge University Press Software Engineering With XML, Java,.NET, Wireless, Speech and Knowledge Technologies

More information

Stock Trader System. Architecture Description

Stock Trader System. Architecture Description Stock Trader System Architecture Description Michael Stevens mike@mestevens.com http://www.mestevens.com Table of Contents 1. Purpose of Document 2 2. System Synopsis 2 3. Current Situation and Environment

More information

Web Application Development Fall 2012 Final Exam Study Guide

Web Application Development Fall 2012 Final Exam Study Guide Web Application Development Fall 2012 Final Exam Study Guide This guide is designed to be a list of topics that might appear on the final exam. Most (if not all) of the answers to these questions are in

More information

Net-WMS FP6-034691. Net-WMS SPECIFIC TARGETED RESEARCH OR INNOVATION PROJECT. Networked Businesses. D.8.1 Networked architecture J2EE compliant

Net-WMS FP6-034691. Net-WMS SPECIFIC TARGETED RESEARCH OR INNOVATION PROJECT. Networked Businesses. D.8.1 Networked architecture J2EE compliant Net-WMS SPECIFIC TARGETED RESEARCH OR INNOVATION PROJECT Networked Businesses D.8.1 Networked architecture J2EE compliant ( Version 1 ) Due date of deliverable: June 30 th, 2007 Actual submission date:

More information

Java Data Objects. JSR000012, Version 0.8 Public Review Draft. Specification Lead: Craig Russell, Sun Microsystems Inc.

Java Data Objects. JSR000012, Version 0.8 Public Review Draft. Specification Lead: Craig Russell, Sun Microsystems Inc. Java Data Objects JSR000012, Version 0.8 Public Review Draft Specification Lead: Craig Russell, Sun Microsystems Inc. Lubomír Bulej Introduction Data access: different techniques for different data types

More information

Course Description. Course Audience. Course Outline. Course Page - Page 1 of 5

Course Description. Course Audience. Course Outline. Course Page - Page 1 of 5 Course Page - Page 1 of 5 WebSphere Application Server 7.0 Administration on Windows BSP-1700 Length: 5 days Price: $ 2,895.00 Course Description This course teaches the basics of the administration and

More information

Detailed Table of Contents

Detailed Table of Contents Detailed Table of Contents Foreword Preface 1. Networking Protocols and OSI Model 1 1.1 Protocols in Computer Communications 3 1.2 The OSI Model 7 1.3 OSI Layer Functions 11 Summary 19 Key Terms and Concepts

More information

WebSphere Server Administration Course

WebSphere Server Administration Course WebSphere Server Administration Course Chapter 1. Java EE and WebSphere Overview Goals of Enterprise Applications What is Java? What is Java EE? The Java EE Specifications Role of Application Server What

More information

Understanding Application Servers

Understanding Application Servers Understanding Application Servers Author: Ajay Srivastava & Anant Bhargava TCS, Jan 03 Background Application servers, whatever their function, occupies a large chunk of computing territory between database

More information

Solutions for detect, diagnose and resolve performance problems in J2EE applications

Solutions for detect, diagnose and resolve performance problems in J2EE applications IX Konferencja PLOUG Koœcielisko PaŸdziernik 2003 Solutions for detect, diagnose and resolve performance problems in J2EE applications Cristian Maties Quest Software Custom-developed J2EE applications

More information

IBM WebSphere Server Administration

IBM WebSphere Server Administration IBM WebSphere Server Administration This course teaches the administration and deployment of web applications in the IBM WebSphere Application Server. Duration 24 hours Course Objectives Upon completion

More information

This training is targeted at System Administrators and developers wanting to understand more about administering a WebLogic instance.

This training is targeted at System Administrators and developers wanting to understand more about administering a WebLogic instance. This course teaches system/application administrators to setup, configure and manage an Oracle WebLogic Application Server, its resources and environment and the Java EE Applications running on it. This

More information

Enterprise Application Integration

Enterprise Application Integration Enterprise Integration By William Tse MSc Computer Science Enterprise Integration By the end of this lecturer you will learn What is Enterprise Integration (EAI)? Benefits of Enterprise Integration Barrier

More information

As you learned about in Chapter 1, WebSphere Application Server V6 supports the

As you learned about in Chapter 1, WebSphere Application Server V6 supports the 23 J2EE Packaging, Enhanced EARs, and the Application Server Toolkit As you learned about in Chapter 1, WebSphere Application Server V6 supports the full Java 2 Platform, Enterprise Edition (J2EE) 1.4

More information

Elements of Advanced Java Programming

Elements of Advanced Java Programming Appendix A Elements of Advanced Java Programming Objectives At the end of this appendix, you should be able to: Understand two-tier and three-tier architectures for distributed computing Understand the

More information

Efficiency of Web Based SAX XML Distributed Processing

Efficiency of Web Based SAX XML Distributed Processing Efficiency of Web Based SAX XML Distributed Processing R. Eggen Computer and Information Sciences Department University of North Florida Jacksonville, FL, USA A. Basic Computer and Information Sciences

More information

White Paper: 1) Architecture Objectives: The primary objective of this architecture is to meet the. 2) Architecture Explanation

White Paper: 1) Architecture Objectives: The primary objective of this architecture is to meet the. 2) Architecture Explanation White Paper: 1) Architecture Objectives: The primary objective of this architecture is to meet the following requirements (SLAs). Scalability and High Availability Modularity and Maintainability Extensibility

More information

2012 LABVANTAGE Solutions, Inc. All Rights Reserved.

2012 LABVANTAGE Solutions, Inc. All Rights Reserved. LABVANTAGE Architecture 2012 LABVANTAGE Solutions, Inc. All Rights Reserved. DOCUMENT PURPOSE AND SCOPE This document provides an overview of the LABVANTAGE hardware and software architecture. It is written

More information

MagDiSoft Web Solutions Office No. 102, Bramha Majestic, NIBM Road Kondhwa, Pune -411048 Tel: 808-769-4605 / 814-921-0979 www.magdisoft.

MagDiSoft Web Solutions Office No. 102, Bramha Majestic, NIBM Road Kondhwa, Pune -411048 Tel: 808-769-4605 / 814-921-0979 www.magdisoft. WebLogic Server Course Following is the list of topics that will be covered during the course: Introduction to WebLogic What is Java? What is Java EE? The Java EE Architecture Enterprise JavaBeans Application

More information

Enterprise Applications

Enterprise Applications Module 11 At the end of this module you will be able to: 9 Describe the differences between EJB types 9 Deploy EJBs 9 Define an Enterprise Application 9 Dxplain the directory structure of an Enterprise

More information

Performance and Clustering of J2EE Applications

Performance and Clustering of J2EE Applications Performance and Clustering of J2EE Applications SWE 645, Fall 2004 Nick Duan 1 Objectives Identify performance problems in J2EE Identify solutions for performance enhancement in development and configuration

More information

The Design of B2B E-commerce System Based on MVC Model and J2EE

The Design of B2B E-commerce System Based on MVC Model and J2EE MANAGEMENT SCIENCE AND ENGINEERING Vol. 4, No. 4, 2010, pp. 113-119 www.cscanada.org ISSN 1913-0341 [Print] ISSN 1913-035X [Online] www.cscanada.net The Design of B2B E-commerce System Based on MVC Model

More information

COMP201 Java Programming

COMP201 Java Programming COMP201 Java Programming Part III: Advanced Features Topic 14: Servlets Servlets and JavaServer Pages (JSP) 1.0: A Tutorial http://www.apl.jhu.edu/~hall/java/servlet-tutorial/servlet-tutorial-intro.html

More information

10. Ausblick. 10.1 Zusammenfassung. Datenbanksysteme und ihre Realisierung. Datenmodelle. Anwendungen. RDM (Kap. 3) Transaktionen (Kap.

10. Ausblick. 10.1 Zusammenfassung. Datenbanksysteme und ihre Realisierung. Datenmodelle. Anwendungen. RDM (Kap. 3) Transaktionen (Kap. Vorlesung WS 1999/2000 10. Ausblick 10.2.1 10.1 Zusammenfassung Datenmodelle Datenbanksysteme und ihre Realisierung Anwendungen RDM (Kap. 3) NDM, HDM (Kap. 4) Transaktionen (Kap. 8) Architekturen (Kap.

More information

enterprise^ IBM WebSphere Application Server v7.0 Security "publishing Secure your WebSphere applications with Java EE and JAAS security standards

enterprise^ IBM WebSphere Application Server v7.0 Security publishing Secure your WebSphere applications with Java EE and JAAS security standards IBM WebSphere Application Server v7.0 Security Secure your WebSphere applications with Java EE and JAAS security standards Omar Siliceo "publishing enterprise^ birmingham - mumbai Preface 1 Chapter 1:

More information

ITS. Java WebService. ITS Data-Solutions Pvt Ltd BENEFITS OF ATTENDANCE:

ITS. Java WebService. ITS Data-Solutions Pvt Ltd BENEFITS OF ATTENDANCE: Java WebService BENEFITS OF ATTENDANCE: PREREQUISITES: Upon completion of this course, students will be able to: Describe the interoperable web services architecture, including the roles of SOAP and WSDL.

More information

WebSphere Application Server - Introduction, Monitoring Tools, & Administration

WebSphere Application Server - Introduction, Monitoring Tools, & Administration WebSphere Application Server - Introduction, Monitoring Tools, & Administration presented by: Michael S. Pallos, MBA Senior Solution Architect IBM Certified Systems Expert: WebSphere MQ 5.2 e-business

More information

AN OVERVIEW OF SERVLET AND JSP TECHNOLOGY

AN OVERVIEW OF SERVLET AND JSP TECHNOLOGY AN OVERVIEW OF SERVLET AND JSP TECHNOLOGY Topics in This Chapter Understanding the role of servlets Building Web pages dynamically Looking at servlet code Evaluating servlets vs. other technologies Understanding

More information

Implementing the Shop with EJB

Implementing the Shop with EJB Exercise 2 Implementing the Shop with EJB 2.1 Overview This exercise is a hands-on exercise in Enterprise JavaBeans (EJB). The exercise is as similar as possible to the other exercises (in other technologies).

More information

WebSphere Training Outline

WebSphere Training Outline WEBSPHERE TRAINING WebSphere Training Outline WebSphere Platform Overview o WebSphere Product Categories o WebSphere Development, Presentation, Integration and Deployment Tools o WebSphere Application

More information

Module 13 Implementing Java EE Web Services with JAX-WS

Module 13 Implementing Java EE Web Services with JAX-WS Module 13 Implementing Java EE Web Services with JAX-WS Objectives Describe endpoints supported by Java EE 5 Describe the requirements of the JAX-WS servlet endpoints Describe the requirements of JAX-WS

More information

A Java Framework for Multi-Tier Web-Centric Applications Development

A Java Framework for Multi-Tier Web-Centric Applications Development 1 A Java Framework for Multi-Tier Web-Centric Applications Development Davide Brugali, Giuseppe Menga, and Franco Guidi-Polanco Abstract Web-centric applications can be understood as middle-size applications

More information

Software. Managing Software Assets. Major types of software BIOS

Software. Managing Software Assets. Major types of software BIOS Software Managing Software Assets A software program is a series of statements or instructions to the computer. The process of writing or coding programs is termed programming; and the individuals who

More information

Outline SOA. Properties of SOA. Service 2/19/2016. Definitions. Comparison of component technologies. Definitions Component technologies

Outline SOA. Properties of SOA. Service 2/19/2016. Definitions. Comparison of component technologies. Definitions Component technologies Szolgáltatásorientált rendszerintegráció Comparison of component technologies Simon Balázs, BME IIT Outline Definitions Component technologies RPC, RMI, CORBA, COM+,.NET, Java, OSGi, EJB, SOAP web services,

More information

COM 440 Distributed Systems Project List Summary

COM 440 Distributed Systems Project List Summary COM 440 Distributed Systems Project List Summary This list represents a fairly close approximation of the projects that we will be working on. However, these projects are subject to change as the course

More information

Accessing Data with ADOBE FLEX 4.6

Accessing Data with ADOBE FLEX 4.6 Accessing Data with ADOBE FLEX 4.6 Legal notices Legal notices For legal notices, see http://help.adobe.com/en_us/legalnotices/index.html. iii Contents Chapter 1: Accessing data services overview Data

More information