Java 2 Enterprise Edition Presented by: Reem Osama Shehata Supervised by: Dr. Sherif Aly 16 th March 2006.

Slides:



Advertisements
Similar presentations
J0 1 Marco Ronchetti - Basi di Dati Web e Distribuite – Laurea Specialistica in Informatica – Università di Trento.
Advertisements

XML-based web services with the java 2 platform, Enterprise edition (j2EE) by anis karimpour-fard.
An architecture for webb applications, J2EE
Introduction to Java 2 Enterprise Edition About myself –Neutrinos, Cancer Research, IT Applications Today’s topic: J2EE –Context –Advantages –Components.
 Java  Python  Bigtable(Bt) is a distributed storage system for managing structured data that is designed to scale to a very large size.  Query Language.
Technical Architectures
JAVA Technology. Java Technology Java technology is a portfolio of products that are based on the power of networks and the idea that the same software.
Distributed System Using Java 2 Enterprise Edition (J2EE) B.Ramamurthy.
Sapana Mehta (CS-6V81) Overview Of J2EE & JBoss Sapana Mehta.
Outline IS400: Development of Business Applications on the Internet Fall 2004 Instructor: Dr. Boris Jukic Server Side Web Technologies: Part 2.
Java 2 Platform, Enterprise Edition (J2EE). Source: Computer, August 2000 J2EE and Other Java 2 Platform Editions.
J2EE vs..NET Nigam Patel. Topics Background –Web Services, J2EE and.NET Similarities Differences Conclusion –Pros and Con (J2EE and.NET)
J2EE Java 2 Enterprise Edition. Relevant Topics in The Java Tutorial Topic Web Page JDBC orial/jdbc
2 Systems Architecture, Fifth Edition Chapter Goals Describe client/server and multi-tier application architecture and discuss their advantages compared.
Enterprise Programming By J Pearce. Enterprise Software Sales HR Inventory Customer Support Shipping.
Nikolaos Korfiatis The Java 2 Enterprise Edition Platform Dept. of Management & Technology-Athens University of Economics and Business Java 2 Platform.
Chapter 4: Core Web Technologies. Contents - Chapter 1 o Exchanging information over the Internet ÞHTTP, HTML ÞURI, URI ÞWeb server, web browser o Web.
© 2004 IBM Corporation BEA WebLogic Server Introduction and Training.
Introduction to J2EE Dr. N. A. Joshi.
L EC. 01: J AVA FUNDAMENTALS Fall Java Programming.
Understanding and Managing WebSphere V5
Web service testing Group D5. What are Web Services? XML is the basis for Web services Web services are application components Web services communicate.
Distributed System Using Java 2 Enterprise Edition (J2EE)
INTRODUCING THE JAVA EE PLATFORM Ch-5. Introduction Java is a  platform-independent programming language  secure and robust applications  may run on.
Chapter 10 EJB Concepts of EJB Three Components in Creating an EJB Starting/Stopping J2EE Server and Deployment Tool Installation and Configuration of.
Introduction to Java EE (J2EE)
EJB Overview Celsina Bignoli Distributed Business Applications Server DB Client DB Server DB.
Distributed Multitiered Applications The J2EE platform uses a multitiered distributed application model. Application logic is divided into components 1.
J2EE /.NET Liz Farricker Whitney Mayoras Patrick Bailey.
Web Services Mohamed Fahmy Dr. Sherif Aly Hussein.
Chapter 4: Core Web Technologies
Enterprise Java Beans CS-422. Application Servers In the late 1980s and though the mid 1990s a number of corporations (Broadvision, Netscape…) marketed.
HTTP client wide area network (Internet) HTTP proxy HTTP server HTTP gateway firewall HTTP tunnel Copyright Springer Verlag Berlin Heidelberg 2004.
Notes of J2EE Tutorial Matt Tsai. 2 Outline Chapter 1: Overview Chapter 1: Overview Chapter 2: Understanding XML Chapter 2: Understanding XML Chapter.
Bayu Priyambadha, S.Kom. What is J2EE? * Open and standard based platform for developing, deploying and managing n-tier, Web-enabled, server-centric,
CIS 375—Web App Dev II Microsoft’s.NET. 2 Introduction to.NET Steve Ballmer (January 2000): Steve Ballmer "Delivering an Internet-based platform of Next.
Jaeki Song ISQS6337 JAVA Lecture 16 Other Issues in Java.
CS 493/693: Distributed Systems Programming V. “Juggy” Jagannathan CSEE, West Virginia University March 21, 2005.
第十四章 J2EE 入门 Introduction What is J2EE ?
J2EE Structure & Definitions Catie Welsh CSE 432
Enterprise Java v120131Intro to JavaEE1 Java EE 5 TM Introduction.
Enterprise Java Beans Java for the Enterprise Server-based platform for Enterprise Applications Designed for “medium-to-large scale business, enterprise-wide.
Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared.
Introduction to Java EE (J2EE). CSE, IITB Umesh Bellur Session Objectives Understanding the value propositions of J2EE Getting a big picture of J2EE architecture.
Databases JDBC (Java Database Connectivity) –Thin clients – servlet,JavaServer Pages (JSP) –Thick clients – RMI to remote databases –most recommended way.
1 Java EE Programming Enterprise JavaBeans. 2 Topics J2EE Overview Enterprise JavaBeans Overview Enterprise Entity Beans Case Study How to build them.
XML and Web Services (II/2546)
Assignment of JAVA id : BSSE-F10-M-10-JAVA1 Overview of J2EE/Session 2/Slide 1 of 38.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
J2EE Chris Hundersmarck Maria Baron Jeff Webb.  Java 2 Platform, Micro Edition (J2ME)  Java 2 Platform, Standard Edition (J2SE)  Java 2 Platform, Enterprise.
1 Copyright © 2004, Oracle. All rights reserved. Oracle Application Development Framework.
Introduction to EJB. What is an EJB ?  An enterprise java bean is a server-side component that encapsulates the business logic of an application. By.
1 Distributed System using J2EE. 2 What is J2EE?  J2EE (Java2 Enterprise Edition) offers a suite of software specification to design, develop, assemble.
Introduction to EJB. What is an EJB ?  An enterprise java bean is a server-side component that encapsulates the business logic of an application. By.
Java Programming: Advanced Topics 1 Enterprise JavaBeans Chapter 14.
©NIIT Introducing Enterprise JavaBeans (EJB) Lesson 1A / Slide 1 of 43J2EE Server Components Objectives In this lesson, you will learn about: The features.
Alan L. Batongbacal CS 4244 / 01 Nov 2000
Glink for Java: applet, application and an API for integrating access to Bull, IBM, UNIX and Minitel systems with your Java based e-business applications.
Quick Introduction to Java Enterprise Edition Instructor: Sergey Goldman Based on The Java EE Tutorial by Oracle/Sun Microsystems 1.
Intro to J2EE Concepts Mimi Opkins Fall 2016 CECS493.
The Holmes Platform and Applications
J2EE Platform Overview (Application Architecture)
Introduction to J2EE Architecture
Java EE Overview The problem Java Enterprise Edition attempts to solve: maximize the use of Java technologies by providing a suite of Java technology specifications.
Web-Services-based Systems Architecture, Design and Implementation
Java EE Overview The problem Java Enterprise Edition attempts to solve: maximize the use of Java technologies by providing a suite of Java technology specifications.
Distributed System Using Java 2 Enterprise Edition (J2EE)
ESIS Consulting LLC (C) ESIS Consulting LLC. All rights reserved
Web Application Server 2001/3/27 Kang, Seungwoo. Web Application Server A class of middleware Speeding application development Strategic platform for.
Intro to J2EE Concepts.
Presentation transcript:

