2 목차 n WebLogic Architecture n J2EE Spec PreView n WebLogic Basic n Weblogic JDBC n Weblogic JNDI n Weblogic EJB Architecture n Weblogic EJB Deployment.

Slides:



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

J2EE Architecture Overview
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.
Middleware Fatemeh Hendijanifard 1 آزمايشگاه سيستم هاي هوشمند (
Distributed System Using Java 2 Enterprise Edition (J2EE) B.Ramamurthy.
Sapana Mehta (CS-6V81) Overview Of J2EE & JBoss Sapana Mehta.
1 James Lynn Hewlett-Packard Middleware Division EJB Architecture Design Strategies and Performance Optimizations.
1. Introducing Java Computing  What is Java Computing?  Why Java Computing?  Enterprise Java Computing  Java and Internet Web Server.
Copyright W. Howden1 Lecture 19: Intro to O/O Components.
Java 2 – Enterprise Edition Kevin J. LaFata April 21, 2003 UM – St. Louis.
1 Build a Web Application on J2EE. 2 J2EE Scenario Client – Web Server – EIS Resources Client – Web Server – EIS Resources Client – Application Server.
J2EE Java2 Enterprise Edition by Damian Borth. Contents Introduction Architectures styles Components Scenarios Roles Processing a HTTP request.
Java 2 Platform, Enterprise Edition (J2EE). Source: Computer, August 2000 J2EE and Other Java 2 Platform Editions.
JMS Java Message Service Instructor Professor: Charles Tappert By Student: Amr Fouda.
Enterprise Programming By J Pearce. Enterprise Software Sales HR Inventory Customer Support Shipping.
J2EE Kenneth M. Anderson CSCI Web Technologies October 3, 2001.
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.
Emmanuel Cecchet et al.  Performance Scalability of J2EE application servers.  Test effect of: ◦ Application Implementation Methods ◦ Container Design.
Distributed System Using Java 2 Enterprise Edition (J2EE)
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.
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.
Glink: GCOS e-business in an application server architecture Summit 2000, Jim Gallagher.
Ing. Ignacio Roqueta ARTech GeneXus and J2EE.
Seminar: Enterprise JavaBeans. Agenda Agenda Java™ 2 Platform Java™ 2 Platform Java™ 2 Platform,Enterprise Edition(J2EE) Java™ 2 Platform,Enterprise Edition(J2EE)
Enterprise Computing COSC 617 Jeff Schmitt September 7,2006.
CS 493/693: Distributed Systems Programming V. “Juggy” Jagannathan CSEE, West Virginia University March 21, 2005.
© D. Wong  Indexes  JDBC  JDBC in J2EE (Java 2 Enterprise Edition)
Entity Java Beans Jorg Janke Open Source ERP & CRM.
Enterprise Java Bean Matt. 2 J2EE 3 J2EE Overview.
CD Database Server (CDDB) Zachary Carter Alan Savage Diana Abbas Kyle Dorman.
Enterprise JavaBeans. Lesson 1: Introduction to Server-Side Component Software.
Enterprise JavaBeans. What is EJB? l An EJB is a specialized, non-visual JavaBean that runs on a server. l EJB technology supports application development.
Comp2513 JavaBeans, EJB and J2EE Daniel L. Silver, Ph.D.
第十四章 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.
J2EE 기반의 웹서비스 구축을 위한 JEUS 4.0 정재웅 선임 연구원. 기술로 고객의 마음을 움직입니다 Copyright © 2002 Tmax Soft Co.,Ltd. All Rights Reserved.JEUS 2/29 Agenda WAS 개요 JEUS System.
CS4273: Distributed System Technologies and Programming Lecture 13: Review.
J2EE Overview ver 1.0Page 1 © Wipro Technologies Talent Transformation J2EE Overview.
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 JBOSS Enterprise Server Dimple Kaul & Nilabja Roy Vanderbilt University, Nashville,TN-37235
1 Java EE Programming Enterprise JavaBeans. 2 Topics J2EE Overview Enterprise JavaBeans Overview Enterprise Entity Beans Case Study How to build them.
GemStone/J 3.0 Objects Across the Enterprise Paul Chambers Chief Technical Officer (Europe)
Enterprise Java Beans. Model 1 J2EE – Web View Model/View/Controller Model View Control Data base Web Server Model One Architecture HTTP Request HTTP.
정 재 웅 선임연구원 JEUS 2.0 소개 정 재 웅 선임연구원
Enterprise Java Overview Panos Konstantinidis Java Developer JUG Leader & Java Champion
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.
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.
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.
Enterprise JavaBeans: Fundamentals. EJB Fundamentals(c)CDAC(Formerly NCST)2 Contents Introduction Technology Overview EJB Architecture EJB Specification.
Alan L. Batongbacal CS 4244 / 01 Nov 2000
Enterprise JavaBeans. Lesson 1: Introduction to Server-Side Component Software.
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.
Introduction to J2EE Architecture
Distributed System Using Java 2 Enterprise Edition (J2EE)
Understanding and Designing with EJB
Understanding and Designing with EJB
Presentation transcript:

2 목차 n WebLogic Architecture n J2EE Spec PreView n WebLogic Basic n Weblogic JDBC n Weblogic JNDI n Weblogic EJB Architecture n Weblogic EJB Deployment n Weblogic EJB Transaction n Weblogic Servlet n Weblogic JSP

3 RDBMS ODBMS BEA Web Logic Architecture BEA WebLogic WebLogic as Web Server WebLogic as Application Server

4 RDBMS ODBMS BEA Web Logic Architecture BEA 웹로직 Directory Server Transaction Manager (Tuxedo) Web Server NSAPI, ISAPI 플러그인기능 C/C++ CORBA (M3,IONA,VISIBROKER 등 ) COM Socket JSP Servlets EJB HTTP HTTPS TCP/IP SSL RMI IIOP COM Events JNI JTS JDBC COM CORBA JNDI HTTP 관리콘솔 htmlKona RMI JOLT JOLT 서버 JMS Timing

5 J2EE Architecture J2SE Applet client Applet container Application colient Application container J2SE JMSJMS JNDIJNDI RMIIIOPRMIIIOP JDBCJDBC Web Container JSP Servlet J2SE EJB Container JMSJMS JNDIJNDI JTAJTA J A V A Mail RMIRMI J2SE EJB DBMS JMSJMS JNDIJNDI JTAJTA J A V A Mail RMIRMI JDBCJDBC JDBCJDBC

6 J2EE Architecture n Java Platform for the Enterprise (JPE) l Java Naming and Directory Service (JNDI) l Java Database Connectivity (JDBC) l Remote Method Invocation (RMI) l Enterprise Java Beans (EJB) l Java Transaction Service (JTS) l Java Transaction Architecture(JTA) l Servlets /JHTML l Java Server Page (JSP) l Java Interface Definition Language(Java IDL) l Java Mail l JavaBeans Activation Framework(JAF) l Java Message Service(JMS) l Extended Markup Language(XML)

7 J2EE Architecture n JNDI(Java Naming and Directory Service) Application Code JNDI API Naming Manager JNDI Server Provider Interface LDAP Driver File System Driver DNS Driver Other LDAP Server File System DNS Server Other

8 J2EE Architecture n JDBC(Java Database Connectivity) DB API JDBC Driver JDBC API Application Code DBMS Type 1~Type 4

9 Transport Layer Remote Reference Layer J2EE Architecture n RMI (Remote Method Invocation) Skeleton Class Stub Classes Client Application Remote Object

10 J2EE Architecture n EJB(Enterprise Java Beans) Application Sever(Container) DBMS EJB

11 J2EE Architecture n JTS (Java Transaction Service) l CORBA Transaction Service 기반 l JTS defines the Interface between Application / Transaction Manger Application Server / Transaction Manager Resource Manager / Transaction Manager Transaction Manger /CRM

12 J2EE Architecture n JTA (Java Transaction Architecture) Transaction Monitor Implementation JAVA Transaction API EJB JDBC JMS

13 J2EE Architecture n Java Servlets  provide request/response service  can be invoked by HTTP commnads  are deployed on web servers  look like web pages to client browsers  can strore client data in a local session Servlet WebServer DataBase

14 J2EE Architecture n JSP(Java Server Pages)  are text-based, editable types of servlets  are converted and executed as a servlet by webserver  employ special tags to hold Java code JSP WebServer DataBase

15 J2EE Architecture n Java IDL (Java Interface Definition Language)  is used to integrete Java & CORBA  Language Independent interface  Is the basis for CORBA stubs & skeletons n JAVA Mail  is a Java API for accessing mail server  available for SMTP & IMAP n JAF  Integrate support for MIME data type into the Java platform  is used JavaMail n JMS  Java API for accessing message oriented middleware n XML

16 Weblogic Basic n Application Server Configuration Fire Wall Client Application Client Application WWW Internet Internal Network Local Client Application Fire Wall Application server DBMS

17 Weblogic Basic n Application Server Configuration Client Application WWW Internet Internal Network Application server DBMS Application server Application server Proxy server

18 Weblogic Basic n Application Server Configuration Client Application WebLogic Server Message Queue Web Client Thread Pool Deployed Application

19 Weblogic Basic n Directory Structure [root directory] weblogic bin classes lib myserver examples license

20 Weblogic JDBC RDBMS Client Java Application JDBC API JDBC-ODBC Bridge JDBC-Native Bridge JDBC-Net Bridge All JDBC Driver ODBC Driver Native API (C, C++) NetWork Server (Type 1) (Type 2) (Type 3) (Type 4)

21 Weblogic JDBC Client Java Application JDBC API JDBC-ODBCBridge ODBC Driver Server DBMS n Type 1 Driver JDBC-ODBC Bridge 사용 Client 에 ODBC Driver 필요 Sun Mycrosystems 에서만 배포

22 Weblogic JDBC Client Java Application JDBC API JDBC-Native Bridge Native Driver Server DBMS n Type 2 Driver DBMS Native Driver 필요 각 Client 에 Native Driver 배포 JDBC Driver 가 client 요청을 Native API 로 변경해서 호출

23 Weblogic JDBC Client Java Application JDBC API JDBC-Net Driver Network Server DBMS n Type 3 Driver DBMS Native Driver 필요 각 Client 에 Native Driver 배포 JDBC Driver 가 client 요청을 Native API 로 변경해서 호출 DBMS

24 Weblogic JDBC Client Java Application JDBC API JDBC Driver n Type 4 Driver Pure Java 를 이용한 JDBC Driver 각 Client 에서는 Client side configuration 이 필요 없음 DBMS

25 Weblogic JDBC n WebLogic Connection Pools Setting up connections at server startup dynamic growth/shrinkage of the pools DBMS RS/6 000 IB M WebLogic Server Client Connection Pool

26 Weblogic JNDI n WebLogic JNDI Structure Application Code JNDI API Naming Manager JNDI Server Provider Interface LDAP File System DNS RMI NIS CORBA

27 Weblogic JNDI n WebLogic JNDI Tree Initial context 다른 context 와 연결된 Context 다른 두개의 context 와 연결된 하나의 객체 Binding 은 logical name 과 context 를 가진 객체 간의 연결을 의미한다.

28 Weblogic EJB Architecture n EJB(Enterprise JavaBeans) Application Architecture Dynamic HTML DBMS Java Applet Java Client Web Server JSP/Servlet Application Server IIOP/RMI HTTP Transaction,security, naming service

29 Weblogic EJB Architecture n EJB Design Architecture 3 basic design approach for building EJB  Stateless server approach  Session-oriented approach  Persistent object approach EJB specification  Stateless session bean  Stateful session bean  Entity bean

30 Weblogic EJB Architecture(Session) n Stateless Session EJB  Client 의 상태 정보를 저장하고 있지 않음  EJB server 가 Fail 났을 경우 EJB 내의 정보도 삭제  하나의 session bean 에서 생성된 두 instance 는 상호 독립적 n Stateful Session EJB  Client 와 EJB 는 conversational 모델  Client 의 상태 정보를 저장  EJB server 가 Fail 났을 경우 EJB 내의 정보도 삭제  각 Instance 는 Single Thread 사용

31 Weblogic EJB Architecture (Session) n Stateless VS Stateful Session EJB client

32 Weblogic EJB Architecture(Entity) n Entity EJB  영구적인 데이터를 참조  EJB server 가 Fail 이 되어도 데이터는 보존됨  Multiple client 는 동일한 데이터를 참조할 수 있음  EJB instance 는 데이터 저장소의 데이터를 참조

33 Weblogic EJB Architecture (Entity) n Shared Entity EJBs client Persistent store

34 Weblogic EJB Architecture (Entity) n Type of Persistence client Persistent store  CMP (Container-Managed Persistence)  BMP (Bean-Managed Persistence) CMP BMP

35 Weblogic EJB Architecture n WebLogic Pooling/Passivation client Free Pool Cache Passivated Objects

36 Weblogic EJB Architecture n EJB Interface Home Interface  EJB 생성  EJB 삭제  EJB Meta 정보를 저장  EJB Clients 가 공유  Weblogic Startup 시 JNDI 에서 Stub 정보를 포함 Remote Interface  EJB 의 business logic 정보를 저장

37 Weblogic EJB Architecture n EJB Processing Client

38 Weblogic EJB Deployment n EJB Deployment EJB Class File Jar utility META-INF\ejb-jar.xml Com.beans.MyBean.class Com.beans.MyBeanHome.class Com.beans.MyBeanBean.class Com.beans.MyPK.class ejb-jar.xml Weblogic-ejb-jar.xml naked jar file weblogic ejbc compiler Deployable jar file

39 Weblogic EJB Deployment n XML ejb-jar.xml weblogic-ejb-jar.xml weblogic-rdbms-jar.xml <!DOCTYPE weblogic-rdbms-bean PUBLIC '-//BEA Systems, Inc.//DTD WebLogic EJB RDBMS Persistence//EN' '

40 Weblogic EJB Transaction n Transaction Interactions  dirty reads – the reading of uncommitted chages  Non-repeatable reads – the reading of uncommitted and then changed data  phantom reads – the reading of new rows for the same where clause

41 Weblogic EJB Transaction n EJB Transaction Attributes  TX_NOT_SUPPORTED  TX_SUPPORTS  TX_MANDATORY  TX_REQUIRED  TX_REQUIRED_NEW  TX_BEAN_MANAGED

42 Weblogic EJB Transaction n TX_NOT_SUPPORTED 1-begin 2-method 3-commit Container EJB Client

43 Weblogic EJB Transaction n TX_SUPPORTS 1-begin 2-method 3-commit Container EJB Client

44 Weblogic EJB Transaction n TX_MANDATORY 1-begin 2-method 3-commit Container EJB Client TransactionRequired Exception

45 Weblogic EJB Transaction n TX_REQUIRED 1-begin 2-method 3-commit Container EJB Client 1-begin 2-method 3-commit

46 Weblogic EJB Transaction n TX_REQUIRES_NEW 1-begin 2-method 3-commit Container EJB Client 1-begin 2-method 3-commit 1-begin 2-method 3-commit

47 Weblogic EJB Transaction n TX_BEAN_MANAGED 1-begin 2-method 3-commit Container EJB Client 1-begin 2-method 3-commit 1-begin 2-method 3-commit

48 Weblogic EJB Transaction n TRANSACTION_READ_UNCOMMITTED allow dirty reads allow phantom reads allow non-repeatable reads n TRANSACTION_READ_COMMITTED prevents dirty reads allow phantom reads allow non-repeatable reads

49 Weblogic EJB Transaction n TRANSACTION_REPETABLE_READ prevents dirty reads prevents phantom reads allow non-repeatable reads n TRANSACTION_SERIALIZABLE prevents dirty reads prevents phantom reads prevents non-repeatable reads

50 Weblogic Servlets Servlet 지원 n 웹로직 서버에서 제공하는 HTTP Servlets l Session tracking l Database access l Multihoming l Configuration and management l Security l Logging and report generation l Integrated services

51 Weblogic Servlets Servlet Access Model n Model #1 RDBMS ODBMS EJB BEA 웹로직 Servlets Req Res JDBC RMI HTTP

52 Weblogic Servlets Servlet Access Model n Model #2 RDBMS ODBMS EJB BEA 웹로직 Servlets Req Res JDBC RMI Servlets Requester/Browser HTTP

53 n 서블릿은 concurrent 요청에 대해 다중 핸들이 가능해야 한다. Weblogic Servlets Multithreading Client Program Execute Thread Servlet Instance Web Server / Servlet Engine

54 n singleThreadModel 인터페이스 구현시 구조 Weblogic Servlets SingleThreading Client Program Execute Thread Servlet Instance Web Server / Servlet Engine Block and wait for first thread to complete Each request gets its own instance

55 n 브라우저에 웹 서버의 정보들을 저장 n 브라우저에 의해 삭제 n 보안상 위험성 있음 Weblogic Servlets Cookie

56 Weblogic Servlets Cookie RS/6 000 Web Server URL : Browser Client Cookie persistently stored on the browser

57 n Session Sharing Weblogic Servlets Session Servlet Client1 Session Web Server / Servlet Engine Client2 Session Client2 Client1

58 Weblogic Servlets Interservlet Communication n Servlet Forwarding RDBMS ODBMS EJB BEA 웹로직 Servlets Req Res JDBC RMI Servlets Requester/Browser HTTP

59 Weblogic Servlets Interservlet Communication n Servlet Including RDBMS ODBMS EJB BEA 웹로직 Servlets Req JDBC RMI Servlets Requester/Browser HTTP Res

60 Weblogic JSP What is a JSP? n Servlet 에 비해 JSP 의 장점 l Write once, run anywhere l IDE 들과 통합가능 (dreamweaver…) l 사용자가 tag 확장가능 l 디자인과 로직 분리

61 Weblogic JSP JSP Translation Process JSP (text document) Output Servlet (.java) Servlet (.class) Translated Compiled Loaded/executed No changes since last translation

62 Weblogic Servlets Programming Model n Simple Model RDBMS ODBMS EJB BEA 웹로직 JSP Req Res JDBC RMI HTTP

63 Weblogic Servlets Programming Model n Forwarding Delegation Model RDBMS ODBMS EJB BEA 웹로직 JSP Req Res JDBC RMI JSP Requester/Browser HTTP Res JSP Req Res Req Done via forward action

64 Weblogic Servlets Programming Model n Forwarding Delegation Model RDBMS ODBMS EJB BEA 웹로직 JSP Req Res JDBC RMI JSP Requester/Browser HTTP JSP Done via forward action out