Developing and Deploying Business Components using PowerJ.

Slides:



Advertisements
Similar presentations
11 Copyright © 2005, Oracle. All rights reserved. Creating the Business Tier: Enterprise JavaBeans.
Advertisements

Bringing Handheld, PDA’s, and Smart Phone to the Enterprise Martin Graf Group Product Manager Oracle Corporation Session id:
Netscape Application Server Application Server for Business-Critical Applications Presented By : Khalid Ahmed DS Fall 98.
Approaches to EJB Replication. Overview J2EE architecture –EJB, components, services Replication –Clustering, container, application Conclusions –Advantages.
Technical Architectures
Copyright W. Howden1 Lecture 19: Intro to O/O Components.
Point Of Sale(POS) J2EE Application Department : Computer Science Degree : Master Student : Woojin Choi ID : (POS J2EE Application with JRun)
Implementing ISA Server Caching. Caching Overview ISA Server supports caching as a way to improve the speed of retrieving information from the Internet.
July 23 th, 2005 Software Architecture in Practice RiSE’s Seminars Bass’s et al. Book :: Chapter 16 Fred Durão.
Nikolaos Korfiatis The Java 2 Enterprise Edition Platform Dept. of Management & Technology-Athens University of Economics and Business Java 2 Platform.
© 2004 IBM Corporation BEA WebLogic Server Introduction and Training.
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
Efficiently Distributing Component-Based Applications Across Wide-Area Environments D. Llambiri, A. Totok, V. Karamcheti New York University.
Web-based Software Development - An introduction.
Getting connected.  Java application calls the JDBC library.  JDBC loads a driver which talks to the database.  We can change database engines without.
Database System Concepts and Architecture Lecture # 3 22 June 2012 National University of Computer and Emerging Sciences.
EJB Overview Celsina Bignoli Distributed Business Applications Server DB Client DB Server DB.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Beyond DHTML So far we have seen and used: CGI programs (using Perl ) and SSI on server side Java Script, VB Script, CSS and DOM on client side. For some.
Chapter 4: Core Web Technologies
1 J2EE Components. 2 Application Servers relieve the programming burden for business distributed components. They provide support for system level services.
Advanced Web Forms with Databases Programming Right from the Start with Visual Basic.NET 1/e 13.
Advanced Java Session 7 New York University School of Continuing and Professional Studies.
1 Stateful Session Beans Stateless Session Beans Michael Brockway Sajjad Shami Northumbria University School of Computing, Engineering & Information Sciences.
Overview Of Enterprise Java Bean (EJB) COSC 513 Presentation Mei Li March 17, 2001.
Enterprise Java Bean Matt. 2 J2EE 3 J2EE Overview.
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.
Message-Driven Beans and EJB Security Lesson 4B / Slide 1 of 37 J2EE Server Components Objectives In this lesson, you will learn about: Identify features.
Fundamentals of Database Chapter 7 Database Technologies.
第十四章 J2EE 入门 Introduction What is J2EE ?
J2EE Structure & Definitions Catie Welsh CSE 432
Victor Mushkatin, MCSE, MCSD CORPORATION Alexander Zakonov, MCSE, MCSD Stephen Pelletier, MCSE.
J2EE Overview ver 1.0Page 1 © Wipro Technologies Talent Transformation J2EE Overview.
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 14 Database Connectivity and Web Technologies.
Collaborate Lesson 4C / Slide 1 of 22 Collaborate Knowledge Byte In this section, you will learn about: The EJB timer service Message linking in EJB 2.1.
® IBM Software Group © 2007 IBM Corporation Best Practices for Session Management
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
Introduction to Enterprise JavaBeans Topics In Systems Architecture Barry Herbold
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
CSI 3125, Preliminaries, page 1 SERVLET. CSI 3125, Preliminaries, page 2 SERVLET A servlet is a server-side software program, written in Java code, that.
5-1 VISUAL J++ Colorado Technical University IT420 Tim Peterson.
Enterprise JavaBeans Session Beans. Session beans are a type of Enterprise JavaBean component designed to implement business logic responsible for managing.
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.
Copyright © 2002 ProsoftTraining. All rights reserved. Enterprise JavaBeans.
Enterprise JavaBeans: Fundamentals. EJB Fundamentals(c)CDAC(Formerly NCST)2 Contents Introduction Technology Overview EJB Architecture EJB Specification.
Enterprise JavaBeans. Lesson 1: Introduction to Server-Side Component Software.
Advanced Java Session 7 New York University School of Continuing and Professional Studies.
EJB Enterprise Java Beans JAVA Enterprise Edition
EJB. Introduction Enterprise Java Beans is a specification for creating server- side scalable, transactional, multi-user secure enterprise-level applications.
©NIIT Session Beans Lesson 1B/ Slide 1 of 37J2EE Server Components Objectives In this lesson, you will learn to: Describe the characteristics of session.
Enterprise Java Beans. Contents  Understanding EJBs  Practice Section.
J2EE Platform Overview (Application Architecture)
Web-based Software Development - An introduction
Netscape Application Server
Java Servlets By: Tejashri Udavant..
EJB (Enterprise Java Beans)
Distribution and components
Introduction to J2EE Architecture
Knowledge Byte In this section, you will learn about:
Understanding and Designing with EJB
Inventory of Distributed Computing Concepts
Objectives In this lesson, you will learn to:
Knowledge Byte In this section, you will learn about:
Component-based Applications
Could Jiro™ Extend the Jini™ Pattern Lanuguage?
Enterprise Java Beans.
Knowledge Byte In this section, you will learn about:
Objectives In this lesson, you will learn about:
Presentation transcript:

