Copyright UTS Faculty of Information Technology 2002 EJB2 EJB-3. Use Design Patterns 1 to re-use well known programming techniques.

Size: px
Start display at page:

Download "Copyright UTS Faculty of Information Technology 2002 EJB2 EJB-3. Use Design Patterns 1 to re-use well known programming techniques."

Transcription

1 Advanced Java Programming (J2EE) Enterprise Java Beans (EJB) Part 2 Entity & Message Beans Chris Wong chw@it.uts.edu.au (based on prior class notes & Sun J2EE tutorial) Enterprise Java Beans Last lesson we looked at: Introduction to EJB EJB basics EJB Architecture Session Beans EJB Clients EJB Development Process This lesson will cover Entity Beans Message Driven Beans EJB issues Copyright UTS 2002 EJB2 EJB-1 Copyright UTS 2002 EJB2 EJB-2 -Interlude- Earlier we discussed why we use EJB s. EJB containers provide much of the plumbing that traditionally programmers had to develop and consider themselves. We still need good programming practices to use EJB s well. Use Design Patterns 1 to re-use well known programming techniques. Good references: 1 Gamma, E., R. Helm, R. Johnson, and J. Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley Marinescu, Floyd EJB design patterns Wiley 2002 Copyright UTS 2002 EJB2 EJB-3 The Session Façade pattern This is the most common design pattern used with EJB s You partition business logic to minimise dependencies between client and server This optimises network traffic and executes as one transaction. Idea is to wrap an entity EJB with a session EJB Only one interface between client and server Completely hides internal implementation from client Copyright UTS 2002 EJB2 EJB-4 Traditional client/server Session Façade Marinescu, Floyd EJB design patterns Wiley 2002 Fig 1.2 Copyright UTS 2002 EJB2 EJB-5 Marinescu, Floyd EJB design patterns Wiley 2002 Fig 1.2 Copyright UTS 2002 EJB2 EJB-6

2 Client (e.g. servlet) Session & Entity Beans EJB container BankTeller - deposit() - withdraw() BankManager - openaccount() Session Beans ("actions") Account - acctnum = getbalance() - setbalance() Account - acctnum = getbalance() - setbalance() Account - acctnum = getbalance() - setbalance() Entity Beans ("data") DBMS Enterprise Java Beans Last lesson we looked at: Introduction to EJB EJB basics EJB Architecture Session Beans EJB Clients EJB Development Process This lesson will cover Entity Beans Message Driven Beans EJB issues Copyright UTS 2002 EJB2 EJB-7 Copyright UTS 2002 EJB2 EJB-8 Entity Beans Entity beans are EJBs that are created to encapsulate some data contained by the system (such as a row in the database or, more generally, to an entry that exists in persistent storage) Entity Beans In addition to the usual EJB implementation, home interface and remote interface, Entity beans also have special primary key classes defined for them that relate to the primary keys of an associated entity stored in the database Entity beans can be thought of as the nouns of a particular problem domain that they are implemented to solve The data can be created, searched for (found) or removed by clients The data can also be retrieved and updated by clients Entity beans are very different from Session beans. Entity beans: can be used concurrently by several clients are long-lived they are intended to exist beyond the lifetime of a client will survive server crashes directly represent data in a database Copyright UTS 2002 EJB2 EJB-9 Copyright UTS 2002 EJB2 EJB-10 Entity Beans scalability Because clients could potentially hold many entity references as a result of a find operation, many effective EJB designs will only provide access to entity beans via session beans and limit how many entity bean handles are returned to the client Scalability of the system can become compromised if too many remote entity bean references are handed out to clients Articles describing various patterns for using entity beans are listed in the references Copyright UTS 2002 EJB2 EJB-11 Entity Beans container's role Entity beans assume that more than one client will use them concurrently. Interactions with the bean are moderated by the container so as to guarantee the integrity of the underlying data The container may accomplish this by either: queuing client requests one at a time -- or -- creating an instance of the bean for each client and relying on the underlying database to deal with synchronisation issues Remember, session beans do not support concurrent access. A stateful bean is an extension of the client and stateless beans don t maintain state Entity beans (unlike Session beans) exist until they are explicitly destroyed: There is no time out period associated with Entity beans They are guaranteed to survive orderly server restarts They are guaranteed to survive server crashes Copyright UTS 2002 EJB2 EJB-12