Java 2 Enterprise Edition Presented by: Reem Osama Shehata Supervised by: Dr. Sherif Aly 16 th March 2006

Outline What is J2EE? Java 2 Platform Architecture J2EE and.NET Why J2EE? What Does J2EE Add? J2EE 1.4 APIs Enterprise JavaBeans Transactions Security Web-Services J2EE Architecture Deployment Demo (An Auction House)

What is J2EE? Java 2 Platform, Enterprise Edition – Anything after v.1.1 is “Java 2” – Corporation-wide, larger scale web-deployed applications – Support for huge numbers of users Also J2SE – “Standard Edition” for desktop applications Also J2ME – “Micro Edition” for small, light applications running on PDAs, cell phones, pagers

Optional Packages Optional Packages Java 2 Enterprise Edition (J2EE) Java 2 Standard Edition (J2SE) Java Virtual Machine KVM CLDC CDC MIDP Foundation Profile Personal Profile Java 2 Micro Edition(J2ME) Java 2 Platform Architecture

J2EE and.NET J2EE is a Sun Microsystems initiative.NET is a Microsoft initiative – a “product” – Features closely match J2EE – Not as widely supported – Single vendor for OS (Win), database (SQL), app server (IIS), programming languages (C#), ASP – Has been slow to take off – Not portable (Java is portable)

Why J2EE? Increased demand for distributed transactional applications Extended Enterprises and Fast-moving and demanding world of e-commerce and information technology Component-based approach to the design, development, assembly, and deployment of enterprise applications Eliminates or drastically reduces user administration and training by providing the first tier users with easy access to business complexities

Why J2EE? Provides services to a broad range of users, these services need to be: Highly available, to meet the needs of today’s global business environment. Secure, to protect the privacy of users and the integrity of the enterprise. Reliable and scalable, to ensure that business transactions are accurately and promptly processed.

So…. The Java™ 2 Platform, Enterprise Edition (J2EE™) reduces the cost and complexity of developing multi- tier, enterprise services. J2EE applications can be rapidly deployed and easily enhanced as the enterprise responds to competitive pressures. Enhanced web services, J2EE includes simplified web services support and the latest web services APIs, making it an ideal implementation platform for Service-Oriented Architectures (SOA).

What does J2EE add? Support for – Enterprise JavaBeans (EJBs) – Java Server Pages (JSPs) – Enhanced Web-Services – XML – JMS And Others…..

J2EE 1.4 APIs Enterprise JavaBeans Technology (EJBs) Java Servlet Technology JavaServer Pages Technology (JSP) Java Message Service (JMS) Java Transaction (JTA) JavaMail JDBC API Java Naming and Directory Interface (JNDI) JavaBeans Activation Framework (JAF) Java API for XML Processing (JAXP) Java API for XML-Based RPC SOAP with Attachments API for Java Java API for XML Registries J2EE Connector Architecture

Enterprise JavaBeans An Enterprise JavaBeans™ (EJB™) component, or enterprise bean, is a body of code having fields and methods to implement modules of business logic. You can think of an enterprise bean as a building block that can be used alone or with other enterprise beans to execute business logic on the J2EE server. The EJB container and not the bean developer is responsible for system-level services such as transaction management and security authorization. The client developer is relieved from coding the business logic. As a result the clients are thinner which is better for support by small devices. Because the beans are portable they can be used and built upon on any compliant J2EE server which saves time and effort.

Enterprise Bean Types

Transactions What is a transaction? The steps within a transaction are a unified whole, a transaction is often defined as an indivisible unit of work. Transactions control the concurrent access of data by multiple programs. In the event of a system failure, transactions make sure that after recovery the data will be in a consistent state. A transaction can end in two ways: with a commit or with a rollback. The Java Transaction API (JTA) provides a standard interface for demarcating transactions. The J2EE architecture provides a default auto commit to handle transaction commits and rollbacks.

Security In Enterprise applications you often need to protect resources to ensure that only authorized users have access. Security for components is provided by their containers. A container provides two kinds of security: declarative and programmatic security. Secure Socket Layer (SSL) technology allows web browsers and web servers to communicate over a secure connection. Each tier has its own security module. The Java Authentication and Authorization Service (JAAS) provides a way for a J2EE application to authenticate and authorize a specific user or group of users to run it.

Web-Services Web services are web-based enterprise applications that use open, XML-based standards and transport protocols to exchange data with calling clients. No low-level programming is needed because the XML API implementations do the work of translating the application data to and from an XML-based data stream that is sent over the standardized XML-based transport protocols (Simple Object Access Protocol- SOAP).

Java Servlet Technology and JavaServer Pages Java servlet technology lets you define HTTP- specific servlet classes. A servlet class extends the capabilities of servers that host applications that are accessed by way of a request-response programming model. JavaServer Pages™ (JSP) technology lets you put parts of servlet code directly into a text-based document. A JSP page is a text-based document that contains two types of text: static data (which can be expressed in any text-based format such as HTML, WML, and XML) and JSP elements, which determine how the page constructs dynamic content.

Java Message Service API The Java Message Service (JMS) API is a messaging standard that allows J2EE application components to create, send, receive, and read messages. Thus, It enables distributed communication.

JavaMail API J2EE applications use the JavaMail™ API to send notifications. The Java-Mail API has two parts: an application-level interface used by the application components to send mail, and a service provider interface. The J2EE platform includes JavaMail with a service provider that allows application components to send Internet mail. It is very needed in enterprise applications as they usually require the sending of confirmation mails for all types of transactional processes.

JavaBeans Activation Framework The JavaBeans Activation Framework (JAF) is included because JavaMail uses it. JAF provides standard services to determine the type of an arbitrary piece of data, encapsulate access to it, discover the operations available on it, and create the appropriate JavaBeans component to perform those operations.

Java API for XML Processing The Java API for XML Processing (JAXP) supports the processing of XML documents using Document Object Model (DOM), Simple API for XML (SAX), and Extensible Stylesheet Language Transformations (XSLT). JAXP enables applications to parse and transform XML documents independent of a particular XML processing implementation.

Java API for XML-Based RPC The Java API for XML-based RPC (JAX- RPC) uses the SOAP standard and HTTP, so client programs can make XML-based remote procedure calls (RPCs) over the Internet. It combine HTTP with a Java technology version of the Secure Socket Layer (SSL) and Transport Layer Security (TLS) protocols to establish basic or mutual authentication.

Java API for XML Registries The Java API for XML Registries (JAXR) lets you access business and generalpurpose registries over the web. JAXR supports the ebXML Registry and Repository standards and the emerging UDDI (Universal Description, Discovery and Integration ) specifications. By using JAXR, developers can learn a single API and gain access to both of these important registry technologies.

J2EE Connector Architecture The J2EE Connector architecture is used by J2EE tools vendors and system integrators to create resource adapters that support access to enterprise information systems (EISs) that can be plugged into any J2EE product. A resource adapter is a software component that allows J2EE application components to access and interact with the underlying resource manager of the EIS. It is different for each database or EIS.

Java Naming and Directory Interface (JNDI) It provides applications with methods for performing standard directory operations, such as associating attributes with objects and searching for objects using their attributes. Using JNDI, a J2EE application can store and retrieve any type of named Java object.

Simplified System Integration The J2EE APIs enable systems and applications integration through the following: Unified application model across tiers with enterprise beans Simplified request-and-response mechanism with JSP pages and servlets Reliable security model with JAAS XML-based data interchange integration with JAXP, SAAJ, and JAX-RPC Simplified interoperability with the J2EE Connector architecture Easy database connectivity with the JDBC API Enterprise application integration with message-driven beans and JMS, JTA, and JNDI

J2EE Architecture A distributed multitiered application model for enterprise applications – Client-tier components run on the client machine. – Web-tier components run on the J2EE server. – Business-tier components run on the J2EE server. – Enterprise information system (EIS)-tier software runs on the EIS server.

A Multitierd Application

Server Communication

Web Tier and J2EE Applications

Business and EIS tiers

J2EE Architecture Diagram

Deployment The technologies needed NetBeans IDE 4.1: Application Server The Sun Java System Application Server Platform Edition 8.1 The Java 2 Software Development Kit, Standard Edition (J2SE SDK) 1.4.2_06 or higher You can also download the Application Server bundled with the IDE from:

Application Server Installation Tips Note the HTTP port at which the server is installed. The default port is If 8080 is in use during installation and the installer chooses another port or if you decide to change it yourself, you will need to update the configuration files in your application. In the Admin configuration pane of the Application Server installer, Select the “Don’t Prompt for Admin User Name” radio button. This will save the user name and password so that you won’t need to provide them when performing administrative operations with the IDE. You will still have to provide the user name and password to log in to the Admin Console.

Demo The example application is a web-based auction house written for the Enterprise JavaBeansTM platform The three tiers in the web-based auction house example consists of the thin-client servlet, the Enterprise JavaBeans server (the application server), and the database server as shown in the figure:

Enterprise JavaBeans Entity Beans – AuctionItemBean and RegistrationBean Session Beans – SellerBean and BidderBean The auction house example implements a complete Enterprise JavaBeans solution by providing only the business logic and using the underlying services provided by the architecture

Deploying the Auction Example Java Archive (JAR) file format is a compression and file packaging format and tool for bundling executable files with other related application files so they can be deployed as a single unit. The auction application has three units of files to deploy to three different locations. 1. The HTML files that make up the auction application user interface deploy to a publicly accessible location under the web server. 2. The Enterprise Beans deploy to an internal location accessible to your production installation of the Enterprise JavaBeans server. 3. The Administration applet deploys to an internal location accessible to auction administrators where it is run from their browsers.

Deploying the Auction Example (cont’d) Bundle and Deploy the HTML Files Bundle and Deploy the Enterprise Beans Bundle and Deploy the Administration Applet Using the jar tool file:///E:/Reem/advancedJava/java/JDCBook/JDCBook/j ar.html#html Example Mockup E:\Reem\advancedJava\java\JDCBook\JDCBook\Aucti on\index.html

Thank You Questions???