Developing and Deploying Business Components using PowerJ

2 Developing and Deploying Business components using PowerJ Powerpoint presentation: under “Presentations” see “Phase II” and download: EAServer 3.0 Overview and Building Components in PowerJ 3.0 (zip file) Greg Burns - Technical Evangelist Sybase Internet Applications Division

3 Build the Future - SyberSeminar Series 1. Building a shopping cart application with the Web DataWindow 2. Developing Business Components with PB 3. Developing Business Components in Java with PowerJ 4. Load Balancing Failover and High Availability 5. Implementing Web Security

4 eMusic Application Preview

5 Jaguar CTS JDBC ODBC Native E-Business Sybase Solution HTML COM PowerBuilder CORBA Java PowerDynamo HTTPS IIOP Enterprise Application Server CGI ISAPI NSAPI DataWindow Datastore

6 Why use Java on the Server for business logic components? l Multi-platform source code for business logic l Java is a productive language for software development l Commitment to developing in Java on all tiers l On the server high-powered hardware and non-visual programs combine to minimize any performance limitations of Java programs l Many corporations see Java programming as a way to attract and keep talented employees

7 l To efficiently manage Role of the Application Server Component instantiation and lifecycle Server

8 l To efficiently manage Database connections Role of the Application Server Component instantiation and lifecycle Transactions Server

9 l To efficiently manage Database connections Role of the Application Server Component instantiation and lifecycle Transactions Threads Server

10 l To efficiently manage Database connections Role of the Application Server Component instantiation and lifecycle Transactions Threads Security Server

11 Creating a Java EA Server Component with PowerJ l Steps 1. Create a Jaguar Server Bean Java class 2. Code the Bean using Drag and Drop techniques 3. Deploy the component to Jaguar CTS

12 Jaguar Component Wizard Highlights TargetJarPackageBean Name l Set the Target, Jar, Package and Bean Name Interfaces l Specify any Interfaces to implement

13 Jaguar Deployment Wizard Highlights packagecomponent l Specify Jaguar CTS package and component names deployment classes l Specify the deployment classes life cycle l Define component life cycle characteristics transaction support l Define component transaction support characteristics

14 Component Life Cycle Characteristics

15 Instance Pooling l Allows a single component instance to service multiple clients l Benefits Greatest scalability Many clients share limited number of instances Instance Pool

16 Supporting Instance Pooling EJB Server Bean Methods l Activate Triggered when component is bound to client Used to (re)initialize instance-specific data l Deactivate Triggered when component is unbound from client Used for clean-up code