3 Entity Beans persistence Entity beans represent data in an underlying database. Their lifetime matches the lifetime of the underlying data Entity beans can be removed in one of two ways: A client explicitly invokes the remove() method of the entity bean, or The data for the entity is deleted from the underlying database Entity beans typically map to data in an underlying database Usually to a single row in a table. The instance variables in the Entity bean map directly to the fields in the table. Entity Beans BMP vs. CMP Bean Managed Persistence (BMP) bean developer takes control of bean s persistence eg: use JDBC and SQL directly Container Managed Persistence (CMP) container manages the process of saving and restoring the state of beans. Containers generate the code based on the information in the deployment descriptor for the bean. 2 Types of Entity beans Bean Managed Persistence (BMP) Container Managed Persistence (CMP) Copyright UTS 2002 EJB2 EJB-13 Copyright UTS 2002 EJB2 EJB-14 Entity Beans primary keys Each Entity bean instance has a primary key. A primary key is: A value (or combination of values, called compound primary key) that uniquely identifies the entity Implemented as a Java class NOT a primitive (e.g., java.lang.integer vs int) You can write your own class to represent a primary key Must be serializable ie: implement the java.io.serializable Must have a no argument constructor May have a constructor with the compound key values Must implement a hashcode() and equals() method Easiest way is to use code generator to do this eg: Eclipse -> Source -> generate constructor from fields Source -> generate hashcode() and equals() Entity Beans primary keys public class CustomerPK implements Serializable { public int custid; public String surname; public CustomerPK(int custid, String surname) { ; // constructor this.custid = custid; this.surname = surname; public int hashcode() { final int PRIME = 31; int result = 1; result = PRIME * result + custid; result = PRIME * result + ((surname == null)? 0 : surname.hashcode()); return result; public boolean equals(object obj) { if (custid!= other.custid) return false; else if (!surname.equals(other.surname)) return false; return true; Copyright UTS 2002 EJB2 EJB-15 Copyright UTS 2002 EJB2 EJB-16 Entity Beans lifecycle Does not exist newinstance() unsetentitycontext() setentitycontext(ec) ejbcreate(args) Pooled ejbfind<method>() ejbpostcreate(args) ejbremove() ejbactivate() ejbpassivate() Ready ejbstore() ejbload() Entity Beans lifecycle An entity bean can have one of three states: Does-not -exist state not yet been instantiated. This state provides a beginning and an end for the life cycle of a beans instance Pooled state bean has been instantiated by the container but not associated with an EJB object Ready state it has been associated with an EJB object and is ready to respond to business method invocations Business method(s) Copyright UTS 2002 EJB2 EJB-17 Copyright UTS 2002 EJB2 EJB-18

4 Entity Beans implementation Implementation of Entity beans is similar to that of session beans create a home interface, a remote interface and the bean implementation class The developer must also create the primary key class used to find instances of an existing bean. This primary key class is used as a parameter to the ejbfindbyprimarykey() method Must be implemented by all entity beans Entity Beans methods Entity beans are created via the ejbcreate() method this corresponds to an INSERT on the database Existing entity beans are loaded into the container via the ejbfindbyprimarykey() method (and any other ejbfindxxxx() methods that may be defined) these correspond to SELECT on the database Entity beans are removed via the ejbremove() method this corresponds to a DELETE on the database All entity bean implementation classes must implement the javax.ejb.entitybean interface (which extends javax.ejb.enterprisebean) The methods that need to be implemented depend on the persistence model you are implementing BMP or CMP. When using CMP the container will implement most of the methods for you The container will call the ejbload() and ejbstore() methods when it needs to synchronise the state of the bean with the underlying database these correspond to SELECT and UPDATE See the EJB specification and your text book for a complete reference of all the methods that exist on entity beans and the relevant configuration parameters that are defined in the deployment descriptor Copyright UTS 2002 EJB2 EJB-19 Copyright UTS 2002 EJB2 EJB-20 CMP vs. BMP CMP Major change in EJB 2.0 (not compatible with EJB 1.1); however, most containers support both versions Don t have to code the database access calls in the entity bean this makes bean portable across many database servers Many consider CMP is the default choice BMP Given all the benefits of CMP, why someone bother with BMP? gives you more flexibility can better accommodate a complex or unusual set of data EJB 1.1 only supported BMP Cons more work is required ties the bean to a specific database type and structure Copyright UTS 2002 EJB2 EJB-21 Coding differences between Persistent Types Difference CMP BMP Class definition Abstract Not abstract Database access calls Generated by tools Coded by developer Persistent state Access methods for persistent and relation fields findbyprimarykey method Customized finder methods Represented by virtual persistent fields Required Coded as instance variables None Handled by container Coded by developer Handled by container Coded by developer but the developer must define the EJB QL Select methods Handled by container None Return value of Should be null Must be the primary ejbcreate key Copyright UTS 2002 EJB2 EJB-22 EJB 2.0 CMP Entity Bean (1) package bank; import javax.ejb.*; public class abstract CustomerBean implements EntityBean { SessionContext sessioncontext; // "Standard" session bean methods public void setsessioncontext (SessionContext sc) { this.sessioncontext = sc; public void ejbremove() { public void ejbactivate() { public void ejbpassivate() { // continued on next page EJB 2.0 CMP Entity Bean (2) // continued from previous page // Argument list must match create() method in home interface public Integer ejbcreate(integer id) { setid(id); // call the usual setter method return null; // Now the business logic methods (as usual) // Abstract get/set methods public abstract void setid(integer id); public abstract Integer getid(); public abstract void setname (String name); public abstract String getname (); Copyright UTS 2002 EJB2 EJB-23 Copyright UTS 2002 EJB2 EJB-24

5 EJB 2.0 CMP Entity Bean (3) Entity EJB s have additional parameters in the ejb-jar.xml Deployment Descriptor (DD) <ejb-jar> <enterprise-beans> <entity> // usual EJB stuff <ejb-name> Customer </ejb-name> <home> bank.customerbeanhome </home> <remote> bank.customerbean </remote> <ejb-class> bank.customerbean </ejb-class> // set as CMP <persistence-type> Container </persistence-type> // define primary key as Integer type <prim-key-class> java.lang.integer </prim-key-class> <reentrant> False </reentrant> // important! We are using CMP 2.0 <cmp-version> 2.x </cmp-version> EJB 2.0 CMP Entity Bean (4) // continued from prior page <abstract-schema-name>customerbean</abstract-schema-name> // define the fields these correspond to a column in the table <cmp-field> <field-name> Id </field-name> </cmp-field> <cmp-field> <field-name> Name </field-name> </cmp-field> // define the primary key the container generates findprimarykey() method! <primkey-field> Id </primkey-field> </entity> </enterprise-beans> & so on Copyright UTS 2002 EJB2 EJB-25 Copyright UTS 2002 EJB2 EJB-26 EJB 2.0 CMP Entity Bean (5) You will also need 2 extra deployment descriptors weblogic-ejb-jar.xml for weblogic specific parameters weblogic-cmp-rdbms-jar.xml how weblogic maps the datasource name and table column names to the CMP bean. See lab for details on this. Copyright UTS 2002 EJB2 EJB-27 Entity Beans Summary Entity beans represent persistent data Two types of entity beans: CMP and BMP Entity beans must have a primary key class defined BMP must provide database statements for: ejbcreate(), ejbremove(), ejbfindbyprimarykey(), ejbfindxxx() etc. More deployment descriptor (ejb-jar.xml) tags: CMP fields (only for CMP EJBs) Primary key class Abstract schema name (only for EJB 2.0) Still need extra deployment descriptor for CMP entity beans (depending on the Application Server) to map bean to database table. weblogic-cmp-rdbms-jar.xml for WebLogic. Copyright UTS 2002 EJB2 EJB-28 EJB Exception Types Note: javax.ejb.ejbobject and javax.ejb.ejbhome are subclasses of java.rmi.remote. ie: your Home & Implementation will throw the java.rmi.remoteexception from each of their methods (and you will need to catch them in your client!) EJB Exception Types (cont) There are other exceptions thrown by EJBs eg: CreateException, DuplicateKeyException FinderException, ObjectNotFoundException RemoveException EJBException, NoSuchEntityException EJB exceptions are depicted in the following figure: Perrone et al Building Java Enterprise Systems with J2EE Sams 2000 fig 36.2 Copyright UTS 2002 EJB2 EJB-29 Copyright UTS 2002 EJB2 EJB-30

6 EJB Exception Types (cont) EJBException thrown by an EJB when an application specific method cannot be completed NoSuchEntityException thrown by an EJB when an application specific method cannot be completed because a particular Entity bean does not exist CreateException thrown when an EJB cannot be created (invalid arguments) DuplicateKeyException a subclass of CreateException, thrown when a particular Entity bean cannot be created because objects with the same key already exist RemoveException thrown when a particular EJB cannot be removed FinderException thrown by all query methods (find or select) when an application error (business-logic) occurs ObjectNotFoundException thrown when a singular EJB cannot be found Copyright UTS 2002 EJB2 EJB-31 Local Client API Only remote interfaces in EJB 1.1 EJB 2.0 introduced local component interfaces Local Interface Defines the bean s business methods that can be used by other beans co-located in the same EJB container Allows beans to interact without the network overhead Objects passed by reference rather than copied Local home interface Defines the bean s life cycle methods that can be used by other beans co-located in the same EJB container Similar to Remote Client API but less complicated Copyright UTS 2002 EJB2 EJB-32 package bank; import java.rmi.*; import javax.ejb.*; Local Interface package bank; import java.rmi.*; import javax.ejb.*; Local Home Interface interface LocalBankTeller extends EJBLocalObject { String sayhello(); void deposit(string acctnum, Float amount); void withdraw(string acctnum, Float amount); Notes: Business logic methods for clients in the same container Note that none of the methods throw RemoteException Identical to remote interface except for a couple of differences Copyright UTS 2002 EJB2 EJB-33 interface LocalBankTellerHome extends EJBLocalHome { public BankTeller create () throws CreateException; Notes: Note that none of the methods throw RemoteException Copyright UTS 2002 EJB2 EJB-34 <?xml version="1.0"?> DD for Local Client <!DOCTYPE ejb-jar PUBLIC '-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN' ' <ejb-jar> <enterprise-beans> <session> <ejb-name>banktellerejb</ejb-name> <home>bank.banktellerhome</home> <remote>bank.bankteller</remote> <local-home>bank.localbanktellerhome</local-home> <local>bank.localbankteller</local> <ejb-class>bank.banktellerbean</ejb-class> <session-type>stateless</session-type> <transaction-type>container</transaction-type> </session> </enterprise-beans> </ejb-jar> Copyright UTS 2002 EJB2 EJB-35 Local Client API (cont d) When to use Local Client API When EJBs accessing each other from within the same container Are local component interfaces necessary? Some argue that local interfaces added more complexity Most EJB1.1 vendors were already optimizing the Remote Client API for co-located beans You are locked into a single JVM However, local interfaces are here to stay Container Managed Relationships (EJB 2.0, CMP) need local interfaces Not covered in this subject Copyright UTS 2002 EJB2 EJB-36

7 EJB 2.0 CMP: EJB QL No standard language prior to EJB 2.0 EJB QL is a language similar to SQL-99 EJB QL statements are specified in the deployment descriptor and the container will generate SQL EJB QL is an attempt to map Java objects and rows/columns Use EJB QL to: Implement finders Implement select methods Navigate relationships EJB 2.0 CMP: EJB QL (2) Find methods are always declared in home interface public interface CustomerHome extends EJBHome { // findbyprimarykey() is automatically generated by container public Customer findbyprimarykey(integer pk) throws FinderException, RemoteException; // findbyname() needs a query-method declared in the DD public Customer findbyname(string firstname, lastname) throws FinderException, RemoteException; See for a good tutorial on EJB-QL Copyright UTS 2002 EJB2 EJB-37 Copyright UTS 2002 EJB2 EJB-38 EJB 2.0 CMP: EJB QL (3) Query declaration in the bean s DD <query> <query-method> <method-name>findbyname</method-name> <method-params> <method-param>java.lang.string</method-params> <method-param>java.lang.string</method-params> </method-params> </query-method> <ejb-ql> <![CDATA[ SELECT OBJECT(c) FROM Customer c WHERE c.lastname =?1 AND c.firstname =?2 ]]> </ejb-ql> </query> Enterprise Java Beans Last lesson we looked at: Introduction to EJB EJB basics EJB Architecture Session Beans EJB Clients EJB Development Process This lesson will cover Entity Beans Message Driven Beans EJB issues // cmp name not shown Copyright UTS 2002 EJB2 EJB-39 Copyright UTS 2002 EJB2 EJB-40 Message Driven Beans Message-driven beans (MDBs) were introduced as part of EJB 2.0 MDBs represent the integration of EJBs with JMS (the Java Message Service) they handle incoming JMS messages JMS is an API for enterprise messaging by Sun Microsystems. JMS is not a messaging system itself; it s an abstraction of the interfaces and classes needed by clients when communicating with messaging systems. MDBs act as a standard JMS message consumer. The Message-driven bean is a stateless component that is invoked by the EJB container as a result of receiving messages from a JMS Queue or Topic The MDB then performs business logic based on the message contents Message Driven Beans Unlike session or entity beans, MDBs have no home or remote interface, and therefore cannot be directly accessed by internal or external clients Clients interact with MDBs only indirectly, by sending a JMS message to a JMS Queue or Topic The EJB container automatically creates and removes MDB instances as needed to process incoming messages The goal of the MDB model is to ensure that developing an EJB that is asynchronously invoked to handle the processing of incoming JMS messages is as easy as developing the same functionality in any other JMS MessageListener Copyright UTS 2002 EJB2 EJB-41 Copyright UTS 2002 EJB2 EJB-42

8 Message Driven Beans Queue or Topic is defined in the deployment descriptor message selector is also defined in DD - restrictive MDB must implement javax.jms.messagelistener and javax.ejb.messagedrivenbean onmessage() must not throw JMS or application exceptions; instead they must be caught or handled. At least, they could be re-thrown as EJBException MessageDrivenBean specifies two methods: ejbremove() is invoked just before the bean is removed setmessagedrivencontext(messagedrivenbean ctx) sets the context for the bean ejbcreate() needs to be defined as well MDB Life Cycle newinstance() setmessagecontext(mdc) ejbcreate() onmessage() Does not exist Ready pool ejbremove() Copyright UTS 2002 EJB2 EJB-43 Copyright UTS 2002 EJB2 EJB-44 Example Message-driven bean import javax.ejb.*; import javax.jms.*; public class MessageTraderBean implements MessageDrivenBean, MessageListener { public void ejbcreate () throws CreateException { public void ejbremove() { public void setmessagedrivencontext(messagedrivencontext ctx) { public void onmessage(message msg) { try { // process message catch (EJBException ex) { Copyright UTS 2002 EJB2 EJB-45 Example Message-driven bean ejb-jar.xml <!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN" " <ejb-jar> <enterprise-beans> <message-driven> <ejb-name>examplemessagedriven</ejb-name> <ejb-class>examples.ejb20.message.messagetraderbean</ejb-class> <transaction-type>container</transaction-type> <message-driven-destination> <jms-destination-type>javax.jms.topic</jms-destination-type> </message-driven-destination> <security-identity> <run-as-specified-identity> <role-name>foo</role-name> </run-as-specified-identity> </security-identity> </message-driven> </enterprise-beans> </ejb-jar> Copyright UTS 2002 EJB2 EJB-46 Enterprise Java Beans Last lesson we looked at: Introduction to EJB EJB basics EJB Architecture Session Beans EJB Clients EJB Development Process This lesson will cover Entity Beans Message Driven Beans EJB issues EJB Clustering Issues Highly scalable, mission critical enterprise applications will inevitably require more than a single application server to deliver services with minimal downtime and maximum performance In these environments, clustering is used to guarantee availability and scale to meet the demands placed on the system A cluster is a group of application servers that transparently run your J2EE application as if it was a single entity Scaling is accomplished by adding extra machines to the cluster. Multiple machines provide redundancy that increases availability Copyright UTS 2002 EJB2 EJB-47 Copyright UTS 2002 EJB2 EJB-48

9 EJB Clustering Issues (cont) Clustering support isn t defined in the J2EE specification application server vendors are left to implement clustering in whatever manner they see fit Most J2EE application servers implement clustering around their implementation of JNDI. 1. Independent each app server has its own independent JNDI tree 2. Centralised a single, centralised JNDI tree is maintained for all app servers 3. Shared Global each app server shares a global JNDI tree with the cluster. All objects bound into the JNDI tree are broadcast to all servers in the cluster. This is the mechanism used by WebLogic EJB Clustering Issues (cont) You do have to be aware of how clustering is implemented in your application server when deploying a J2EE application to a cluster The relevant deployment properties will be container specific See the WebLogic server documentation for a description of how clustering of EJBs (and web applications) is configured Note that there are some limitations introduced when deploying to a cluster (particularly for stateful session beans) however these are still preferable to running a single application server with no redundancy or failover capability Copyright UTS 2002 EJB2 EJB-49 Copyright UTS 2002 EJB2 EJB-50 EJB Key Features Summary They provide a model for defining server-side components EJB Key Features Summary EJB key features (continued): They provide a model for defining distributed client interfaces to the services provided by these components They provide standard operations and semantics for allowing a container to create, destroy, allocate, persist and activate component instances They provide a standard model for defining a component that maintains a conversational session with a client, with session management handled by the container They provide a standard model for defining a component that encapsulates a data source (such as a database) entry, with objectrelational mapping handled by the container They provide a standard for defining configuration and deployment characteristics of a component, independent of its implementation They provide a standard model for declaratively defining the security attributes of a component They provide a standard model for declaratively defining the transactional attributes of a component They provide a standard component interface contract such that components can run in any EJB-compliant container/server that implements the standard interface contract Copyright UTS 2002 EJB2 EJB-51 Copyright UTS 2002 EJB2 EJB-52 EJB s - Cautions EJB 1.1 only had remote interfaces. This meant that clients had to use the network to connect to EJBs, even on the same physical server!! use Local interface instead. + new EJB-QL and selector methods available. But this means the session bean will run in the same Java VM as the entity bean! Alternatives? Java EE 5 has new persistence mechanism Based on Java 5 annotations Java Persistence API (JPA) EJB 3.0 based on JPA Use EJBs where appropriate EJB containers have high overhead (and cost $$). Sometimes using lightweight Web Containers such as Tomcat + JDBC/stored procedures is more appropriate. Java Data Objects (JDO) provides an alternative mechanism See You can also use open source products such as Hibernate (which has a JPA interface) or commercial products such as Oracle Toplink Copyright UTS 2002 EJB2 EJB-53 Copyright UTS 2002 EJB2 EJB-54

10 EJB 3.0 Just plain old Java Objects! Eg: BankTeller: Eg: Account EJB 3.0 public interface BankTellerRemote { public string sayhello(string BankTeller ) public class BankTeller implements BankTellerRemote { public string sayhello(string name) { return Hello, + name; Note: no XML, no housekeeping code! Copyright UTS (name= Accounts ( name = findbyacct, query= select Object(a) from Accounts where a.acct =?1 ) public class Account implements Serializable // next field is primary (name= Acct ) public Integer getacctnum() (name= Balance ) public float getbalance() { Copyright UTS 2002 EJB2 EJB-56 Summary The past two lessons have introduced the component model for Java enterprise applications Enterprise Java Beans We have touched on a number of aspects of EJB architecture and development You should now understand the different types of EJB, when they should be used, how they are developed and deployed, and how they are used from client applications EJBs are a fairly complex topic, and you will need to do additional study to fully understand the intricacies of EJB design and development Copyright UTS 2002 EJB2 EJB-57

Distributed Applications (RMI/JDBC) Copyright UTS Faculty of Information Technology 2002 EJB EJB-3

Distributed Applications (RMI/JDBC) Copyright UTS Faculty of Information Technology 2002 EJB EJB-3 Advanced Java programming (J2EE) Enterprise Java Beans (EJB) Part 1 Architecture & Session Beans Chris Wong chw@it.uts.edu.au [based on prior course notes & the Sun J2EE tutorial] Enterprise Java Beans

More information

UNIT-III EJB APPLICATIONS

UNIT-III EJB APPLICATIONS UNIT-III EJB APPLICATIONS CONTENTS EJB Session Beans EJB entity beans EJB clients EJB Deployment Building an application with EJB. EJB Types Types of Enterprise Beans Session beans: Also called business

More information

Conception of Information Systems Lecture 8: J2EE and EJBs

Conception of Information Systems Lecture 8: J2EE and EJBs Conception of Information Systems Lecture 8: J2EE and EJBs 3 May 2005 http://lsirwww.epfl.ch/courses/cis/2005ss/ 2004-2005, Karl Aberer & J.P. Martin-Flatin 1 1 Outline Components J2EE and Enterprise Java

More information

Enterprise JavaBeans. Layer:08. Persistence

Enterprise JavaBeans. Layer:08. Persistence Enterprise JavaBeans Layer:08 Persistence Agenda Discuss "finder" methods. Describe DataSource resources. Describe bean-managed persistence. Describe container-managed persistence. Last Revised: 11/1/2001

More information

Enterprise JavaBeans: BMP and CMP Entity Beans

Enterprise JavaBeans: BMP and CMP Entity Beans CIS 386 Course Advanced Enterprise Java Programming Enterprise JavaBeans: BMP and CMP Entity Beans René Doursat Guest Lecturer Golden Gate University, San Francisco February 2003 EJB Trail Session Beans

More information

Lab2: CMP Entity Bean working with Session Bean

Lab2: CMP Entity Bean working with Session Bean Session Bean The session bean in the Lab1 uses JDBC connection to retrieve conference information from the backend database directly. The Lab2 extends the application in Lab1 and adds an new entity bean

More information

EJB ENTERPRISE JAVA BEANS INTRODUCTION TO ENTERPRISE JAVA BEANS, JAVA'S SERVER SIDE COMPONENT TECHNOLOGY. EJB Enterprise Java

EJB ENTERPRISE JAVA BEANS INTRODUCTION TO ENTERPRISE JAVA BEANS, JAVA'S SERVER SIDE COMPONENT TECHNOLOGY. EJB Enterprise Java EJB Enterprise Java EJB Beans ENTERPRISE JAVA BEANS INTRODUCTION TO ENTERPRISE JAVA BEANS, JAVA'S SERVER SIDE COMPONENT TECHNOLOGY Peter R. Egli 1/23 Contents 1. What is a bean? 2. Why EJB? 3. Evolution

More information

The Details of Writing Enterprise Java Beans

The Details of Writing Enterprise Java Beans The Details of Writing Enterprise Java Beans Your Guide to the Fundamentals of Writing EJB Components P. O. Box 80049 Austin, TX 78708 Fax: +1 (801) 383-6152 information@middleware-company.com +1 (877)

More information

Java Enterprise Edition

Java Enterprise Edition Java Enterprise Edition The Big Problem Enterprise Architecture: Critical, large-scale systems Performance Millions of requests per day Concurrency Thousands of users Transactions Large amounts of data

More information

Chapter 6 Enterprise Java Beans

Chapter 6 Enterprise Java Beans Chapter 6 Enterprise Java Beans Overview of the EJB Architecture and J2EE platform The new specification of Java EJB 2.1 was released by Sun Microsystems Inc. in 2002. The EJB technology is widely used

More information

Enterprise Java Beans

Enterprise Java Beans Enterprise Java Beans Objectives Three Tiered Architecture Why EJB? What all we should know? EJB Fundamentals 2 Three Tiered Architecture Introduction Distributed three-tier design is needed for Increased

More information

<<Interface>> EntityBean (from ejb) EJBHome. <<Interface>> CountHome. (from entity) create() findbyprimarykey() <<Interface>> EJBObject.

<<Interface>> EntityBean (from ejb) EJBHome. <<Interface>> CountHome. (from entity) create() findbyprimarykey() <<Interface>> EJBObject. Count BMP Entity EJB Count BMP Entity EJB EJBHome (from ejb) EntityBean (from ejb) CountClient main() CountHome create() findbyprimarykey() EJBObject (from ejb) Count getcurrentsum() setcurrentsum() increment()

More information

Enterprise JavaBeans (I) K.P. Chow University of Hong Kong

Enterprise JavaBeans (I) K.P. Chow University of Hong Kong Enterprise JavaBeans (I) K.P. Chow University of Hong Kong JavaBeans Components are self contained, reusable software units that can be visually composed into composite components using visual builder

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 Extending Web Applications with Business Logic: Introducing EJB Components...1 EJB Project type Wizards...2

More information

Enterprise JavaBeans. Session EJBs

Enterprise JavaBeans. Session EJBs Enterprise JavaBeans Dan Harkey Client/Server Computing Program Director San Jose State University dharkey@email.sjsu.edu www.corbajava.engr.sjsu.edu Session EJBs Implement business logic that runs on

More information

8. Component Software

8. Component Software 8. Component Software Overview 8.1 Component Frameworks: An Introduction 8.2 OSGi Component Framework 8.2.1 Component Model and Bundles 8.2.2 OSGi Container and Framework 8.2.3 Further Features of the

More information

Enterprise JavaBeans. Layer:07. Entity

Enterprise JavaBeans. Layer:07. Entity Enterprise JavaBeans Layer:07 Entity Agenda Build entity beans. Describe the bean's lifecycle. Describe the server's free pool. Copyright (C) 2001 2 Entity Beans Purpose Entity beans represent business

More information

Entity Beans 02/24/2004

Entity Beans 02/24/2004 Entity Beans 1 This session is about Entity beans. Understanding entity beans is very important. Yet, entity bean is a lot more complex beast than a session bean since it involves backend database. So

More information

these methods, remote clients can access the inventory services provided by the application.

these methods, remote clients can access the inventory services provided by the application. 666 ENTERPRISE BEANS 18 Enterprise Beans problems. The EJB container not the bean developer is responsible for system-level services such as transaction management and security authorization. Second, because

More information

ENTERPRISE beans are the J2EE components that implement Enterprise Java-

ENTERPRISE beans are the J2EE components that implement Enterprise Java- 18 Enterprise Beans ENTERPRISE beans are the J2EE components that implement Enterprise Java- Beans (EJB) technology. Enterprise beans run in the EJB container, a runtime environment within the J2EE server

More information

Life Cycle of an Entity Bean

Life Cycle of an Entity Bean Entity Bean An entity bean represents a business object by a persistent database table instead of representing a client. Students, teachers, and courses are some examples of entity beans. Each entity bean

More information

Understanding and Designing with EJB

Understanding and Designing with EJB Understanding and Designing with EJB B.Ramamurthy Based on j2eetutorial documentation. http://java.sun.com/j2ee/tutorial/1_3-fcs/index.html 3/31/2003 1 Review Request/Response Model Distributed Objects:

More information

SCBCD EXAM STUDY KIT. Paul Sanghera CX JAVA BUSINESS COMPONENT DEVELOPER CERTIFICATION FOR EJB MANNING. Covers all you need to pass

SCBCD EXAM STUDY KIT. Paul Sanghera CX JAVA BUSINESS COMPONENT DEVELOPER CERTIFICATION FOR EJB MANNING. Covers all you need to pass CX-310-090 SCBCD EXAM STUDY KIT JAVA BUSINESS COMPONENT DEVELOPER CERTIFICATION FOR EJB Covers all you need to pass Includes free download of a simulated exam You will use it even after passing the exam

More information

jar command Java Archive inherits from tar : Tape Archive commands: jar cvf filename jar tvf filename jar xvf filename java jar filename.

jar command Java Archive inherits from tar : Tape Archive commands: jar cvf filename jar tvf filename jar xvf filename java jar filename. jar & jar files jar command Java Archive inherits from tar : Tape Archive commands: jar cvf filename jar tvf filename jar xvf filename java jar filename.jar jar file A JAR file can contain Java class files,

More information

Q: I just remembered that I read somewhere that enterprise beans don t support inheritance! What s that about?

Q: I just remembered that I read somewhere that enterprise beans don t support inheritance! What s that about? session beans there are no Dumb Questions Q: If it s so common to leave the methods empty, why don t they have adapter classes like they have for event handlers that implement all the methods from the

More information

Enterprise JavaBeans TM

Enterprise JavaBeans TM Enterprise JavaBeans TM Linda DeMichiel Sun Microsystems, Inc. Agenda Quick introduction to EJB TM Major new features Support for web services Container-managed persistence Query language Support for messaging

More information

J2EE Application Server. EJB Overview. Java versus.net for the Enterprise. Component-Based Software Engineering. ECE493-Topic 5 Winter 2007

J2EE Application Server. EJB Overview. Java versus.net for the Enterprise. Component-Based Software Engineering. ECE493-Topic 5 Winter 2007 Component-Based Software Engineering ECE493-Topic 5 Winter 2007 Lecture 24 Java Enterprise (Part B) Ladan Tahvildari Assistant Professor Dept. of Elect. & Comp. Eng. University of Waterloo J2EE Application

More information

ITdumpsFree. Get free valid exam dumps and pass your exam test with confidence

ITdumpsFree.  Get free valid exam dumps and pass your exam test with confidence ITdumpsFree http://www.itdumpsfree.com Get free valid exam dumps and pass your exam test with confidence Exam : 310-090 Title : Sun Certified Business Component Developer for J2EE 1.3 Vendors : SUN Version

More information

Enterprise JavaBeans. Layer:03. Session

Enterprise JavaBeans. Layer:03. Session Enterprise JavaBeans Layer:03 Session Agenda Build stateless & stateful session beans. Describe the bean's lifecycle. Describe the server's swapping mechanism. Last Revised: 10/2/2001 Copyright (C) 2001

More information

Exam Actual. Higher Quality. Better Service! QUESTION & ANSWER

Exam Actual. Higher Quality. Better Service! QUESTION & ANSWER Higher Quality Better Service! Exam Actual QUESTION & ANSWER Accurate study guides, High passing rate! Exam Actual provides update free of charge in one year! http://www.examactual.com Exam : 310-090 Title

More information

JBuilder. Getting Started Guide part II. Preface. Creating your Second Enterprise JavaBean. Container Managed Persistent Bean.

JBuilder. Getting Started Guide part II. Preface. Creating your Second Enterprise JavaBean. Container Managed Persistent Bean. Getting Started Guide part II Creating your Second Enterprise JavaBean Container Managed Persistent Bean by Gerard van der Pol and Michael Faisst, Borland Preface Introduction This document provides an

More information

Oracle9iAS Containers for J2EE

Oracle9iAS Containers for J2EE Oracle9iAS Containers for J2EE Enterprise JavaBeans Developer s Guide Release 2 (9.0.4) Part No. B10324-01 April 2003 Beta Draft. Oracle9iAS Containers for J2EE Enterprise JavaBeans Developer s Guide,

More information

The Developer s Guide to Understanding Enterprise JavaBeans. Nova Laboratories

The Developer s Guide to Understanding Enterprise JavaBeans. Nova Laboratories The Developer s Guide to Understanding Enterprise JavaBeans Nova Laboratories www.nova-labs.com For more information about Nova Laboratories or the Developer Kitchen Series, or to add your name to our

More information

TOPLink for WebLogic. Whitepaper. The Challenge: The Solution:

TOPLink for WebLogic. Whitepaper. The Challenge: The Solution: Whitepaper The Challenge: Enterprise JavaBeans (EJB) represents a new standard in enterprise computing: a component-based architecture for developing and deploying distributed object-oriented applications

More information

Stateless Session Bean

Stateless Session Bean Session Beans As its name implies, a session bean is an interactive bean and its lifetime is during the session with a specific client. It is non-persistent. When a client terminates the session, the bean

More information

Fast Track to EJB 3.0 and the JPA Using JBoss

Fast Track to EJB 3.0 and the JPA Using JBoss Fast Track to EJB 3.0 and the JPA Using JBoss The Enterprise JavaBeans 3.0 specification is a deep overhaul of the EJB specification that is intended to improve the EJB architecture by reducing its complexity

More information

~ Ian Hunneybell: CBSD Revision Notes (07/06/2006) ~

~ Ian Hunneybell: CBSD Revision Notes (07/06/2006) ~ 1 Component: Szyperski s definition of a component: A software component is a unit of composition with contractually specified interfaces and explicit context dependencies only. A software component can

More information

Data Management in Application Servers. Dean Jacobs BEA Systems

Data Management in Application Servers. Dean Jacobs BEA Systems Data Management in Application Servers Dean Jacobs BEA Systems Outline Clustered Application Servers Adding Web Services Java 2 Enterprise Edition (J2EE) The Application Server platform for Java Java Servlets

More information

Exam Questions 1Z0-895

Exam Questions 1Z0-895 Exam Questions 1Z0-895 Java Platform, Enterprise Edition 6 Enterprise JavaBeans Developer Certified Expert Exam https://www.2passeasy.com/dumps/1z0-895/ QUESTION NO: 1 A developer needs to deliver a large-scale

More information

Web Design and Applications

Web Design and Applications Web Design and Applications JEE, Message-Driven Beans Gheorghe Aurel Pacurar JEE, Message-Driven Beans Java Message Service - JMS Server JMS is a standard Java API that allows applications to create, send,

More information

J2EE Access of Relational Data

J2EE Access of Relational Data J2EE Access of Relational Data Direct JDBC Direct SQL calls, uses rows and result sets directly Object view Accessed as objects or components, transparent that the data is stored in relational database

More information

Lab3: A J2EE Application with Stateful Session Bean and CMP Entity Beans

Lab3: A J2EE Application with Stateful Session Bean and CMP Entity Beans Session Bean and CMP Entity Beans Based on the lab2, the lab3 implements an on line symposium registration application RegisterApp which consists of a front session bean and two CMP supported by database

More information

Implementing a Web Service p. 110 Implementing a Web Service Client p. 114 Summary p. 117 Introduction to Entity Beans p. 119 Persistence Concepts p.

Implementing a Web Service p. 110 Implementing a Web Service Client p. 114 Summary p. 117 Introduction to Entity Beans p. 119 Persistence Concepts p. Acknowledgments p. xvi Introduction p. xvii Overview p. 1 Overview p. 3 The Motivation for Enterprise JavaBeans p. 4 Component Architectures p. 7 Divide and Conquer to the Extreme with Reusable Services

More information

Using Message Driven Beans.

Using Message Driven Beans. Using Message Driven Beans Gerald.Loeffler@sun.com Contents JMS - Java Messaging Service EJBs - Enterprise Java Beans MDBs - Message Driven Beans MDB Usage Szenarios 2002-04-22 Gerald.Loeffler@sun.com

More information

CO Java EE 7: Back-End Server Application Development

CO Java EE 7: Back-End Server Application Development CO-85116 Java EE 7: Back-End Server Application Development Summary Duration 5 Days Audience Application Developers, Developers, J2EE Developers, Java Developers and System Integrators Level Professional

More information

Container Managed Persistent in EJB 2.0

Container Managed Persistent in EJB 2.0 Container Managed Persistent in EJB 2.0 A comprehensive explanation of the new CMP in EJB 2.0 (PFD 2) using the RI of SUN By Raphael Parree 2001 IT-DreamTeam Table of Contents INTRODUCTION 3 CMP IMPLEMENTATION

More information

Asynchrone Kommunikation mit Message Driven Beans

Asynchrone Kommunikation mit Message Driven Beans Asynchrone Kommunikation mit Message Driven Beans Arnold Senn (Technical Consultant) asenn@borland.com Outline Why Messaging Systems? Concepts JMS specification Messaging Modes Messages Implementation

More information

133 July 23, :01 pm

133 July 23, :01 pm Protocol Between a Message-Driven Bean Instance and its ContainerEnterprise JavaBeans 3.2, Public Draft Message-Driven Bean When a message-driven bean using bean-managed transaction demarcation uses the

More information

Web Application Development Using JEE, Enterprise JavaBeans and JPA

Web Application Development Using JEE, Enterprise JavaBeans and JPA Web Application Development Using JEE, Enterprise Java and JPA Duration: 35 hours Price: $750 Delivery Option: Attend training via an on-demand, self-paced platform paired with personal instructor facilitation.

More information

Java- EE Web Application Development with Enterprise JavaBeans and Web Services

Java- EE Web Application Development with Enterprise JavaBeans and Web Services Java- EE Web Application Development with Enterprise JavaBeans and Web Services Duration:60 HOURS Price: INR 8000 SAVE NOW! INR 7000 until December 1, 2011 Students Will Learn How to write Session, Message-Driven

More information

Java/J2EE Interview Questions(255 Questions)

Java/J2EE Interview Questions(255 Questions) Java/J2EE Interview Questions(255 Questions) We are providing the complete set of Java Interview Questions to the Java/J2EE Developers, which occurs frequently in the interview. Java:- 1)What is static

More information

J2EE Development. Course Detail: Audience. Duration. Course Abstract. Course Objectives. Course Topics. Class Format.

J2EE Development. Course Detail: Audience. Duration. Course Abstract. Course Objectives. Course Topics. Class Format. J2EE Development Detail: Audience www.peaksolutions.com/ittraining Java developers, web page designers and other professionals that will be designing, developing and implementing web applications using

More information

@jbossdeveloper. explained

@jbossdeveloper. explained @jbossdeveloper explained WHAT IS? A recommended approach, using modern technologies, that makes you more productive. Modern Technologies A Simple Process Build A Domain Layer Java EE 6 HTML5 by AeroGear

More information

presentation DAD Distributed Applications Development Cristian Toma

presentation DAD Distributed Applications Development Cristian Toma Lecture 12 S4 - Core Distributed Middleware Programming in JEE Distributed Development of Business Logic Layer presentation DAD Distributed Applications Development Cristian Toma D.I.C.E/D.E.I.C Department

More information

Oracle EXAM - 1Z Java EE 6 Enterprise JavaBeans Developer Certified Expert Exam. Buy Full Product.

Oracle EXAM - 1Z Java EE 6 Enterprise JavaBeans Developer Certified Expert Exam. Buy Full Product. Oracle EXAM - 1Z0-895 Java EE 6 Enterprise JavaBeans Developer Certified Expert Exam Buy Full Product http://www.examskey.com/1z0-895.html Examskey Oracle 1Z0-895 exam demo product is here for you to test

More information

Java EE 7: Back-End Server Application Development

Java EE 7: Back-End Server Application Development Oracle University Contact Us: Local: 0845 777 7 711 Intl: +44 845 777 7 711 Java EE 7: Back-End Server Application Development Duration: 5 Days What you will learn The Java EE 7: Back-End Server Application

More information

8. Component Software

8. Component Software 8. Component Software Overview 8.1 Component Frameworks: An Introduction 8.2 OSGi Component Framework 8.2.1 Component Model and Bundles 8.2.2 OSGi Container and Framework 8.2.3 Further Features of the

More information

IBM WebSphere Application Server. J2EE Programming Model Best Practices

IBM WebSphere Application Server. J2EE Programming Model Best Practices IBM WebSphere Application Server J2EE Programming Model Best Practices Requirements Matrix There are four elements of the system requirements: business process and application flow dynamic and static aspects

More information

Plan. Department of Informatics. Advanced Software Engineering Prof. J. Pasquier-Rocha Cours de Master en Informatique - SH 2003/04

Plan. Department of Informatics. Advanced Software Engineering Prof. J. Pasquier-Rocha Cours de Master en Informatique - SH 2003/04 Plan 1. Application Servers 2. Servlets, JSP, JDBC 3. J2EE: Vue d ensemble 4. Distributed Programming 5. Enterprise JavaBeans 6. Enterprise JavaBeans: Transactions 7. Prise de recul critique Enterprise

More information

Deccansoft Software Services. J2EE Syllabus

Deccansoft Software Services. J2EE Syllabus Overview: Java is a language and J2EE is a platform which implements java language. J2EE standard for Java 2 Enterprise Edition. Core Java and advanced java are the standard editions of java whereas J2EE

More information

Transaction Commit Options

Transaction Commit Options Transaction Commit Options Entity beans in the EJB container of Borland Enterprise Server by Jonathan Weedon, Architect: Borland VisiBroker and Borland AppServer, and Krishnan Subramanian, Enterprise Consultant

More information

"Charting the Course... Mastering EJB 3.0 Applications. Course Summary

Charting the Course... Mastering EJB 3.0 Applications. Course Summary Course Summary Description Our training is technology centric. Although a specific application server product will be used throughout the course, the comprehensive labs and lessons geared towards teaching

More information

Web Application Development Using JEE, Enterprise JavaBeans and JPA

Web Application Development Using JEE, Enterprise JavaBeans and JPA Web Application Development Using JEE, Enterprise Java and JPA Duration: 5 days Price: $2795 *California residents and government employees call for pricing. Discounts: We offer multiple discount options.

More information

Objectives. Software Development using MacroMedia s JRun. What are EJBs? Topics for Discussion. Examples of Session beans calling entity beans

Objectives. Software Development using MacroMedia s JRun. What are EJBs? Topics for Discussion. Examples of Session beans calling entity beans Software Development using MacroMedia s JRun B.Ramamurthy Objectives To study the components and working of an enterprise java bean (EJB). Understand the features offered by Jrun4 environment. To be able

More information

Enterprise JavaBeans 2.1

Enterprise JavaBeans 2.1 Enterprise JavaBeans 2.1 STEFAN DENNINGER and INGO PETERS with ROB CASTANEDA translated by David Kramer ApressTM Enterprise JavaBeans 2.1 Copyright c 2003 by Stefan Denninger and Ingo Peters with Rob Castaneda

More information

JVA-163. Enterprise JavaBeans

JVA-163. Enterprise JavaBeans JVA-163. Enterprise JavaBeans Version 3.0.2 This course gives the experienced Java developer a thorough grounding in Enterprise JavaBeans -- the Java EE standard for scalable, secure, and transactional

More information

CMP 436/774. Introduction to Java Enterprise Edition. Java Enterprise Edition

CMP 436/774. Introduction to Java Enterprise Edition. Java Enterprise Edition CMP 436/774 Introduction to Java Enterprise Edition Fall 2013 Department of Mathematics and Computer Science Lehman College, CUNY 1 Java Enterprise Edition Developers today increasingly recognize the need

More information

Entities are classes that need to be persisted, usually in a relational database. In this chapter we cover the following topics:

Entities are classes that need to be persisted, usually in a relational database. In this chapter we cover the following topics: Entities are classes that need to be persisted, usually in a relational database. In this chapter we cover the following topics: EJB 3 entities Java persistence API Mapping an entity to a database table

More information

Java EE 6: Develop Business Components with JMS & EJBs

Java EE 6: Develop Business Components with JMS & EJBs Oracle University Contact Us: + 38516306373 Java EE 6: Develop Business Components with JMS & EJBs Duration: 4 Days What you will learn This Java EE 6: Develop Business Components with JMS & EJBs training

More information

Enterprise JavaBeans, Version 3 (EJB3) Programming

Enterprise JavaBeans, Version 3 (EJB3) Programming Enterprise JavaBeans, Version 3 (EJB3) Programming Description Audience This course teaches developers how to write Java Enterprise Edition (JEE) applications that use Enterprise JavaBeans, version 3.

More information

Component-Based Software Engineering. ECE493-Topic 5 Winter Lecture 26 Java Enterprise (Part D)

Component-Based Software Engineering. ECE493-Topic 5 Winter Lecture 26 Java Enterprise (Part D) Component-Based Software Engineering ECE493-Topic 5 Winter 2007 Lecture 26 Java Enterprise (Part D) Ladan Tahvildari Assistant Professor Dept. of Elect. & Comp. Eng. University of Waterloo J2EE Application

More information

The Evolution to Components. Components and the J2EE Platform. What is a Component? Properties of a Server-side Component

The Evolution to Components. Components and the J2EE Platform. What is a Component? Properties of a Server-side Component The Evolution to Components Components and the J2EE Platform Mariano Cilia cilia@informatik.tu-darmstadt.de Object-Orientation Orientation C++, Eiffel, OOA/D Structured Programming Pascal, Ada, COBOL,

More information

Borland Application Server Certification. Study Guide. Version 1.0 Copyright 2001 Borland Software Corporation. All Rights Reserved.

Borland Application Server Certification. Study Guide. Version 1.0 Copyright 2001 Borland Software Corporation. All Rights Reserved. Borland Application Server Certification Study Guide Version 1.0 Copyright 2001 Borland Software Corporation. All Rights Reserved. Introduction This study guide is designed to walk you through requisite

More information

Multi-tier architecture performance analysis. Papers covered

Multi-tier architecture performance analysis. Papers covered Multi-tier architecture performance analysis Papers covered Emmanuel Cecchet, Julie Marguerie, Willy Zwaenepoel: Performance and Scalability of EJB Applications. OOPSLA 02 Yan Liu, Alan Fekete, Ian Gorton:

More information

BEA WebLogic Server. Enterprise JavaBeans

BEA WebLogic Server. Enterprise JavaBeans BEA WebLogic Server Enterprise JavaBeans Document 1.0 April 2000 Copyright Copyright 2000 BEA Systems, Inc. All Rights Reserved. Restricted Rights Legend This software and documentation is subject to

More information

Enterprise JavaBeans

Enterprise JavaBeans 3.0 Claude Duvallet University of Le Havre Faculty of Sciences and Technology 25 rue Philippe Lebon - BP 540 76058 LE HAVRE CEDEX, FRANCE Claude.Duvallet@gmail.com http://litis.univ-lehavre.fr/ duvallet/index-en.php

More information

Code generation with XDoclet. It s so beautifully arranged on the plate you know someone s fingers have been all over it.

Code generation with XDoclet. It s so beautifully arranged on the plate you know someone s fingers have been all over it. Code generation with XDoclet It s so beautifully arranged on the plate you know someone s fingers have been all over it. Julia Child 33 34 CHAPTER 2 Code generation with XDoclet Developing EJBs today entails

More information

New Features in EJB 3.1

New Features in EJB 3.1 New Features in EJB 3.1 Sangeetha S E-Commerce Research Labs, Infosys Technologies Limited 2010 Infosys Technologies Limited Agenda New Features in EJB 3.1 No Interface View EJB Components in WAR Singleton

More information

IBM. Enterprise Application Development with IBM Web Sphere Studio, V5.0

IBM. Enterprise Application Development with IBM Web Sphere Studio, V5.0 IBM 000-287 Enterprise Application Development with IBM Web Sphere Studio, V5.0 Download Full Version : http://killexams.com/pass4sure/exam-detail/000-287 QUESTION: 90 Which of the following statements

More information

BEA WebLogic Server. Programming WebLogic Enterprise JavaBeans

BEA WebLogic Server. Programming WebLogic Enterprise JavaBeans BEA WebLogic Server Programming WebLogic Enterprise JavaBeans BEA WebLogic Server 6.1 Document Date: February 26, 2003 Copyright Copyright 2002 BEA Systems, Inc. All Rights Reserved. Restricted Rights

More information

Introduction to Session beans EJB 3.0

Introduction to Session beans EJB 3.0 Introduction to Session beans EJB 3.0 Remote Interface EJB 2.1 ===================================================== public interface Hello extends javax.ejb.ejbobject { /** * The one method - hello -

More information

Oracle9iAS TopLink. 1 TopLink CMP for BEA WebLogic Server. 1.1 EJB 2.0 Support. CMP-Specific Release Notes

Oracle9iAS TopLink. 1 TopLink CMP for BEA WebLogic Server. 1.1 EJB 2.0 Support. CMP-Specific Release Notes Oracle9iAS TopLink CMP-Specific Release Notes Release 2 (9.0.3) August 2002 Part No. B10161-01 These release notes include information on using Oracle9iAS TopLink Release 2 (9.0.3) with the following CMPs:

More information

Chapter 6 Object Persistence, Relationships and Queries

Chapter 6 Object Persistence, Relationships and Queries Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 6 Object Persistence, Relationships and Queries Object Persistence

More information

Oracle Containers for J2EE

Oracle Containers for J2EE Oracle Containers for J2EE Orion CMP Developer s Guide 10g Release 3 (10.1.3.1) B28220-01 September 2006 Oracle Containers for J2EE Orion CMP Developer s Guide, 10g Release 3 (10.1.3.1) B28220-01 Copyright

More information

WHAT IS EJB. Security. life cycle management.

WHAT IS EJB. Security. life cycle management. EJB WHAT IS EJB EJB is an acronym for enterprise java bean. It is a specification provided by Sun Microsystems to develop secured, robust and scalable distributed applications. To run EJB application,

More information

Module 8 The Java Persistence API

Module 8 The Java Persistence API Module 8 The Java Persistence API Objectives Describe the role of the Java Persistence API (JPA) in a Java EE application Describe the basics of Object Relational Mapping Describe the elements and environment

More information

Efficient Object-Relational Mapping for JAVA and J2EE Applications or the impact of J2EE on RDB. Marc Stampfli Oracle Software (Switzerland) Ltd.

Efficient Object-Relational Mapping for JAVA and J2EE Applications or the impact of J2EE on RDB. Marc Stampfli Oracle Software (Switzerland) Ltd. Efficient Object-Relational Mapping for JAVA and J2EE Applications or the impact of J2EE on RDB Marc Stampfli Oracle Software (Switzerland) Ltd. Underestimation According to customers about 20-50% percent

More information

Supports 1-1, 1-many, and many to many relationships between objects

Supports 1-1, 1-many, and many to many relationships between objects Author: Bill Ennis TOPLink provides container-managed persistence for BEA Weblogic. It has been available for Weblogic's application server since Weblogic version 4.5.1 released in December, 1999. TOPLink

More information

Developing Message-Driven Beans for Oracle WebLogic Server c (12.1.3)

Developing Message-Driven Beans for Oracle WebLogic Server c (12.1.3) [1]Oracle Fusion Middleware Developing Message-Driven Beans for Oracle WebLogic Server 12.1.3 12c (12.1.3) E47842-02 August 2015 This document is a resource for software developers who develop applications

More information

Master Thesis An Introduction to the Enterprise JavaBeans technology and Integrated Development Environments for implementing EJB applications

Master Thesis An Introduction to the Enterprise JavaBeans technology and Integrated Development Environments for implementing EJB applications Master Thesis An Introduction to the Enterprise JavaBeans technology and Integrated Development Environments for implementing EJB applications Daniela Novak Vienna University of Economics and Business

More information

Vision of J2EE. Why J2EE? Need for. J2EE Suite. J2EE Based Distributed Application Architecture Overview. Umair Javed 1

Vision of J2EE. Why J2EE? Need for. J2EE Suite. J2EE Based Distributed Application Architecture Overview. Umair Javed 1 Umair Javed 2004 J2EE Based Distributed Application Architecture Overview Lecture - 2 Distributed Software Systems Development Why J2EE? Vision of J2EE An open standard Umbrella for anything Java-related

More information

Oracle Exam 1z0-895 Java EE 6 Enterprise JavaBeans Developer Certified Expert Exam Version: 14.0 [ Total Questions: 90 ]

Oracle Exam 1z0-895 Java EE 6 Enterprise JavaBeans Developer Certified Expert Exam Version: 14.0 [ Total Questions: 90 ] s@lm@n Oracle Exam 1z0-895 Java EE 6 Enterprise JavaBeans Developer Certified Expert Exam Version: 14.0 [ Total Questions: 90 ] Oracle 1z0-895 : Practice Test Question No : 1 A developer wants to create

More information

Sharpen your pencil. Container services. EJB Object. the bean

Sharpen your pencil. Container services. EJB Object. the bean EJB architecture 1 Label the three parts in the diagram. Client B Container services server Client object biz interface A EJB Object C the bean DB 2 Describe (briefly) what each of the three things are

More information

WAS V7 Application Development

WAS V7 Application Development IBM Software Group WAS V7 Application Development An IBM Proof of Technology Updated September 28, 2009 WAS v7 Programming Model Goals One word Simplify Simplify the programming model Simplify application

More information

Migration Technical Resources. Angelo Santagata EMEA Partner Technical Services Oracle Server Technologies

Migration Technical Resources. Angelo Santagata EMEA Partner Technical Services Oracle Server Technologies Migration Technical Resources Angelo Santagata EMEA Partner Technical Services Oracle Server Technologies Introduction If you are successful then so are we Knowledge is the key to a successful migration

More information

Developing Portable Applications for the Java 2 Platform, Enterprise Edition (J2EE )

Developing Portable Applications for the Java 2 Platform, Enterprise Edition (J2EE ) Developing Portable Applications for the Java 2 Platform, Enterprise Edition (J2EE ) Kevin Osborn, Philippe Hanrigou, Lance Andersen Sun Microsystems, Inc. Goal Learn how to develop portable applications

More information

BEA WebLogic. Server. Programming WebLogic Enterprise JavaBeans

BEA WebLogic. Server. Programming WebLogic Enterprise JavaBeans BEA WebLogic Server Programming WebLogic Enterprise JavaBeans Release 7.0 Document Revised: February 18, 2005 Copyright Copyright 2005 BEA Systems, Inc. All Rights Reserved. Restricted Rights Legend This

More information

J2EE - Version: 25. Developing Enterprise Applications with J2EE Enterprise Technologies

J2EE - Version: 25. Developing Enterprise Applications with J2EE Enterprise Technologies J2EE - Version: 25 Developing Enterprise Applications with J2EE Enterprise Technologies Developing Enterprise Applications with J2EE Enterprise Technologies J2EE - Version: 25 5 days Course Description:

More information

Enterprise Java Beans for the Oracle Internet Platform

Enterprise Java Beans for the Oracle Internet Platform Enterprise Java Beans for the Oracle Internet Platform Matthieu Devin, Rakesh Dhoopar, and Wendy Liau, Oracle Corporation Abstract Enterprise Java Beans is a server component model for Java that will dramatically

More information

Appendix A - Glossary(of OO software term s)

Appendix A - Glossary(of OO software term s) Appendix A - Glossary(of OO software term s) Abstract Class A class that does not supply an implementation for its entire interface, and so consequently, cannot be instantiated. ActiveX Microsoft s component

More information