17 Instance Pooling l Goal Minimize amount of time an instance remains bound to a client (early deactivation) l Design strategies Stateful components Stateless components

18 Stateful Components l Maintain a state between method invocations l Store properties as instance variables l Expose methods to manipulate properties

19 Stateful Components setAmount(15000) Instance Pool

20 Stateful Components setAmount(15000) setMonths(24) calculate( ) return 725 Instance Pool

21 Stateful Components Instance Pool

22 Disadvantages of Stateful Components in Large-Scale Systems l Lifetime Components have longer life (require resources) l Ownership Cannot be shared More instances must be created l Performance Larger number of RPCs across the network

23 Stateless Components l Stateless components cannot use instance-specific data to accumulate data between method invocations Do not retain information from one method invocation to the next Client passes needed information as parameters to the method

24 Stateless Components calculate(15000,24) Instance Pool

25 Stateless Components calculate(15000,24) return 725 Instance Pool

26 Stateless Components Instance Pool

27 Advantages of Stateless Components in Large-Scale Systems l Lifetime Shorter life optimizes resource usage l Ownership Can be recycled Number of instances to create is minimized l Performance Improved due to fewer RPCs across the network

28 Defining a Stateless Component Automatically l Deployment-time attribute l Instance automatically deactivated on method return

29 Defining a Stateless Component Programmatically l InstanceContext functions completeWork( ) rollbackWork( )

30 Define Component Transaction Support

31 Define Component Transaction Support l Multiple components can participate in a single transaction l Each component performs part of the overall task l Jaguar transaction management lets you group database updates performed by multiple components into a single atomic unit of work

32 Account 1 Example Teller Account 2 Transfer 1. Withdraw 2. Deposit Log 3. Write

33 What is the Scope of the Transaction? Option 1 l Withdraw l Deposit l Write to log

34 What is the Scope of the Transaction? Option 2 l Transaction 1 Withdraw Deposit l Transaction 2 Write to log

35 Account 1 Option 1 Teller Account 2 Transfer 1. Withdraw 2. Deposit Log 3. Write

36 Account 1 Option 2 Teller Account 2 Transfer 1. Withdraw 2. Deposit Log 3. Write

37 Starting to create an EAServer component in PowerJ l Bean Wizard l Jaguar server component

38 Jaguar Component Wizard Outcome l Java Classes eMusicJ.CartJ.java eMusicJ.CartJInterface.java ServerBean interface implementation code Form for design time coding of Non Visual objects

39 Step 2: Coding the Component l activate() l deactivate() l retrieve( ) l update( )

40 Activate transaction_1.connect(); state = parm0;

41 Connection Caching l Components share pools of preallocated connections to remote database servers Connection Cache IIOP

42 Deactivate transaction_1.disconnect();

43 Retrieve( ) byte [ ][ ] state = new byte [1][ ]; ds_1.retrieve(); ds_1.getFullState(state); return state[0];

44 Update( byte[ ] state ) ds_1.setFullState( state );

45 Step 3: Deploy the Component l Configure PowerJ deployment options l EAServer deployment wizard

46 HTML Creating a Client Application COM PowerBuilder CORBA Java Enterprise Application Server

47 Creating a PowerJ Client Application l Step 1: Create a new Application using the new Target Wizard l Step 2: Create PowerJ Proxies l Step 3: Drag and Drop InitialContext component and proxy then code the Application

48 Step 1: Target Wizard l Creates new Client main form

49 Step 2: Create PowerJ Proxies l Proxies for any kind of component can be created PowerBuilder Java COM C/C++

50 Step 3: Add InitialContext component and proxy then code the application 1. Initialize Connection and Proxies 2. Invoke Server Component's Methods

51 1. Initialize Connection and Proxies

52 2. Invoke Server Component's Methods l Retrieving data byte [ ] state; state = cartj_1.retrieve( ); dw_customer.setFullState(state) l Updating data dw_customer.getFullState(state) cartj_1.update(state)

53 Summary