Symbols
- %
percent, The WHERE Clause and LIKE
- 2-PC (two-phase commit
protocol), Transaction Propagation
- < comparison
operator, The WHERE Clause and Comparison Symbols
- < less than, The WHERE Clause and CDATA Sections
- <=
comparison operator, The WHERE Clause and Comparison Symbols
- = comparison operator, The WHERE Clause and Comparison Symbols
- > comparison
operator, The WHERE Clause and Comparison Symbols
- >
greater than, The WHERE Clause and CDATA Sections
- >=
comparison operator, The WHERE Clause and Comparison Symbols
- _ underscore, The WHERE Clause and LIKE
A
- <abstract-schema-name> element, Session and Entity Beans
- abstract persistence
schema, Abstract Persistence Schema, Abstract Persistence Schema, Abstract Persistence Schema, Describing Relationships
- EJBQL and, EJB QL Examples
- terminology conventions
and, Abstract Persistence Schema
- abstract
programming model, Abstract Persistence Schema
- abstract schema
name, Declaring EJB QL, Declaring EJB QL Elements
- <activation-config>
element, EJB 2.1: Deployment descriptor for MDBs, EJB 2.1 elements, EJB 2.0 elements
- access control, Security
- deployment
and, Deploying the Cabin EJB
- isCallerInRole( ) method
and, EJBContext
- role-driven, Role-driven access control, Role-driven access control
- AccessLocalException, Exclude list
- accessor methods
(accessors), Abstract Persistence Schema
- defining, CabinBean: The Bean Class
- element
and, Abstract Persistence Schema
- naming conventions
and, Set and Get Methods
- ACID, ACID Transactions
- principles, ensuring
transactions adhere to, Is the TravelAgent EJB Durable?
- transactions, ACID Transactions, Is the TravelAgent EJB Durable?
- acknowledgeMode property (<activation-config> element), EJB 2.1 elements
- activating enterprise
beans, The Activation Mechanism
- entity beans
and, Transitioning from the Pooled state to the Ready state via a query method
- MDBs and, Transitioning to the Method-Ready Pool
- stateful session beans
and, The Life Cycle of a Stateful Session Bean
- stateless session beans
and, The Stateless Session Bean, Transitioning to the Method-Ready Pool
- transient fields
and, Passivated State
- activation callback
methods, The Activation Mechanism
- actual
types, Return types and parameters
- addPhoneNumber( )
method, Abstract programming model
- Address EJB (sample entity
bean), Relationship Fields
- queries
and, EJB QL Examples
- relationships
and, One-to-One, Unidirectional Relationship
- ADDRESS table,
creating, Relationship Fields
- Address XML
document, XML Schema, XML Schema
- AddressBean class, Relationship Fields, Select Methods
- AddressDO
dependent value class, Relationship Fields
- administered objects, Session and Entity Beans, Additional administered objects
- afterBegin( )
method, Transitioning into the Transactional Method-Ready state
- aggregate functions in SELECT
clause, EJB 2.1: Aggregate functions in the SELECT clause
- AND
operator, The WHERE Clause and Logical Operators
- Ant scripts (for
exercises), Environment Setup
- Ant
tool, Exercises Directory Structure
- Apache Axis project, Build and Deploy Example Programs
- application client
component, J2EE Application Client Components
- architecture
- for
distributed objects, Distributed Object Architectures
- of
EJB, Architectural Overview, Summary
- arithmetic
functions, Functional expressions in the WHERE clause
- arithmetic
operators, The WHERE Clause and Operator Precedence
- in WHERE
clauses, Exercise 8.2: Complex EJB QL Statements
- array of
Strings, Returning entity data from EJBs
- <assembly-descriptor>
element, The XML Deployment Descriptor
- nesting inside <ejb-jar> element, The Descriptor’s Body
- <assembly-descriptor>
element, Describing Bean Assembly, Describing Bean Assembly
- asterisk (*) indicating
wildcard, Setting a transaction attribute, Specifying a Bean’s Transaction Attributes, Wildcard declarations
- asynchronous
messaging, Asynchronous Messaging, Web Services, Asynchronous Enterprise Messaging, When to Use EJBs
- JMS and, JMS Is Asynchronous
- MDBs
and, Identifying message-driven beans
- ATM
transactions, ACID Transactions
- reliability
of, ACID Transactions
- atomicity
of transactions, ACID Transactions, Is the TravelAgent EJB Atomic?
- auditing, Stateless Session Bean Timers
- authentication, Security
- element
and, Obtaining a Resource Connection, References to External Resources
- JNDI
API and, Security
- Auto-acknowledge
value, Acknowledge mode
- automatic primary-key
generation in JBoss CMP 2.0, AddressBean.java
- automatic
teller machine (ATM) transactions, ACID Transactions
- AVG( )
function, AVG( numeric ), SUM( numeric)
B
- base
classes, Base and Utility Classes, Base classes
- limitations, Base classes
- batch jobs, Timer Service
- batch
processing, Stateless Session Bean Timers
- bean
class, Classes and Interfaces, The bean class
- Client API
and, Bean metadata
- for entity
beans, CabinBean: The Bean Class
- for session
beans, TravelAgentBean: The Bean Class
- stateful session
beans and, TravelAgentBean: The bean class
- stateless session
beans and, The bean class (ProcessPaymentBean)
- bean
instances
- concurrent access to
prohibited, Concurrency with session and entity beans
- reentrant, Reentrance
- bean-managed
persistence (see BMP)
- bean-managed
transaction (BMT) beans (see BMT beans)
- BETWEEN
clause, The WHERE Clause and BETWEEN
- <binding> element
(WSDL), The <binding> and <service> elements
- bindings, Naming
- BMP
(bean-managed persistence), Persistence, Bean-Managed Persistence
- code
optimization, Possible optimizations
- deployment
descriptors, The Deployment Descriptor
- disadvantages
of, Bean-Managed Persistence
- ejbCreate( )
method, The ejbCreate( ) Method
- ejbFind( )
method, The ejbFind( ) Methods, The ejbFind( ) Methods
- ejbLoad( )
method, The ejbLoad( ) and ejbStore( ) Methods, The ejbLoad( ) and ejbStore( ) Methods
- ejbRemove( )
method, The ejbRemove( ) Method
- ejbStore( )
method, The ejbLoad( ) and ejbStore( ) Methods, The ejbLoad( ) and ejbStore( ) Methods
- entity
beans (see BMP entity
beans)
- primary
keys, The Primary Key
- remote home
interface, The Remote Home Interface
- remote
interface, The Remote Interface
- synchronizing bean’;s state with
database, Bean-Managed Persistence
- versus
container-managed
persistence, CMP: Basic Persistence, Container-managed versus bean-managed persistence
- BMP
entity beans, CMP: Basic Persistence, Bean-Managed Persistence
- exceptions thrown
by, Exception Handling
- exercises, Exercise 9.1: A BMP Entity Bean
- methods
for, The ejbCreate( ) Method
- resource connections
and, Obtaining a Resource Connection
- XML deployment descriptors
for, The Deployment Descriptor
- BMT (bean-managed transaction)
beans, Transaction Propagation in Bean-Managed Transactions, Message-driven beans and bean-managed transactions
- transaction propogation
and, Transaction Propagation in Bean-Managed Transactions, Message-driven beans and bean-managed transactions
- bookPassage( ) method, The bookPassage( ) method
- books, online
order transactions for, ACID Transactions
- Borland products,
JBuilder IDE and, Setting Up Your Java IDE
- build.xml file (Cabin
EJB exercise), Deconstructing build.xml, Deconstructing build.xml
- built-in types
(XML), XML Schema
- business
concepts, CMP entity beans and, CMP: Basic Persistence, Dependent Value Classes
- business
logic
- encapsulating into business
objects, Server-Side Components
- session beans
and, Modeling Taskflow with Session Beans
- stateful
session beans and, The Stateful Session Bean
- business
methods, Classes and Interfaces
- invoked by
clients, Reentrance
- local interface
and, The Local Interface
- transaction attributes
and, Specifying a Bean’s Transaction Attributes
- business
objects, Distributed Object Architectures
- business system
transactions, ACID Transactions
- business
transactions, When to Use EJBs
- business-to-business
applications, Taskflow and integration for B2B (onMessage( ) )
- BytesMessage message
type, Identifying message-driven beans
C
- C++ programming
language, Server-Side Components
- <cascade-delete>
element, Describing Relationships
- Cabin EJB (sample entity
bean), The remote interface
- creating
new, Creating a new Cabin EJB
- deploying, Deploying the Cabin EJB
- deployment descriptor
for, Role-driven access control, The Contents of a Deployment Descriptor
- EJB 2.0 deployment
descriptor, EJB 2.0: The Cabin EJB’s deployment descriptor
- EJB 2.1 deployment
descriptor, EJB 2.1: The Cabin EJB’s deployment descriptor
- exercise, Exercise 4.1: A Simple Entity Bean, Managing Entity Beans
- build.xml
file, Deconstructing build.xml, Deconstructing build.xml
- local interface, creating
for, The Local Interface
- many-to-many relationship
and, Abstract programming model
- persistence and, Object-to-relational persistence
- populating
database, Creating a new Cabin EJB, Creating a new Cabin EJB
- queries
and, EJB QL Examples
- using, Using Enterprise Beans
- CABIN
table
- creating, Creating a CABIN Table in the Database
- cabin.jar
file, cabin.jar: The JAR File
- CabinBean
class
- callback methods, The callback methods
- complete definition
of, CabinBean: The Bean Class
- container-managed
fields, CabinBean: The Bean Class
- CabinHomeRemote
home interface, CabinHome: The Remote Home Interface
- CabinRemote
interface, Cabin: The Remote Interface
- callback methods, The bean class, The callback methods, The Callback Methods, ejbHome( )
- bean class
and, The callback methods
- container
and, The Bean-Container Contract
- EJBException
and, Exception Handling
- RemoteException
and, Exception Handling
- cardinality, Abstract Persistence Schema
- cascade
deletes, Cascade Delete and Remove
- caution
with, Cascade Delete and Remove
- exercise, Exercise 7.3: Cascade Deletes in CMP 2.0
- casting, programming language
support for, Explicit narrowing using PortableRemoteObject
- Castor JDO, Others
- CDATA sections, EJB 2.0 elements
- WHERE clause
and, The WHERE Clause and CDATA Sections
- CheckDO.java, CheckDO.java
- checked
exceptions, Exception Handling
- Class.newInstance( )
method, Compound Primary Keys
- classes
(bean), Classes and Interfaces, What about message-driven beans?
- Client
API, The Remote Client API
- client
applications
- container-managed persistence
and, The Client Application
- creating, Creating a Client Application, Creating a new Cabin EJB
- entity
bean relationships, testing with, Relationship Fields
- examples of for
MDBs, The ReservationProcessor Clients
- for JMS, JMS Application Client
- for session
beans, Creating a Client Application
- locating entity
beans, Creating a new Cabin EJB
- stateful
session beans and, The Stateful Session Bean
- client view, The Remote and Local Client View
- RMI protocols
and, Distributed Objects
- stateful session
beans and, Taking a peek at the client view
- Client_1.java example program, Examine and Run the Client Applications
- Client_111a example program, Client_111a
- Client_111b example program, Client_111b
- Client_112a example program, Client_112a
- Client_112b example program, Client_112b, Client_112b
- Client_112c example program, Client_112c, Client_112c
- Client_2.java example program, Examine and Run the Client Applications, Client_1.java
- Client_3.java example program, Client_3.java, TravelAgentBean.java
- Client_51a.java example program, Examine and Run the Client Applications
- Client_51b.java example program, Examine and Run the Client Applications
- Client_52a.java example program, Examine and Run the Client Applications
- Client_52b.java example program, Examine and Run the Client Applications
- Client_52c.java example program, Examine and Run the Client Applications
- Client_53
example program, Examine and Run the Client Applications
- Client_63
example program, AddressBean.java
- Client_71a example
program, Client_71a
- Client_71b example
program, Client_71b
- Client_71c example
program, Client_71c
- Client_72a example
program, Client_72a
- Client_72b example
program, Client_72b
- Client_72c example
program, Client_72c
- Client_72d example
program, Client_72d
- Client_72e example
program, Client_72e
- Client_72f example
program, Client_72f
- Client_73
example program, Examine and Run the Client Applications
- Client_81a example
program, Client_81a
- Client_81b example
program, Client_81b
- Client_81c example
program, Client_81c
- Client_82a example
program, Client_82a
- Client_82b
example program, Client_82b
- Client_82c
example program, Client_82c
- Client_82d
example program, Client_82d
- Client_82e
example program, Client_82e
- Client_82f
example program, Client_82f
- Client_82g
example program, Client_82g
- Client_82h
example program, Client_82h
- Client_82i
example program, Client_82i
- Client_82j
example program, Client_82j
- Client_82k
example program, Client_82k
- Client_82m example
program, Client_82m
- Client_82n
example program, Client_82n
- Client_91.java example program, Client_91.java
- CLR (Common Language
Runtime), Competing Component Models: Microsoft’s .NET Framework
- <cmp-version>
element, The XML Deployment Descriptor, Compound Primary Keys
- nesting inside <entity> elements, Session and Entity Beans
- CMP
(container-managed persistence), Persistence, Container-managed fields, CMP: Basic Persistence, Relationship Fields, Session and Entity Beans
- cascade deletes
exercise, Exercise 7.3: Cascade Deletes in CMP 2.0
- collection-based relationships
and, Collection-Based Relationships and Transactions, Collection-Based Relationships and Transactions
- dependent value
class
- exercise, Exercise 6.2: Dependent Value Classes in CMP 2.0
- element and, Session and Entity Beans
- entity
beans, CMP: Basic Persistence
- primary keys
and, The XML Deployment Descriptor
- relationships
between, CMP: Entity Relationships, Cascade Delete and Remove
- transaction attributes
and, Container-managed persistence and transaction attributes
- entity
relationships
- exercise, Exercise 7.1: Entity Relationships in CMP 2.0, Part 1
- exercise, Exercise 6.1: Basic Persistence in CMP 2.0
- fields, Persistence Fields
- in ORDER
BY clause, EJB 2.1: The ORDER BY Clause
- in EJB
1.0, Undefined Primary Keys in CMP
- no-argument
constructor and, Compound Primary Keys
- versus bean-managed
persistence, CMP: Basic Persistence, Bean-Managed Persistence, Container-managed versus bean-managed persistence
- CMR fields, Abstract Persistence Schema, Simple Queries with Paths
- EJB QL
and, EJB QL Examples
- <complexType>
element, XML Schema, Setting a transaction attribute, Specifying a Bean’s Transaction Attributes, Identifying Specific Methods, jboss.xml, titandb-ds.xml
- nesting inside <assembly-descriptor> element, Describing Bean Assembly
- co-located enterprise
beans, The Local Client API, Co-Location and the Deployment Descriptor
- code duplication, Utility classes
- Collection
type, The ejbFind( ) Methods
- collection-based
relationships, The IN Operator
- Collection.add( )
method, Abstract programming model
- Collection.addAll( )
method, Abstract programming model
- Collection.remove( )
method, Abstract programming model
- COM (Component Object
Model), Competing Component Models: Microsoft’s .NET Framework
- COM+, Competing Component Models: Microsoft’s .NET Framework
- commit
option, Analyzing the effects of transactions and commit options
- commit( )
method, Explicit Transaction Management
- Common Language
Runtime (CLR), Competing Component Models: Microsoft’s .NET Framework
- comparison
operators, The WHERE Clause and Operator Precedence, The WHERE Clause and Comparison Symbols
- unsupported Date class
and, Lack of Support for Date
- WHERE clause
and, The WHERE Clause and Comparison Symbols
- complex types, Generating JAX-RPC Stubs from WSDL
- component
interfaces, Classes and Interfaces, What about message-driven beans?
- differentiating
between, Remote/home/local differentiation
- EJB 2.0
and, The EJB object
- component
models, Component Models, Benefits of a Standard Server-Side Component Model
- standard model
and, Benefits of a Standard Server-Side Component Model
- Component Object
Model (COM), Competing Component Models: Microsoft’s .NET Framework
- components,
portable, When to Use EJBs
- composition
between entity beans, Identifying entity beans
- compound primary
keys, The primary key, The XML Deployment Descriptor, The Primary Key, Compound Primary Keys, Compound Primary Keys
- specifying, Specifying Primary Keys
- concurrency, Concurrency
- stateful session
beans and, The Stateful Session Bean
- connection
factories, References to External Resources
- Connector-based
MDBs, Connector-Based Message-Driven Beans, Connector-Based Message-Driven Beans
- consistency of
transactions, ACID Transactions, Is the TravelAgent EJB Consistent?
- constructors, Compound Primary Keys
- definition of
prohibited, Transitioning to the Method-Ready Pool
- consumers, JMS as a Resource
- container-managed
fields, CabinBean: The Bean Class
- container-managed
persistence (see CMP)
- container-managed relationship
fields, Abstract Persistence Schema
- containers
- beans
and, The Bean-Container Contract
- choosing
before EJB development, Container Capabilities
- deployment
tools for, Container Tools and Persistence
- primary
keys, The callback methods
- Context
class, Explicit narrowing using PortableRemoteObject
- conventions for enterprise
beans, Naming conventions, Abstract Persistence Schema
- conversational
state, Stateless and stateful session beans, The Activation Mechanism, Session Beans
- stateful session beans
and, The Stateful Session Bean
- CORBA and
IDL, Distributed Objects
- COS
Timer Event Service, Timer Service
- COUNT( )
function, COUNT (identifier or path expression)
- course-grained
abstraction, Modeling Taskflow with Session Beans
- create methods, CabinHome: The Remote Home Interface, Return types and parameters
- CMP entity
beans and, The Remote Home Interface
- enterprise
beans, initializing with, The remote home interface
- remote
references and, TravelAgentBean: The bean class
- stateful
session beans and, The home interface (TravelAgentHomeRemote)
- stateless session beans
and, Life in the Method-Ready Pool
- transaction
attributes and, Specifying a Bean’s Transaction Attributes
- transitioning
between states and, Transitioning from the Pooled state to the Ready state via creation
- CREATE TABLE SQL
statement, Initialize the Database
- createAddress( )
method, Relationship Fields
- CreateException
- CMP
entity beans and, The Remote Home Interface
- createTopicSession( )
method, TopicConnection and TopicSession
- CreditCard EJB (sample entity
bean), One-to-One, Bidirectional Relationship
- queries
and, EJB QL Examples
- cron
utility, Timer Service, A very little bit about cron
- limitations, Improving the Timer Service
- Cruise EJB (sample entity
bean), The Cruise, Ship, and Reservation EJBs
- queries
and, EJB QL Examples
- Customer EJB (sample entity
bean), The Customer EJB
- declaring persistence
fields, The XML Deployment Descriptor
- deploying, Deployment
- exercises, Exercise 6.1: Basic Persistence in CMP 2.0
- queries
and, EJB QL Examples
- CUSTOMER
table, creating, The Customer Table
- CustomerBean class, The CustomerBean
D
- data
integrity, ACID Transactions
- data types, actual versus
declared, Return types and parameters
- data-holding
classes, Utility classes
- database connection pool,
deploying, Set Up the Database
- database
locking and transaction isolation, Dirty, Repeatable, and Phantom Reads, Controlling isolation levels
- database
locks, Database Locks, Database Locks
- types, Database Locks
- database mapping,
object-to-relational, Object-to-relational persistence
- database pools, setting
up, Database Configuration, Examine and Run the Client Applications
- databases
- bean-managed
persistence and, Bean-Managed Persistence, Obtaining a Resource Connection
- choosing, Database Capabilities
- entity beans
and, CMP: Basic Persistence
- locking
techniques for, Database Locks
- reading versus
writing, When Not to Use EJBs
- tables, schemas
for, Database Modeling
- datapool configuration
file, Set Up the Database
- DataSource resource
factory, Obtaining a Resource Connection
- declaring, The Deployment Descriptor
- Date
class, Lack of Support for Date
- DateRange utility
class, Utility classes
- DCOM (Distributed
Component Object Model), Competing Component Models: Microsoft’s .NET Framework
- <definitions>
element (WSDL), The <definitions> Element, The Descriptor’s Body, jboss.xml
- declarative transaction
management, Declarative Transaction Management, EJB endpoints and transaction attributes
- declared
types, Return types and parameters
- deleteDbTable(
) home method, Initialize the Database
- deliverTicket( )
method, Sending messages from a message-driven bean
- dependent objects
- stateful
session beans and, Dependent object (TicketDO)
- stateless
session beans and, Dependent objects (CreditCardDO and CheckDO classes)
- dependent value
classes, Persistence Fields, Dependent Value Classes, Exercise 6.2: Dependent Value Classes in CMP 2.0
- AddressDO, Relationship Fields
- deploy directory
(JBoss), Deployment in JBoss
- deploying
enterprise beans, Deploying a bean
- CMP entity beans
and, Deployment
- entity beans
and, Deploying the Cabin EJB
- multiple deployment
and, Describing Enterprise Beans
- session beans
and, Deploying the TravelAgent EJB
- deployment
descriptors, Deployment Descriptors and JAR Files, The bean class (ProcessPaymentBean), XML Deployment Descriptors
- BMP entity beans
and, The Deployment Descriptor
- CMP entity beans
and, The XML Deployment Descriptor, The XML Deployment Descriptor
- co-located enterprise beans
and, Co-Location and the Deployment Descriptor
- contents
of, The Contents of a Deployment Descriptor
- controlling EJBs transactional
behavior, Declarative Transaction Management
- document header
and, The Document Headerand Schema Declarations
- EJB
2.0, EJB 2.0: Deployment descriptor
- elements, EJB 2.1 and 2.0: Elements of the XML deployment descriptor, EJB 2.1 and 2.0: Elements of the XML deployment descriptor
- <ejb-class>, EJB 2.1 and 2.0: Elements of the XML deployment descriptor
- <ejb-jar>, EJB 2.1 and 2.0: Elements of the XML deployment descriptor
- <ejb-name>, EJB 2.1 and 2.0: Elements of the XML deployment descriptor
- <enterprise-beans>, EJB 2.1 and 2.0: Elements of the XML deployment descriptor
- <entity>, EJB 2.1 and 2.0: Elements of the XML deployment descriptor
- <home>, EJB 2.1 and 2.0: Elements of the XML deployment descriptor
- <persistence-type>, EJB 2.1 and 2.0: Elements of the XML deployment descriptor
- <prim-key-class>, EJB 2.1 and 2.0: Elements of the XML deployment descriptor
- <reentrant>, EJB 2.1 and 2.0: Elements of the XML deployment descriptor
- <remote>, EJB 2.1 and 2.0: Elements of the XML deployment descriptor
- example
downloads, The Deployment Descriptor
- example for Cabin
EJB, Role-driven access control
- find
methods and, Find Methods
- for Cabin Bean in EJB
2.0, EJB 2.0: The Cabin EJB’s deployment descriptor
- for Cabin Bean in EJB
2.1, EJB 2.1: The Cabin EJB’s deployment descriptor
- for client
components, J2EE Application Client Components
- for entity
beans, The Deployment Descriptor, EJB 2.1 and 2.0: Defining the XML elements
- for
session beans, The TravelAgent EJB’s Deployment Descriptor
- JMS
and, XML deployment descriptor
- local interface
and, Deployment Descriptor
- MDBs and, XML Deployment Descriptor, Subscription durability
- roles and, Role-driven access control
- security roles
and, Role-driven access control
- stateful session beans
and, The TravelAgent deployment descriptor
- stateless session beans
and, The ProcessPayment EJB’s deployment descriptor
- transaction attributes
and, Transaction Attributes
- types of
validation, EJB 2.1 and 2.0: Defining the XML elements
- XML elements
and, EJB 2.0 and 1.1: Defining the XML elements
- deployment files, vendor
specific, The Deployment Descriptor
- deserializing
primary keys, Primary key
- designing
EJBs, EJB Design in the Real World, Wrapping Up
- base classes, Base and Utility Classes, Base classes
- limitations, Base classes
- choosing
container, Container Capabilities
- choosing
databases, Database Capabilities
- combining
technologies, Special Circumstances, Sequential processing with EJBs
- determining each bean’;s sub-type and
interface type, EJB Details, Local versus remote interfaces
- EJB
identification, EJB Identification, Identifying message-driven beans
- exceptions, Exceptions
- hierarchy, Design the exception hierarchy
- identifying entity
beans, Identifying entity beans, Identifying entity beans
- identifying MDBs, Identifying message-driven beans, Identifying message-driven beans
- identifying session
beans, Identifying session beans, Identifying session beans
- pre-design, Pre-Design: Containers and Databases, Database Capabilities
- technical
architecture, Technical Architecture, Technical Architecture
- Titan application business
entities, Business Entity Identification
- UML diagram of business entities and their
relationships, Business Entity Identification
- utility classes, Utility classes, Utility classes
- destinations, Asynchronous Messaging
- element
and, EJB 2.1 elements
- destinationType property (<activation-config> element), EJB 2.1 elements
- <display-name> element, The Descriptor’s Body
- directory
service, Naming
- directory structure
- for
entity beans, Cabin: The Remote Interface
- for session
beans, Developing a Session Bean
- dirty
reads, Dirty, Repeatable, and Phantom Reads, Dirty reads
- DISTINCT
keyword, Using DISTINCT
- DISTINCT
operator, DISTINCT, nulls, and empty arguments
- distributed business
objects, Server-Side Components
- Distributed Component Object Model
(DCOM), Competing Component Models: Microsoft’s .NET Framework
- distributed
computing, Introduction
- resources for further
reading, Who Should Read This Book?
- distributed
functionality, When to Use EJBs
- distributed
objects, Distributed Objects
- architecture/systems
for, Distributed Object Architectures, Component Models
- concurrency
and, Concurrency with session and entity beans
- firewalls
and, Web Components and EJB
- Titan Cruises sample business
illustrating, Titan Cruises: An Imaginary Business
- distributed transactions
(2-PC), Transaction Propagation
- DO
qualifier, Relationship Fields
- document
header, The Document Headerand Schema Declarations
- Document Type Definition
(DTD), XML Deployment Descriptors
- Does Not Exist state, Does Not Exist
- MDBs and, Does Not Exist
- stateful session beans
and, Does Not Exist State
- stateless session beans
and, Does Not Exist
- transitioning to from Method-Ready
Pool, Transitioning out of the Method-Ready Pool: The death of a stateless bean instance
- doGet( )
method, Servlets
- doPost( )
method, Servlets
- <driver-class>
element, titandb-ds.xml
- drivers for
JNDI, Locating Beans with JNDI
- DTD (Document Type
Definition), XML Schema
- duplicates, Using DISTINCT
- Dups-ok-acknowledge
value, Acknowledge mode
- durability of
transactions, ACID Transactions, Is the TravelAgent EJB Durable?
- Durable
value, EJB 2.1 elements, EJB 2.0 elements
- Durable value
(subscription), Subscription durability
- dynamic
queries, Dynamic Queries
- in JBoss CMP
2.0, JBoss Dynamic QL, Advanced JBoss QL
E
- .ear
files, Filling in the Gaps
- EISs (Enterprise Information
Systems), J2EE Connector Architecture
- <ejb-jar> element, EJB 2.1 and 2.0: Elements of the XML deployment descriptor, Find Methods, The Descriptor’s Body, Describing Relationships
- corresponding <ejb-ref>
element, ejb-jar.xml
- local references
and, Local references
- nesting inside <session> or <entity> elements, Session and Entity Beans
- nesting other elements
inside, The Descriptor’s Body
- role, jboss.xml
- EJB 2.1
- expanded role of
MDBs, Message-driven beans and instance pooling
- message
linking, EJB 2.1: Message Linking, EJB 2.1: Message Linking
- new
element, The <service-ref> Deployment Element (EJB 2.1)
- new primary
service, EJB 2.1 : Timer Service
- EJB client
view, Distributed Objects
- EJB
endpoints, EJB Endpoints, webservices.xml file
- deployment
files, The Deployment Files, webservices.xml file
- home objects
and, No Home Interface
- Mandatory transaction attribute
and, EJB endpoints and transaction attributes
- WSDL documents
and, The WSDL Document
- EJB home, The EJB home
- EJB
Query Language (EJB
QL), CMP: EJB QL, Dynamic Queries
- basic finder
methods, Exercise 8.1: Simple EJB QL Statements
- declaring, Declaring EJB QL, Declaring EJB QL
- dynamic queries, JBoss Dynamic QL, Advanced JBoss QL
- ejbSelect
methods, Exercise 8.1: Simple EJB QL Statements
- elements/queries, Declaring EJB QL Elements
- examples, EJB QL Examples, EJB 2.1: The ORDER BY Clause
- IN
operator, Exercise 8.1: Simple EJB QL Statements
- programming and
functionality exercises, Exercise 8.1: Simple EJB QL Statements, Advanced JBoss QL
- statements, Simple Queries
- weaknesses
of, Problems with EJB QL, Dynamic Queries
- EJB references, stateful session beans
and, JNDI ENC and EJB references
- EJB
server, Choosing and Setting Up an EJB Server
- ejb-jar.xml
file, cabin.jar: The JAR File, The TravelAgent EJB’s Deployment Descriptor, The ejb-jar File
- EJB-to-CORBA mapping, Distributed Objects
- ejbActivate( )
method, ejbPassivate( ) and ejbActivate( ), Transitioning from the Pooled state to the Ready state via activation, Passivated State
- instance swapping, The Activation Mechanism
- transitioning from Pooled state to Ready
state via, Transitioning from the Pooled state to the Ready state via activation
- EJBContext
interface, The Bean-Container Contract, The entity bean life cycle, EJBContext, EJBContext
- rollback methods
and, EJBContext Rollback Methods
- ejbCreate( )
method, The bean class, Creating and finding beans, ejbCreate( )
- BMP entity beans
and, The ejbCreate( ) Method
- CMP entity beans
and, The CustomerBean
- ejbPostCreate( ) method
versus, Abstract programming model
- MDBs and, Transitioning to the Method-Ready Pool
- requirements, The callback methods
- return values
and, The CustomerBean
- setting timers on, Stateless Session Bean Timers
- stateful session beans
and, TravelAgentBean: The bean class
- stateless
session beans and, Transitioning to the Method-Ready Pool
- transitioning from Pooled state to Ready
state via, Transitioning from the Pooled state to the Ready state via creation
- ejbCreateAddress( )
method, Relationship Fields
- EJBException, An application exception (PaymentException)
- callback methods
and, Exception Handling
- EJBLocalObject
and, The Local Interface
- ejbFind( )
method
- BMP and, The ejbFind( ) Methods, The ejbFind( ) Methods
- ejbFind( )
methods
- in home interface versus bean
class, The ejbFind( ) Methods
- ejbFindByCapacity( )
method, The ejbFind( ) Methods
- ejbFindByPrimaryKey( )
method, The ejbFind( ) Methods
- EJBHome
interface, Classes and Interfaces, The remote home interface, EJB Objects and EJB Home, The Remote Home Interface, Getting the EJBHome
- Java RMI-IIOP
and, Java RMI return types, parameters, and exceptions
- reference to,
finding, TravelAgentBean: The Bean Class
- stateless session beans
and, The home interface (ProcessPaymentHomeRemote)
- ejbHome
methods, Client_81a
- ejbHome( ) method, ejbHome( )
- ejbLoad( )
method, The Bean-Container Contract
- BMP entity beans
and, The ejbLoad( ) and ejbStore( ) Methods, The ejbLoad( ) and ejbStore( ) Methods
- Ready
state and, Life in the Ready State
- using, Using ejbLoad( ) and ejbStore( ) in Container-Managed Persistence
- EJBLocalHome
interface, The Local Home Interface, Local component interfaces
- EJBLocalObject
interface, The EJB object, The Local Interface, Relationship Fields
- container-managed relationships
and, Abstract Persistence Schema, Abstract programming model
- EJBMetaData
interface, Explicit narrowing using PortableRemoteObject, Bean metadata
- exercise, Exercise 5.2: The EJBObject, Handle, and Primary Key
- session beans
and, The home interface (ProcessPaymentHomeRemote)
- EJBObject
interface, EJB Objects and EJB Home, EJBObject, Handle, and Primary Key
- defining, EJBObject, Handle, and Primary Key
- exercise, Exercise 5.2: The EJBObject, Handle, and Primary Key
- HomeHandle object
and, The HomeHandle
- Java
RMI-IIOP
and, Java RMI return types, parameters, and exceptions
- ejbPassivate( )
method, ejbPassivate( ) and ejbActivate( ), Transitioning from the Ready state to the Pooled state via removal
- ejbRemove( ) method
and, ejbRemove( )
- instance swapping, The Activation Mechanism
- transitioning from Pooled state to Ready
state via, Transitioning from the Ready state to the Pooled state via passivation
- ejbPostCreate( )
method, The bean class, The callback methods, Creating and finding beans, ejbCreate( )
- CMP entity beans
and, The CustomerBean
- ejbCreate( ) method
versus, Abstract programming model
- ejbRemove( )
method, ejbRemove( ), Transitioning from the Ready state to the Pooled state via removal, MessageDrivenBean interface
- BMP entity beans
and, The ejbRemove( ) Method
- stateless session beans
and, Transitioning to the Method-Ready Pool
- EJBs (Enterprise
JavaBeans), Introduction, Naming conventions
- accessing from client
applications, Creating a Client Application
- activating, The Activation Mechanism
- alternatives
to, Alternatives to EJB, Others
- architecture
of, Architectural Overview, Summary
- assembling into
applications, Describing Bean Assembly
- asynchronous messaging
and, Asynchronous Messaging, Asynchronous Enterprise Messaging
- avoiding type
confusion, Don’t confuse EJB types
- background and development
of, Author’s Note
- classes and
interfaces, Classes and Interfaces, What about message-driven beans?
- co-located, The Local Client API
- containers
and, The Bean-Container Contract
- creating, Developing an Entity Bean
- deploying, Deploying a bean
- in
JBoss, Analyzing the effects of transactions and commit options
- describing, Describing Enterprise Beans
- designing (see designing
EJBs)
- developing
first, Developing Your First Enterprise Beans, Creating a Client Application
- finding, Locating Beans with JNDI
- home methods
and, Home methods
- identity, comparing
for, Comparing beans for identity
- interacting with other
beans, TravelAgentBean: The Bean Class
- interfaces and
exceptions, Design the exception hierarchy
- interoperability
and, Primary Services and Interoperability
- local interface
and, Classes and Interfaces, Local component interfaces
- MDBs and, Message-Driven Beans and J2eeCA 1.5, Message-Driven Beans
- nontransactional, Nontransactional Beans
- overview, The Enterprise Bean Component, Deploying a bean
- passivating, The Activation Mechanism
- returning data
from, Returning entity data from EJBs, Returning entity data from EJBs
- sequential
processing, Sequential processing with EJBs
- signing on to connection
factory, References to External Resources
- source code
for, Software and Versions
- Sun Microsystems’ definition
of, Enterprise JavaBeans Defined
- technologies addressed
by, Introduction
- transactional behavior
of, Declarative Transaction Management
- types, EJB Identification
- using, Using Enterprise Beans, Message-Driven Beans
- Version1.1, Software and Versions
- Version2.0, Software and Versions
- versus
JavaBeans, Component Models
- web components
and, Filling in the Gaps, Guaranteed Services
- when not to
use, When Not to Use EJBs
- when to
use, When to Use EJBs
- ejbSelect
methods, Exercise 8.1: Simple EJB QL Statements, Client_81a
- ejbSelect naming
convention, Select Methods
- ejbSelect(
) method, Select Methods
- ejbSelectAll( )
method, Select Methods
- ejbSelectByCity( )
method, The WHERE Clause and Input Parameters
- ejbSelectCustomer( )
method, Select Methods
- ejbSelectMostPopularCity( )
method, Select Methods
- ejbSelectZipCodes( )
method, Select Methods
- ejbStore( )
method, The Bean-Container Contract
- BMP entity beans
and, The ejbLoad( ) and ejbStore( ) Methods, The ejbLoad( ) and ejbStore( ) Methods
- Ready state
and, Life in the Ready State
- using, Using ejbLoad( ) and ejbStore( ) in Container-Managed Persistence
- ejbTimeout( )
method, Stateless Session Bean Timers
- elements
- first, EJB 2.1: Deployment descriptor
- root, EJB 2.1: Deployment descriptor
- Email-Message Driven
Bean (Email-MDB), J2EE Connectors 1.5 for EJB 2.1
- <enterprise-beans> element, EJB 2.1 and 2.0: Elements of the XML deployment descriptor, Session and Entity Beans, Session and Entity Beans, Environment Entries
- nesting inside <ejb-jar>
element, The Descriptor’s Body
- nesting inside <session> or <entity> elements, Session and Entity Beans
- remote references
and, Remote references
- encapsulation
- of business
logic into business
objects, Server-Side Components
- primary key
data and, Primary key
- stateful
session beans and, The Stateful Session Bean
- endpoint
interface, Generating JAX-RPC Stubs from WSDL, The Endpoint Interface
- defined, Generating JAX-RPC Stubs from WSDL
- stateless bean class
implementing, The Stateless Bean Class, The Stateless Bean Class
- WSDL
file used to
generate, WSDL file
- enterprise
APIs, J2EE Connector Architecture
- enterprise archive (.ear)
files, Filling in the Gaps
- Enterprise
Information Systems (EISs), J2EE Connector Architecture
- Enterprise Resource
Planning (ERP), Undefined Primary Keys in CMP
- entity beans, The Enterprise Bean Component, CMP: Entity Relationships
- (see also CMP,
entity beans)
- bean-managed persistence
and, Bean-Managed Persistence
- callback
methods, The Callback Methods, ejbHome( )
- cascade deletes
and, Cascade Delete and Remove
- composition
between, Identifying entity beans
- concurrency
and, Concurrency with session and entity beans
- container
relationship, The Entity-Container Contract, End of the Life Cycle
- creating, Developing an Entity Bean
- deploying, Deploying the Cabin EJB
- end of life
cycle, End of the Life Cycle
- getting
information from, Getting Information from an Entity Bean
- identifying, Identifying entity beans, Identifying entity beans
- interactions between exceptions and
transactions (synoptic table), Application exceptions
- JMS messages
and, Entity and Session Beans Should Not Receive Messages
- life
cycle of, The entity bean life cycle, The Life Cycle of an Entity Bean, End of the Life Cycle
- logical inheritance
and, Identifying entity beans
- newly
created, CMP: Basic Persistence
- primary keys
and, The Primary Key, Undefined Primary Keys in CMP
- read-only, Identifying entity beans
- Ready
state, The Ready State, Life in the Ready State
- transitioning from Pooled
state, Transitioning from the Pooled state to the Ready state via creation, Transitioning from the Ready state to the Pooled state via removal
- relationships (see relationships
between entity beans)
- removing, Removing beans
- states
of, The entity bean life cycle
- system
exceptions and, System exceptions
- timers, Entity Bean Timers, Entity Bean Timers
- serious
concern, Entity Bean Timers
- transactions, ejb-jar.xml (part II)
- types, EJB Details
- types of, CMP: Basic Persistence
- versus
MDBs, JMS-Based Message-Driven Beans
- versus session
beans, Modeling Taskflow with Session Beans, Session Beans
- entity
bloat, Entity Bean Timers
- entity
relationships
- exercises, Exercise 7.1: Entity Relationships in CMP 2.0, Part 1
- EntityBean
interface, The Bean-Container Contract
- callback methods
and, The bean class, The Callback Methods
- CMP entity beans
and, The CustomerBean
- EntityContext
interface, The Bean-Container Contract, EntityContext, EntityContext
- Enumeration
type
- EJB 2.0 and, The ejbFind( ) Methods
- environment
entries, Environment Entries
- environment properties,
accessing, Accessing environment properties (JNDI ENC)
- equality
semantics, The WHERE Clause and Equality Semantics
- equals( )
method, Compound Primary Keys
- versus isIdentical( )
method, Comparing beans for identity
- ERP
(Enterprise Resource Planning), Undefined Primary Keys in CMP
-
escape character, The WHERE Clause and LIKE
- escape
character (), The WHERE Clause and LIKE
- event logging, Guaranteed Services
- <exclude-list>
element, Exclude list
- example code for
exercises (see workbook,
exercises)
- example programs
- Client _2.java, Examine and Run the Client Applications
- Client _51b.java, Examine and Run the Client Applications
- Client _52b.java, Examine and Run the Client Applications
- Client_1.java, Examine and Run the Client Applications
- Client_111a, Client_111a
- Client_111b, Client_111b
- Client_112a, Client_112a
- Client_112b, Client_112b, Client_112b
- Client_112c, Client_112c, Client_112c
- Client_2.java, Client_1.java
- Client_3.java, Client_3.java, TravelAgentBean.java
- Client_51a.java, Examine and Run the Client Applications
- Client_52a.java, Examine and Run the Client Applications
- Client_52c.java, Examine and Run the Client Applications
- Client_53, Examine and Run the Client Applications
- Client_63, AddressBean.java
- Client_71a, Client_71a
- Client_71b, Client_71b
- Client_71c, Client_71c
- Client_72a, Client_72a
- Client_72b, Client_72b
- Client_72c, Client_72c
- Client_72d, Client_72d
- Client_72e, Client_72e
- Client_72f, Client_72f
- Client_73, Examine and Run the Client Applications
- Client_81a, Client_81a
- Client_81b, Client_81b
- Client_81c, Client_81c
- Client_82a, Client_82a
- Client_82b, Client_82b
- Client_82c, Client_82c
- Client_82d, Client_82d
- Client_82e, Client_82e
- Client_82f, Client_82f
- Client_82g, Client_82g
- Client_82h, Client_82h
- Client_82i, Client_82i
- Client_82j, Client_82j
- Client_82k, Client_82k
- Client_82m, Client_82m
- Client_82n, Client_82n
- Client_91.java, Client_91.java
- exceptions, Return types and parameters, Exceptions
- application versus
system, System Exceptions Versus Application Exceptions
- bean-managed
persistence and, Exception Handling
- checked, An application exception (PaymentException)
- container response
to, System exceptions
- designing
hierarchy, Design the exception hierarchy
- FinderException
and, Find Methods
- package-specific, Design the exception hierarchy
- runtime, Exception Handling
- standard, Application exceptions
- stateless session
beans and, The remote interface (ProcessPaymentRemote), The home interface (ProcessPaymentHomeRemote)
- summary
of interactions between (table), Application exceptions
- transactions
and, Exceptions and Transactions, Application exceptions
- unchecked, The Local Interface
- usage, An application exception (PaymentException)
- wrapping
subsystem, Wrap subsystem exceptions
- exclusive write
locks, Database Locks
- exercises
- arithmetic
operators in WHERE clauses, Exercise 8.2: Complex EJB QL Statements
- BMP
entity beans, Exercise 9.1: A BMP Entity Bean
- build.xml
files, Exercises Directory Structure
- Cabin
EJB, building, deploying, and
executing, Exercise 4.1: A Simple Entity Bean, Managing Entity Beans
- build.xml
file, Deconstructing build.xml, Deconstructing build.xml
- creating
JMS topic in JBoss, Create a New JMS Topic, Adding a JMS Topic through the JMX HTTP connector
- adding through configuration
file, Adding a JMS Topic through a configuration file
- adding through JMX HTTP
connector, Adding a JMS Topic through the JMX HTTP connector, Adding a JMS Topic through the JMX HTTP connector
- Customer
EJB, Exercise 6.1: Basic Persistence in CMP 2.0
- directory
structure, Exercises Directory Structure
- EJB
QL programming and functionality, Exercise 8.1: Simple EJB QL Statements, Advanced JBoss QL
- EJBMetaData
interface, Exercise 5.2: The EJBObject, Handle, and Primary Key
- EJBObject
interface, Exercise 5.2: The EJBObject, Handle, and Primary Key
- entity
bean relationships, Exercise 7.2:Entity Relationships in CMP 2.0, Part 2
- exposing
stateless session bean as web
service, Exercise 15.1: Web Services and EJB 2.1, Run the Client Application
- Handle
interface, Exercise 5.2: The EJBObject, Handle, and Primary Key
- home
interface, Exercise 5.1: The Remote Component Interfaces
- HomeHandle, Exercise 5.2: The EJBObject, Handle, and Primary Key
- JAX-RPC,
using client and server-side programming
model, Exercise 15.1: Web Services and EJB 2.1, Run the Client Application
- JBoss
CMP 2.0, Exercise 6.1: Basic Persistence in CMP 2.0
- dependent value
class, Exercise 6.2: Dependent Value Classes in CMP 2.0
- dynamic queries
in, JBoss Dynamic QL, Advanced JBoss QL
- entity
relationships, Exercise 7.1: Entity Relationships in CMP 2.0, Part 1
- JMS
queue
- adding through configuration
file, Adding a JMS queue through a configuration file
- adding through JMX HTTP
connector, Adding a JMS queue through the JMX HTTP connector
- local
interfaces, Exercise 5.3: The Local Component Interfaces
- logic
operators in WHERE clauses, Exercise 8.2: Complex EJB QL Statements
- MDBs, Exercise 12.2: The Message-Driven Bean, Run the Client Applications
- obtaining
metadata through EJB APIs, Exercise 5.1: The Remote Component Interfaces
- Ship
BMP bean, Exercise 9.1: A BMP Entity Bean
- stateful
session beans, Exercise 11.2: A Stateful Session Bean, Client_112c
- stateless
session beans, Exercise 11.1: A Stateless Session Bean
- Timer
Service, Exercise 13.1: EJB Timer Service
- TravelAgent
EJB, building, deploying, and
executing, Exercise 4.2: A Simple Session Bean
- using
JMS as a resource, Exercise 12.1: JMS as a Resource, Run the Client Applications
- web
services, Exercise 15.1: Web Services and EJB 2.1, Run the Client Application
- explicit
narrowing, Explicit narrowing using PortableRemoteObject
- explicit transaction
management, Declarative Transaction Management, Explicit Transaction Management, EJBContext Rollback Methods
- caution
with, Explicit Transaction Management
- Extensible
Markup Language, Deployment Descriptors and JAR Files
F
- fields
- persistence, Persistence Fields
- relationship, The Abstract Programming Model, Relationship Fields
- finalize( )
method, End of the Life Cycle
- find
methods, The callback methods, CMP: EJB QL
- bean-managed
persistence and, The ejbFind( ) Methods
- CMP entity beans
and, The Remote Home Interface
- custom, CMP: EJB QL
- multi-entity, Find Methods
- transaction
attributes and, Specifying a Bean’s Transaction Attributes
- findByCapacity( )
method, The ejbFind( ) Methods
- findByGoodCredit( )
method, Find Methods
- findByName( )
method, Find Methods
- query elements and, Declaring EJB QL
- findByPrimaryKey( )
method, The remote home interface, CabinHome: The Remote Home Interface, The callback methods, Creating a new Cabin EJB, CMP: EJB QL, Find Methods
- BMP entity beans
and, The ejbFind( ) Methods
- CMP entity beans
and, The Remote Home Interface
- FinderException
- query
methods and, Find Methods
- fine-grained
abstraction, Modeling Taskflow with Session Beans
- firewalls, e-commerce
and, Web Components and EJB
- foreign
keys, Relational database schema
- forms, requests
for, Servlets
- Forte IDE (Sun
Microsystems), Setting Up Your Java IDE
- FROM
clause, Simple Queries
- functional
expressions, Functional Expressions
- support for limited in
EJBQL, Limited Functions
- WHERE clause
and, Functional expressions in the WHERE clause
G
- get
methods, The bean class, Set and Get Methods
- BMP
and, Set and Get Methods
- get( ) method, Abstract Persistence Schema, Describing Relationships
- getCallerPrincipal( )
method, EJBContext, MessageDrivenContext
- getConnection( )
method, Obtaining a Resource Connection, The bean class (ProcessPaymentBean), jboss.xml
- getCustomers( ) method, Abstract programming model
- getEJBHome(
) method, Getting the EJBHome
- EJBContext interface
and, EJBContext
- EJBMetaData interface
and, Explicit narrowing using PortableRemoteObject
- HomeHandle interface
and, Explicit narrowing using PortableRemoteObject
- MDBs and, MessageDrivenContext
- getEJBLocalHome( )
method, The Local Interface
- EJBContext interface
and, EJBContext
- MDBs
and, MessageDrivenContext
- getEJBMetaData( )
method, Bean metadata
- getEJBObject( )
method, Explicit narrowing using PortableRemoteObject, The enterprise bean Handle
- BMP entity beans
and, The ejbFind( ) Methods
- getEnvironment( )
method
- replaced with JNDI
ENC, EJBContext
- getHandle( )
method, The enterprise bean Handle
- getHomeAddress( )
method, Relationship Fields
- getHomeHandle( )
method, The HomeHandle
- getId( ) method, The bean class
- getInitialContext( )
method, Creating a Client Application, Locating Beans with JNDI
- getName( )
method
- CMP entity beans
and, Dependent Value Classes
- getObject( )
method, The reservation message producer
- getPhoneNumbers( )
method, Abstract programming model
- getPrimaryKey( )
method, The Local Interface
- BMP entity beans
and, The ejbFind( ) Methods
- EJBObject interface
and, Primary key
- EntityContext interface
and, EntityContext
- stateless session beans
and, The remote interface (ProcessPaymentRemote)
- getPrimaryKeyClass( )
method, The home interface (ProcessPaymentHomeRemote)
- getRollbackOnly( )
method, EJBContext Rollback Methods
- getStatus( )
method, UserTransaction, Status
- getters, Set and Get Methods
- getUserTransaction( )
method, Transaction Propagation in Bean-Managed Transactions
- graphical deployment
wizards, Deploying the Cabin EJB
- graphical user
interfaces, Benefits of a Standard Server-Side Component Model
- greater than
(>), The WHERE Clause and CDATA Sections
- GROUP BY
clause, GROUP BY and HAVING
- GUIs (graphical user
interfaces)
- component models
and, Benefits of a Standard Server-Side Component Model
H
- Handle
interface, Explicit narrowing using PortableRemoteObject, The enterprise bean Handle
- Handles, The enterprise bean Handle
- exercise, Exercise 5.2: The EJBObject, Handle, and Primary Key
- Handle
interface and, Explicit narrowing using PortableRemoteObject, The enterprise bean Handle
- HomeHandle
interface and, Explicit narrowing using PortableRemoteObject, HomeHandle
- implementing, Inside the Handle
- removing enterprise
beans with, Removing beans
- serializing/deserializing, The enterprise bean Handle
- stateless session
beans and, The remote interface (ProcessPaymentRemote)
- versus primary
keys, The enterprise bean Handle
- hashCode( )
method, Compound Primary Keys
- HAVING
clause, GROUP BY and HAVING
- heavyweight
mapping file, The JAX-RPC Mapping File
- heuristic
decisions, Heuristic Decisions
- <home> element, EJB 2.1 and 2.0: Elements of the XML deployment descriptor
- nesting inside <session> or <entity> elements, Session and Entity Beans
- home interface, The home interface (ProcessPaymentHomeRemote)
- exercises, Exercise 5.1: The Remote Component Interfaces
- stateful
session beans and, The home interface (TravelAgentHomeRemote)
- stateless
session beans and, The home interface (ProcessPaymentHomeRemote)
- home
methods, Home methods, ejbHome( ), Initialize the Database
- custom, Client_81a
- HomeHandle
interface, Explicit narrowing using PortableRemoteObject, HomeHandle
- exercise, Exercise 5.2: The EJBObject, Handle, and Primary Key
- HomeHandle
object, The HomeHandle
- hot
deployment, Hot Deployment
- HTML versus
XML, XML Deployment Descriptors
- Hypersonic SQL, Database Configuration
I
- IBM
products
- JMS
and, JMS as a Resource
- MQSeries, Java Message Service
- VisualAge
IDE, Setting Up Your Java IDE
- WebSphere, Setting Up Your Java IDE
- icon elements, The Descriptor’s Body
- identity, Comparing beans for identity
- IDEs
(integrated development
environments), Deployment Descriptors and JAR Files
- vendors of, Setting Up Your Java IDE
- IDL (Interface
Definition Language), CORBA and, Distributed Objects
- IIOP
(Internet-Inter-Operability Protocol)
- firewalls
and, Web Components and EJB
- IllegalArgumentException, Abstract programming model
- IllegalStateException, Abstract programming model, EntityContext
- implementation independence, Introduction
- standard server-side component model
and, Benefits of a Standard Server-Side Component Model
- implicit transaction
management, Explicit Transaction Management
- using transaction attributes
and, Transaction Attributes
- IN operator, The IN Operator, Exercise 8.1: Simple EJB QL Statements
- WHERE clause
and, The WHERE Clause and IN
- IncompleteConversationalState
exception, Return types and parameters, The remote interface (TravelAgent)
- initial
context, Locating Beans with JNDI
- InitialContext
class
- client components
and, J2EE Application Client Components
- instance
of, Locating Beans with JNDI
- input
parameters
- LIKE operator
and, The WHERE Clause and LIKE
- WHERE clause
and, The WHERE Clause and Input Parameters
- instance
pooling, Instance Pooling, Message-driven beans and instance pooling
- MDBs
and, Message-driven beans and instance pooling
- stateful
session beans and, The Life Cycle of a Stateful Session Bean
- stateless session beans
and, The Life Cycle of a Stateless Session Bean
- strategies, The entity bean life cycle
- instance swapping, The entity bean life cycle, Instance swapping, Instance swapping
- stateful
session beans and, The Life Cycle of a Stateful Session Bean
- instance
variables, stateless session beans and, The Stateless Session Bean
- integrated
development environments, Deployment Descriptors and JAR Files
- interfaces
- component, Classes and Interfaces, What about message-driven beans?
- local versus
remote, Local versus remote interfaces
- recommendations, Local versus remote interfaces
- interoperability, Primary Services and Interoperability, SOAP and WSDL
- interprocess
components, Component Models
- intra-instance method
invocation, Reentrance
- intraprocess
components, Component Models
- IS EMPTY
operator, The WHERE Clause and IS EMPTY
- IS NULL comparison
operator, The WHERE Clause and IS NULL
- isCallerInRole( )
method, EJBContext, MessageDrivenContext, Security Roles
- isIdentical( )
method, Comparing beans for identity, The Local Interface
- isolation
conditions, Dirty, Repeatable, and Phantom Reads
- isolation levels,
controlling, Controlling isolation levels
- isolation of
transactions, ACID Transactions, Is the TravelAgent EJB Isolated?
- Iterator.remove( )
method, Abstract programming model
J
- J2EE (Java 2 Enterprise
Edition), Deploying the Cabin EJB, J2EE, Fitting the Pieces Together
- application client
component, J2EE Application Client Components
- components and JNDI
properties, Creating a Client Application
- guaranteed services
and, Guaranteed Services, Guaranteed Services
- SDK server, Deploying the Cabin EJB
- servlets, Servlets, Servlets
- web
services, EJB 2.1 and Web Services
- J2EE Connector
Architecture, J2EE Connector Architecture
- J2EE Connector Architecture (J2EE
Connectors), Resource Management
- J2EE
Connector Architecture 1.0, J2EE Connectors 1.0 for EJB 2.0 and 2.1
- J2EE Connector
Architecture 1.5, J2EE Connectors 1.5 for EJB 2.1
- J2EE
Deployment API, Guaranteed Services
- J2EE
Management API, Guaranteed Services
- <jaxrpc-mapping-file>
element, The <service-ref> Deployment Element
- JAF (Java Activation
Framework), J2EE support for, Guaranteed Services
- JAR
files, Deployment Descriptors and JAR Files
- cabin.jar
and, cabin.jar: The JAR File
- CMP entity beans
and, The EJB JAR File
- deploying
multiple enterprise beans
in, Describing Enterprise Beans
- ejb-jar file
and, The ejb-jar File
- entity beans
and, Deploying the Cabin EJB
- session beans
and, Deploying the TravelAgent EJB
- zipping/unzipping, cabin.jar: The JAR File
- jar
utility, cabin.jar: The JAR File, The ejb-jar File
- Java, What Is Enterprise JavaBeans?, Server-Side Components
- platform
independence and, Introduction
- Java archive
files, Deployment Descriptors and JAR Files
- Java Data Objects
(JDO), Java Data Objects, Java Data Objects
- Java Database
Connectivity, The bean class (ProcessPaymentBean)
- Java IDEs, Setting Up Your Java IDE
- Java
Message Service, Java Message Service
- Java RMI-IIOP, The remote interface, Java RMI-IIOP
- programming
model for, Java RMI return types, parameters, and exceptions
- Java Transaction
Service (JTS), Declarative Transaction Management, Explicit Transaction Management
- API, What Is Enterprise JavaBeans?
- java.rmi.RemoteException, The Remote Interface
- java.util.Timer
class, Timer Service
- JavaBeans versus
EJB, Component Models
- JavaMail Message
object, Connector-Based Message-Driven Beans
- JavaServer Pages (JSP), J2EE, JavaServer Pages
- JAX-RPC (Java API for XML-based
RPC), EJB 2.1: Web Service Standards
- accessing web services
with, Accessing Web Services with JAX-RPC, The JAX-RPC Mapping File
- endpoint
interface, The Endpoint Interface
- generating stubs
from WSDL, Generating JAX-RPC Stubs from WSDL, Generating JAX-RPC Stubs from WSDL
- mapping file, The JAX-RPC Mapping File, The JAX-RPC Mapping File, JAX-RPC mapping file
- heavyweight, The JAX-RPC Mapping File
- WSDL
document required attributes for
package-only, The JAX-RPC Mapping File
- nillable
types, Generating JAX-RPC Stubs from WSDL
- SOAP
and, Now You See It, Now You Don’t
- specification mappings between XML Schema
built-in types and Java, Generating JAX-RPC Stubs from WSDL
- stubs in a transactional
environment, Using JAX-RPC Generated Stubs
- using client and server-side
programming model, Exercise 15.1: Web Services and EJB 2.1, Run the Client Application
- using generated
stubs, Using JAX-RPC Generated Stubs, The <service-ref> Deployment Element
- JAXR (Java API for XML
Registries), EJB 2.1: Web Service Standards
- JBoss
- application
server, Microkernel Architecture
- installing, Installing JBoss Application Server, Deployment in JBoss
- binaries,
downloading, Installing JBoss Application Server
- bootstrap
code, Net Boot
- configuration
files, JBoss Configuration Files
- deployment, Deployment in JBoss
- detached
invokers, Detached Invokers
- directory
structure, Discovering the JBoss Directory Structure
- EJBs
deployed in, Analyzing the effects of transactions and commit options
- hot
deployment, Hot Deployment
- internal
structure, A Quick Look at JBoss Internals, Detached Invokers
- invokers, Detached Invokers
- micro-kernel
architecture, Microkernel Architecture
- more
information, Online Resources
- net
boot, Net Boot
- overview, About JBoss
- services, About JBoss
- WebOS, Microkernel Architecture
- workbook (see workbook)
- JBoss CMP
2.0
- cascade deletes
exercise, Exercise 7.3: Cascade Deletes in CMP 2.0
- dynamic queries
in, JBoss Dynamic QL, Advanced JBoss QL
- exercises, Exercise 6.1: Basic Persistence in CMP 2.0
- primary-key
generation, AddressBean.java
- JBoss Server
Spine, Microkernel Architecture
- JBoss-specific deployment
descriptor
- options, Examine the JBoss-Specific Files
- jboss.xml-specific
deployment descriptor, Examine the JBoss-Specific Files
- JBossMQ message invocation layers, JmsClient_1.java
- JBuilder IDE
(Borland), Setting Up Your Java IDE
- JDBC (Java Database
Connectivity), What Is Enterprise JavaBeans?
- as alternative to
EJB, JDBC
- JAR
file, Basic Setup
- obtaining connection
to, The bean class (ProcessPaymentBean)
- JMS (Java Message
Service), What Is Enterprise JavaBeans?, Java Message Service
- acknowledgment, Acknowledge mode
- advantages of, JMS Is Asynchronous, JMS Is Asynchronous
- application
client, JMS Application Client
- as a
resource, JMS as a Resource, XML deployment descriptor
- exercises, Exercise 12.1: JMS as a Resource, Run the Client Applications
- client application
for, JMS Application Client
- connection
factory, TopicConnectionFactory and Topic
- connection to a message
router, TopicConnectionFactory and Topic
- declaing a resource in EJB
2.0, EJB 2.0: Declaring a JMS Resource
- declaring a resource in EJB
2.1, EJB 2.1: Declaring a JMS Resource
- MDBs
and, JMS and Message-Driven Beans, Learning More About JMS
- messaging
models, JMS Messaging Models, Which messaging model should you use?
- providers, JMS as a Resource
- connecting
to, TopicConnectionFactory and Topic
- setting a MessageFormat property on a
Message producer, Message selector
- Unified API, EJB 2.1: The Unified JMS API
- JMS
queue
- adding through configuration
file, Adding a JMS queue through a configuration file
- adding through JMX HTTP
connector, Adding a JMS queue through the JMX HTTP connector
- JMS
topic in JBoss, exercises, Create a New JMS Topic, Adding a JMS Topic through the JMX HTTP connector
- adding through configuration
file, Adding a JMS Topic through a configuration file
- adding through JMX HTTP
connector, Adding a JMS Topic through the JMX HTTP connector, Adding a JMS Topic through the JMX HTTP connector
- JMS-based MDBs, Message-driven beans and instance pooling, JMS-Based Message-Driven Beans, The ticket message consumer
- limitations, Connector-Based Message-Driven Beans
- message
design, Identifying message-driven beans
- timers, Message-Driven Bean Timers
- JmsClient_1.java, JmsClient_1.java
- JmsClient_ReservationProducer, The reservation message producer
- JmsClient_ReservationProducer.java, JmsClient_ReservationProducer.java
- JmsClient_TicketConsumer, The ticket message consumer
- JmsClient_TicketConsumer.java, JmsClient_TicketConsumer.java
- JMSReplyTo
attribute, Sending messages from a message-driven bean
- <jndi-name>
element, jboss.xml, titandb-ds.xml
- JNDI (Java Naming and Directory
Interface), What Is Enterprise JavaBeans?
- authentication
and, Security
- features, Locating Beans with JNDI
- lookups, Locating Beans with JNDI
- naming
service and, Naming
- overview, Locating Beans with JNDI
- properties, Creating a Client Application
- JNDI
ENC, The Bean-Container Contract, TravelAgentBean: The Bean Class, Obtaining a Resource Connection, JNDI ENC, The Stateless Session Bean
- getEnvironment( ) method
and, EJBContext
- MDBs
and, MessageDrivenContext, Subscription durability
- stateful session beans
and, JNDI ENC and EJB references
- stateless session
beans and, Accessing environment properties (JNDI ENC)
- TravelAgent EJB
and, TopicConnectionFactory and Topic
- job-scheduling
systems (see Timer Service)
- JSP (see JavaServer
Pages)
- JTA (Java Transaction
API), What Is Enterprise JavaBeans?
- explicit transaction management
and, Transaction Scope, Explicit Transaction Management
- JTS (Java Transaction
Service), Explicit Transaction Management
L
- <large-icon> element, The Descriptor’s Body
- legacy persistence, Legacy persistence
- LENGTH string function, Functional expressions in the WHERE clause
- less than (<), The WHERE Clause and CDATA Sections
- LIKE comparison
operator, The WHERE Clause and LIKE
- listAvailableCabins( )
method, Listing behavior (listAvailableCabins( ))
- listCabins( ) method (TravelAgent
EJB), Client_3.java
- listing
behavior, Listing behavior (listAvailableCabins( ))
- literals, The WHERE Clause and Literals
- <local-home> element, Session and Entity Beans
- nesting inside <session> or <entity> elements, Session and Entity Beans
- Local Client
API, The Local Client API, Are Local Component Interfaces Necessary?
- uses for, Are Local Component Interfaces Necessary?
- using, Using the Local Client API
- local home
interface, Classes and Interfaces, The Local Home Interface
- local interfaces, Classes and Interfaces, The Remote Client API
- exercise, Exercise 5.3: The Local Component Interfaces
- stateless session beans
and, Local component interfaces
- local
references, Local references
- LOCATE string function, Functional expressions in the WHERE clause
- location
transparency, J2EE Application Client Components
- logic operators in WHERE
clauses, Exercise 8.2: Complex EJB QL Statements
- logical inheritance and entity
beans, Identifying entity beans
- logical operators, The WHERE Clause and Operator Precedence
- WHERE clause
and, The WHERE Clause and Logical Operators
- lookup APIs, Naming
- lookup( )
method, Explicit narrowing using PortableRemoteObject
- loopbacks, Reentrance
M
- main( )
method, Removing beans
- makeDbTable( )
home method, Initialize the Database
- managed
objects, Competing Component Models: Microsoft’s .NET Framework
- Mandatory
transaction attribute, Transaction attributes defined, EJB endpoints and transaction attributes
- mandatory,
declaring transaction attributes of endpoint methods
as, ejb-jar.xml file
- many-to-many bidirectional
relationship, Exercise 7.2:Entity Relationships in CMP 2.0, Part 2
- many-to-many unidirectional
relationship, Exercise 7.2:Entity Relationships in CMP 2.0, Part 2
- many-to-many, bidirectional
relationship, Many-to-Many, Bidirectional Relationship
- many-to-many, unidirectional
relationship, Many-to-Many, Unidirectional Relationship
- many-to-one unidirectional
relationship, Exercise 7.2:Entity Relationships in CMP 2.0, Part 2
- many-to-one, unidirectional
relationship, Many-to-One, Unidirectional Relationship, Abstract persistence schema
- MapMessage, Message types, The reservation message producer, Identifying message-driven beans
- mapping logical roles to user
group, Role-driven access control
- MAX( )
function, MAX( path expression), MIN( path expression)
- MDBs (message-driven
bean)
- exercise, Exercise 12.2: The Message-Driven Bean, Run the Client Applications
- MDBs (message-driven
beans), Message-Driven Beans and J2eeCA 1.5, The Enterprise Bean Component, Message-Driven Beans, EJB 2.1: Message Linking
- accessing EJB
with, Message-Driven Beans
- asynchronous messages
and, Identifying message-driven beans
- concurrency
and, Concurrency with message-driven beans
- Connector-based, Connector-Based Message-Driven Beans, Connector-Based Message-Driven Beans
- container
and, The Bean-Container Contract
- conversational state
and, Message-Driven Beans
- deployment
descriptors
- EJB
2.0, EJB 2.0: Deployment descriptor for MDBs, Message selector
- EJB 2.1, EJB 2.1: Deployment descriptor for MDBs, EJB 2.1: Deployment descriptor for MDBs
- deployment descriptors
and, XML Deployment Descriptor, Subscription durability
- Does Not Exist
state, Does Not Exist
- explicit transaction management
and, Explicit Transaction Management
- identifying, Identifying message-driven beans, Identifying message-driven beans
- instance pooling
and, Message-driven beans and instance pooling
- JMS and, JMS and Message-Driven Beans, Learning More About JMS
- JMS-based, JMS-Based Message-Driven Beans, The ticket message consumer, Identifying message-driven beans
- limitations, Connector-Based Message-Driven Beans
- life cycle
of, The Life Cycle of a Message-Driven Bean, Transitioning Out of the Method-Ready Pool: The Death of an MDB Instance
- limitations in EJB
2.0, Connector-Based Message-Driven Beans
- message
interface, What about message-driven beans?
- message
selectors, Message selector
- Method-Ready
Pool, The Method-Ready Pool
- transitioning out
of, Transitioning Out of the Method-Ready Pool: The Death of an MDB Instance
- naming, Identifying message-driven beans
- reentrance
and, Reentrance
- sending messages
from, Sending messages from a message-driven bean
- timers, Message-Driven Bean Timers, Other problems with Timer API
- configuring at
deployment, Message-Driven Bean Timers
- initializing, Message-Driven Bean Timers
- standard
configuration properties, Message-driven bean timers: Standard configuration properties
- transaction attributes
and, Message-driven beans and transaction attributes
- transaction
methods, MessageDrivenContext
- versus entity and session
beans, JMS-Based Message-Driven Beans
- <method-name>
element, Find Methods, EJB 2.1: Declaring a JMS Resource, EJB 2.1: <messaging-type>, EJB 2.1: <message-destination-type>, EJB 2.1: Message Linking, The <portType> and <message> Elements, The <portType> and <message> Elements, Message-Driven Beans, EJB 2.0 elements, EJB 2.1 elements, EJB 2.0 elements, Specifying a Bean’s Transaction Attributes, Assigning roles to methods, Identifying Specific Methods, Specific method declarations
- nesting inside <assembly-descriptor> element, Describing Bean Assembly
- nesting inside <session> or <entity> elements, Session and Entity Beans
- medical systems
transactions, ACID Transactions
- MEMBER OF
operator, The WHERE Clause and MEMBER OF
- message
brokers, JMS as a Resource
- message
linking, EJB 2.1: Message Linking, EJB 2.1: Message Linking
- message
selectors, Message selector
- message
types, Identifying message-driven beans
- message types
(JMS), Message types
- message-driven
beans (see MDBs)
- MessageDrivenBean
interface, The Bean-Container Contract, MessageDrivenBean interface
- MessageDrivenContext, MessageDrivenContext
- MessageDrivenContext
interface, The Bean-Container Contract, MessageDrivenBean interface, Transitioning to the Method-Ready Pool
- MessageListener
interface, JMS Application Client, MessageListener interface
- messages,
consuming, EJB 2.1: Message Linking
- messageSelector property (<activation-config> element), EJB 2.1 elements
- messaging
- asynchronous (see asynchronous
messaging)
- domains, JMS Messaging Models
- sending
messages from MDBs, Sending messages from a message-driven bean
- store-and-forward, Subscription durability
- META-INF
directory, cabin.jar: The JAR File, The ejb-jar File
- metadata, Bean metadata
- obtaining
(exercises), Exercise 5.1: The Remote Component Interfaces
- session beans
and, The home interface (ProcessPaymentHomeRemote)
- method arguments, The WHERE Clause and Input Parameters
- method overloading, Java RMI-IIOP type restrictions
- method permissions,
specifying, Specifying Security Roles and Method Permissions
- Method-Ready
Pool
- MDBs and, The Life Cycle of a Message-Driven Bean
- stateless session beans
and, The Life Cycle of a Stateless Session Bean, The Method-Ready Pool, Transitioning out of the Method-Ready Pool: The death of a stateless bean instance
- transitioning out
of, Transitioning Out of the Method-Ready Pool: The Death of an MDB Instance
- Method-Ready
state, The Transactional Method-Ready State
- stateful session beans
and, Method-Ready State
- methods
- accessor, Abstract Persistence Schema
- business, Classes and Interfaces
- life-cycle, Classes and Interfaces, The Local Home Interface
- select, CMP: EJB QL
- specifying, Identifying Specific Methods
- unchecked, Unchecked methods, Unchecked methods
- Microsoft products
- .NET
Framework, Competing Component Models: Microsoft’s .NET Framework
- CTMs
and, Competing Component Models: Microsoft’s .NET Framework
- MTS, Competing Component Models: Microsoft’s .NET Framework
- Microsoft Transaction Server
(MTS), Competing Component Models: Microsoft’s .NET Framework
- MIN( )
function, MAX( path expression), MIN( path expression)
- MOD arithmetic function, Functional expressions in the WHERE clause
- MOM (message-oriented
middleware)
- for asynchronous
messaging, Asynchronous Messaging
- MQSeries
(IBM), Java Message Service
- JMS
and, JMS as a Resource
- MTS (Microsoft
Transaction
Server), Competing Component Models: Microsoft’s .NET Framework
- <multiplicity>
element, Describing Relationships
- multi-entity find
methods, Find Methods
- multi-entity
select methods, Select Methods
- multiple-bean
deployment, Describing Enterprise Beans
- multiplicity, Abstract Persistence Schema, One-to-Many, Unidirectional Relationship, Abstract programming model
- class diagram
depicting, EJB QL Examples
N
- named declarations, Named method declarations
- naming (primary service), Naming, Locating Beans with JNDI
- naming
conventions
- accessor methods
and, Set and Get Methods
- ejbSelect
and, Select Methods
- for suffixes used with create method
names, Creating and finding beans
- narrow( )
method, Explicit narrowing using PortableRemoteObject
- navigation
operator, The WHERE Clause and Operator Precedence
- .NET Framework
(Microsoft), Competing Component Models: Microsoft’s .NET Framework
- network communication
layer, Distributed Object Architectures
- network connections, reducing with session
beans, Modeling Taskflow with Session Beans
- network traffic, reducing with session
beans, Modeling Taskflow with Session Beans
- Never
transaction attribute, Transaction attributes defined
- newInstance( )
method, The Pooled State
- MDBs and, Transitioning to the Method-Ready Pool
- no state (entity beans), The entity bean life cycle
- no-argument
constructor, Compound Primary Keys
- NonDurable
value, EJB 2.1 elements, EJB 2.0 elements
- NonDurable value
(subscription), Subscription durability
- nonreentrance, Reentrance
- nonrepeatable
reads, Repeatable reads
- nontransactional enterprise
beans, Nontransactional Beans
- NOT
operator, The WHERE Clause and Logical Operators
- notifications, The bean class
- NotSupported
transaction
attribute, Transaction attributes defined, Nontransactional Beans
O
- object
bindings, Naming
- Object
class, Comparing beans for identity
- object database
persistence, Object database persistence
- object
ID (OID), Primary key
- object serialization
- bean
instance activation and, Passivated State
- Handles
and, The enterprise bean Handle
- Object Transaction Service
(OTS), Declarative Transaction Management, Explicit Transaction Management
- Object type, primary
keys and, Undefined Primary Keys in CMP
- OBJECT( )
operator, Simple Queries, The IN Operator, The OBJECT( ) Operator
- object-oriented
databases, persistence and, Object database persistence
- object-oriented programming
languages, Server-Side Components
- object-to-relational
database mapping wizards, Object-to-relational persistence
- object-to-relational
persistence, Object-to-relational persistence
- ObjectMessage, Message types
- ObjectMessage
message type, Identifying message-driven beans
- ObjectNotFoundException, The ejbFind( ) Methods
- find
methods and, Find Methods
- OID (object
ID), Primary key
- one-to-many bidirectional
relationship, Exercise 7.2:Entity Relationships in CMP 2.0, Part 2
- one-to-many, bidirectional
relationship, One-to-Many, Bidirectional Relationship
- one-to-many, unidirectional
relationship, One-to-Many, Unidirectional Relationship, The Cruise, Ship, and Reservation EJBs
- one-to-one, bidirectional
relationship, One-to-One, Bidirectional Relationship, Abstract persistence schema
- one-to-one,
unidirectional relationship, One-to-One, Unidirectional Relationship
- online book order
transactions, ACID Transactions
- onMessage( )
method, JMS Application Client, The ReservationProcessorBean Class, MessageListener interface, Connector-Based Message-Driven Beans
- business-to-business applications
and, Taskflow and integration for B2B (onMessage( ) )
- open
connections, Transitioning to the Method-Ready Pool
- operator
precedence, WHERE clause
and, The WHERE Clause and Operator Precedence
- optimizations, BMP
code, Possible optimizations
- OR
operator, The WHERE Clause and Logical Operators
- ORDER BY
clause, EJB 2.1: The ORDER BY Clause, EJB 2.1: The ORDER BY Clause
- CMP fields
in, EJB 2.1: The ORDER BY Clause
- OTS (Object
Transaction Service), Explicit Transaction Management
- overloaded
constructor, Compound Primary Keys
- overloaded
methods, Named method declarations
P
- parameters, Return types and parameters
- passing by reference, When to Use Local Component Interfaces
- Passivated
state
- stateful session beans
and, Passivated State
- passivating enterprise
beans, The Activation Mechanism, Transitioning from the Pooled state to the Ready state via activation
- ejbPassivate( ) method
and, ejbPassivate( ) and ejbActivate( )
- paths, simple queries
with, Simple Queries with Paths, Simple Queries with Paths
- PAYMENT
table, The database table (PAYMENT)
- <persistence-type>
element, EJB 2.1 and 2.0: Elements of the XML deployment descriptor, The XML Deployment Descriptor
- nesting inside <entity> element, Session and Entity Beans
- percent
(%), The WHERE Clause and LIKE
- performance, When Not to Use EJBs
- across
methods, Transaction Propagation in Bean-Managed Transactions
- balancing against
consistency, Balancing Performance Against Consistency
- improving
with session beans, Modeling Taskflow with Session Beans
- persistence, Persistence, Container-managed versus bean-managed persistence
- abstract
schema, Abstract Persistence Schema
- bean-managed (see BMP)
- classes, Container Tools and Persistence
- container-managed (see CMP)
- enterprise beans
and, The Enterprise Bean Component
- entity beans
and, CMP: Basic Persistence
- fields, Persistence Fields
- instances, Container Tools and Persistence
- stateful
session beans and, The Stateful Session Bean
- phantom
reads, Dirty, Repeatable, and Phantom Reads, Phantom reads
- phantom
records, Phantom reads
- Phone EJB (sample entity
bean), Relational database schema
- platform
independence, Introduction
- web services
and, Web Services
- <portType> element
(WSDL), The <portType> and <message> Elements, The <portType> and <message> Elements
- point-to-point (p2p) messaging
model, Point-to-point
- pointers, Relational database schema
- Pooled state of entity
beans, The entity bean life cycle, The Pooled State
- transitioning to Ready
state, Transitioning from the Pooled state to the Ready state via creation, Transitioning from the Ready state to the Pooled state via removal
- portability, Introduction
- PortableRemoteObject
class, Explicit narrowing using PortableRemoteObject
- narrow( ) method, Creating a Client Application
- <prim-key-class> element, EJB 2.1 and 2.0: Elements of the XML deployment descriptor, The XML Deployment Descriptor, Compound Primary Keys
- nesting inside <entity> element, Session and Entity Beans
- Pramati Application
Server, Locating Beans with JNDI
- mapping wizard
for, Object-to-relational persistence
- primary keys, Classes and Interfaces, The primary key, Primary key
- BMP and, The Primary Key
- compound, The XML Deployment Descriptor, Compound Primary Keys, Compound Primary Keys
- container-managed persistence
and, The XML Deployment Descriptor
- containers, The callback methods
- deferring
defining, Deferring primary key definition
- entity beans and, The Primary Key, Undefined Primary Keys in CMP
- generating in JBoss CMP
2.0, AddressBean.java
- mapping to
autogenerated fields, Relationship Fields
- MDBs
and, What about message-driven beans?
- modifying
fields, Compound Primary Keys
- removing enterprise beans
with, Removing beans
- serializing/deserializing, Primary key
- session beans
and, What about session beans?
- single-field, The XML Deployment Descriptor, Single-Field Primary Keys
- specifying, Specifying Primary Keys, Deferring primary key definition
- stateless session beans
and, The remote interface (ProcessPaymentRemote)
- types of, The Primary Key
- undefined, Undefined Primary Keys in CMP
- validity, Primary key
- versus Handles, The enterprise bean Handle
- primary services, Primary Services, SOAP and WSDL
- supported by
EJB servers, Resource Management and the Primary Services
- primitive data
types, Single-Field Primary Keys
- primitive wrappers, The Primary Key, Single-Field Primary Keys, Specifying Primary Keys
- Principal
object, Role-driven access control
- tracking
client identity
with, EJBContext
- process( )
method, The bean class (ProcessPaymentBean)
- ProcessPayment EJB
- remote
interface, Initialize the Database
- ProcessPayment EJB (sample session
bean), The ProcessPayment EJB, Local component interfaces, The ReservationProcessor EJB
- ProcessPayment standard deployment
descriptor, Examine the EJB Standard Deployment Descriptor
- ProcessPaymentBean.java, ProcessPaymentBean.java, ProcessPaymentBean.java
- ProcessPaymentEJB
stateless session bean, Exercise 11.1: A Stateless Session Bean
- ProcessPaymentRemote.java, ProcessPaymentRemote.java
- producers, JMS as a Resource
- Progress SonicMQ messaging
product, Java Message Service
- properties, Cabin: The Remote Interface
- JNDI, Creating a Client Application
- publish-and-subscribe (pub/sub) messaging
model, Publish-and-subscribe
Q
- <query>
elements, Find Methods, Declaring EJB QL Elements, Declaring EJB QL Elements
- nesting inside <entity> elements, Session and Entity Beans
- queries, CMP: EJB QL
- dynamic, Dynamic Queries
- EJB
QL and, weaknesses of, Problems with EJB QL
- simple, Simple Queries
- with
paths, Simple Queries with Paths, Simple Queries with Paths
- subqueries, Subqueries
- query methods, CMP: EJB QL, The Query Methods, Find Methods
- arguments
and, The WHERE Clause and Input Parameters
- transitioning from Pooled state to Ready
state via, Transitioning from the Pooled state to the Ready state via a query method
- QueryListener (Titan
application), Identifying message-driven beans
- QueueReceiver
- message
consumer, Entity and Session Beans Should Not Receive Messages
- receive(
) method, Entity and Session Beans Should Not Receive Messages
- queues, JMS Is Asynchronous, Point-to-point
R
- <remote> element, EJB 2.1 and 2.0: Elements of the XML deployment descriptor, The XML Deployment Descriptor, Abstract Persistence Schema, Select Methods, Obtaining a Resource Connection, EJB 2.1: Declaring a JMS Resource, EJB 2.0: Declaring a JMS Resource, References to External Resources, Additional administered objects, Declaring EJB QL Elements, Describing Relationships, Describing Relationships, jboss.xml
- external references
and, References to External Resources, Shareable resources
- nesting inside <ejb-jar>
element, The Descriptor’s Body
- nesting inside <entity> element, Session and Entity Beans
- nesting inside <session> or <entity> elements, Session and Entity Beans
- Read Committed isolation
level, Transaction Isolation Levels
- read locks, Database Locks
- Read Uncommitted isolation
level, Transaction Isolation Levels
- performance and, Balancing Performance Against Consistency
- read-only
entities, Identifying entity beans
- ready state (entity
beans), The entity bean life cycle
- Ready state of entity
beans, The Ready State, Life in the Ready State
- transitioning from Pooled
state, Transitioning from the Pooled state to the Ready state via creation, Transitioning from the Ready state to the Pooled state via removal
- receive methods, Entity and Session Beans Should Not Receive Messages
- receiveNoWait( )
method, Entity and Session Beans Should Not Receive Messages
- reentrance, Reentrance
- reentrance and
MDBs, Reentrance
- references, Session and Entity Beans
- local, Local references
- remote, Remote references
- to EJB home
interface, finding, TravelAgentBean: The Bean Class
- to enterprise
beans, References to Other Beans
- to external
resources, References to External Resources
- relational
databases, Introduction
- CustomerEJB
and, The Customer Table
- object-to-relational persistence
and, Object-to-relational persistence
- relationship fields, The Abstract Programming Model, Relationship Fields
- relationship
name, Abstract Persistence Schema
- relationships, Describing Relationships, Describing Relationships
- IS EMPTY
operator and, The WHERE Clause and IS EMPTY
- MEMBER OF
operator and, The WHERE Clause and MEMBER OF
- paths
and, Simple Queries with Paths
- relationships between entity
beans, CMP: Entity Relationships, Cascade Delete and Remove
- exercises, Exercise 7.2:Entity Relationships in CMP 2.0, Part 2
- types of
- many-to-many,
bidirectional, Many-to-Many, Bidirectional Relationship
- many-to-many,
unidirectional, Many-to-Many, Unidirectional Relationship
- many-to-one,
unidirectional, Many-to-One, Unidirectional Relationship, Abstract persistence schema
- one-to-many,
bidirectional, One-to-Many, Bidirectional Relationship
- one-to-many,
unidirectional, One-to-Many, Unidirectional Relationship, The Cruise, Ship, and Reservation EJBs
- one-to-one,
bidirectional, One-to-One, Bidirectional Relationship, Abstract persistence schema
- Remote Client
API, The Remote Client API, Inside the Handle
- remote home
interface, Classes and Interfaces, The remote home interface, Java RMI-IIOP, The Remote Home Interface
- BMP and, The Remote Home Interface
- CMP
entity beans and, The Remote Home Interface
- for
entity beans, CabinHome: The Remote Home Interface
- for
session beans, TravelAgentHomeRemote: The Remote Home Interface
- Remote
interface, Java RMI return types, parameters, and exceptions
- remote interfaces, Classes and Interfaces, The remote interface, Java RMI-IIOP, The Remote Interface
- BMP entity beans
and, The Remote Interface
- CMP entity beans
and, The Remote Interface
- defining, The remote interface
- for entity
beans, Cabin: The Remote Interface
- for session
beans, TravelAgentRemote: The Remote Interface
- restrictions
on, Java RMI-IIOP type restrictions
- stateful
session beans and, The remote interface (TravelAgent)
- stateless
session beans
and, The remote interface (ProcessPaymentRemote)
- remote
interfacess
- using as parameters of other EJB
methods, ProcessPaymentRemote.java
- remote
references, Return types and parameters, Remote references
- comparing, Comparing beans for identity
- explicit
narrowing of, Explicit narrowing using PortableRemoteObject
- Handles,
obtaining through, The remote interface (ProcessPaymentRemote)
- remote types, Return types and parameters
- RemoteException, Return types and parameters, The Remote Interface, An application exception (PaymentException)
- callback
methods and, Exception Handling
- stateless
session beans
and, The remote interface (ProcessPaymentRemote)
- remove( )
method
- EJBHome interface
and, Removing beans
- EJBObject interface
and, Removing beans
- transaction
attributes and, Specifying a Bean’s Transaction Attributes
- RemoveException
- remove(
) method and, Removing beans
- removePhoneNumber( )
method, Abstract programming model
- removing
- enterprise
beans, The entity bean life cycle, Removing beans
- session
beans, Removing beans
- Repeatable Read isolation
level, Transaction Isolation Levels
- repeatable
reads, Dirty, Repeatable, and Phantom Reads, Repeatable reads
- Required
transaction
attribute, Transaction attributes defined
- RequiresNew
transaction
attribute, Transaction attributes defined
- Reservation EJB
(sample entity bean), The Cruise, Ship, and Reservation EJBs
- created by ReservationProcessor
EJB, The ReservationProcessor EJB
- queries
and, EJB QL Examples
- reasons for
using, Why use a Reservation entity bean?
- Reservation XSD, XML Schema
- ReservationListener (Titan
application), Identifying message-driven beans
- ReservationProcessor EJB (sample
MDB), The ReservationProcessor EJB
- client applications
for, The ReservationProcessor Clients
- ReservationProcessor
MDB, Examine the EJB Standard Files
- ReservationProcessorBean
class, The ReservationProcessorBean Class, Sending messages from a message-driven bean
- resource connections,
managing, Resource Management
- resource factories,
obtaining, Obtaining a Resource Connection
- resource
management, Resource Management, Message-driven beans and instance pooling
- resource-management
facilities, Resource Management and the Primary Services, What’s Next?
- resources for further
reading
- distributed
computing, Who Should Read This Book?
- Enterprise JavaBeans
specification, Enterprise JavaBeans Defined
- Java Message
Service, Learning More About JMS
- JavaServer
Pages, JavaServer Pages
- JNDI, Locating Beans with JNDI
- servlets, Servlets
- XML, Role-driven access control, XML Deployment Descriptors
- resources, sharing, Shareable resources
- responsibilities,
grouping of, Identifying session beans
- return
types, Return types and parameters
- RMI loop, Distributed Object Architectures
- RMI over
IIOP, Creating a Client Application
- RMI
protocols, Distributed Object Architectures
- role
names, Role-driven access control
- role-driven
access control, Role-driven access control, Role-driven access control
- roles, Security
- RollbackException, UserTransaction
- rollbacks, Transaction Scope, Transaction Propagation
- BMTs
and, Message-driven beans and bean-managed transactions
- database updates
and, Heuristic Decisions
- EJBContext
interface and, EJBContext Rollback Methods
- exceptions
and, Exceptions and Transactions
- transactional
stateful beans and, Transactional Stateful Session Beans
- root element ( ), EJB 2.1 and 2.0: Defining the XML elements
- runAs
security identity, The runAs security identity, The runAs security identity, The runAs security identity
- runtime
behaviors
- customizing
with deployment
descriptors, Deployment Descriptors and JAR Files
- modifying at deployment in server-side
components, Server-Side Components
- runtime exceptions
- BMP
and, Exception Handling
S
- SAAJ (SOAP with Attachments API for
Java), EJB 2.1: Web Service Standards
- scheduled
jobs, Timer Service
- scheduleMaintenance( )
method, Timer Service API, Cancelling timers
- scheduling systems (see Timer
Service)
- scope, Simple Queries
- of
transactions, Transaction Scope
- <security-identity>
element, The XML Deployment Descriptor, The <binding> and <service> elements, Session and Entity Beans, Session and Entity Beans, The <service-ref> Deployment Element (EJB 2.1), Security Roles, ejb-jar.xml, ejb-jar.xml
- nesting inside <assembly-descriptor> element, Describing Bean Assembly
- nesting inside <session> element, Session and Entity Beans
- nesting inside <session> or <entity> elements, Session and Entity Beans
- secure
communication, Security
- Secure Socket Layer
(SSL), Security
- security
- identities
- runAs, The runAs security identity, The runAs security identity, The runAs security identity
- methods, MessageDrivenContext
- roles, EJB 2.1 and 2.0: Defining the XML elements, Security Roles, When to Use EJBs
- CMP
entity beans and, Deployment
- specifying, Specifying Security Roles and Method Permissions
- types
of, Security
- security
identities, Security
- SELECT
clause, Simple Queries with Paths, Simple Queries with Paths
- aggregate functions
in, EJB 2.1: Aggregate functions in the SELECT clause
- selecting multiple
items, Multiple SELECT Expressions
- select
methods, CMP: EJB QL, Select Methods, Select Methods
- bean-managed persistence
and, Bean-Managed Persistence
- DISTINCT
keyword and, Using DISTINCT
- multi-entity, Select Methods
- sequential processing of
EJBs, Sequential processing with EJBs
- serializable
classes, Deployment Descriptors and JAR Files
- Serializable
interface
- persistence fields
and, Persistence Fields
- primary keys
and, Primary key
- Serializable isolation
level, Transaction Isolation Levels
- performance
and, Balancing Performance Against Consistency
- serializable
objects, Return types and parameters
- EJBMetaData
and, Bean metadata
- serializable types, Return types and parameters, Java RMI-IIOP type restrictions
- server-side
components, Server-Side Components, Enterprise JavaBeans Defined
- benefits/importance of standard
model, Benefits of a Standard Server-Side Component Model
- models for, Component Models
- servers
- choosing/setting
up, Choosing and Setting Up an EJB Server
- containers
and, Classes and Interfaces
- implementation
independence and, Introduction
- transaction
management and, Transaction Propagation
- service
providers (drivers) for
JNDI, Locating Beans with JNDI
- services, Primary Services
- guaranteed
per J2EE specification, Guaranteed Services
- servlets, Server-Side Components
- J2EE, Servlets, Servlets
- session
beans, The Enterprise Bean Component, What about session beans?, Session Beans, System exceptions
- combining, Identifying session beans
- concurrency
and, Concurrency with session and entity beans
- creating, Developing a Session Bean, Creating a Client Application
- explicit
transaction management and, Explicit Transaction Management
- identifying, Identifying session beans, Identifying session beans
- interactions
between exceptions and transactions (synoptic
table), Application exceptions
- JMS messages
and, Entity and Session Beans Should Not Receive Messages
- modeling
workflow with, Modeling Taskflow with Session Beans
- naming, Identifying session beans
- removing, Removing beans
- stateful (see stateful session
beans)
- stateful and
stateless, Stateless and stateful session beans
- stateless (see stateless session
beans)
- system
exceptions and, System exceptions
- testing, Creating a Client Application
- transaction attributes
and, Specifying a Bean’s Transaction Attributes
- types, EJB Details
- versus entity
beans, Modeling Taskflow with Session Beans, Session Beans
- versus
MDBs, Message-Driven Beans, JMS-Based Message-Driven Beans
- SessionBean
interface, The Bean-Container Contract, Transitioning to the Method-Ready Pool
- SessionContext
interface, The Bean-Container Contract, The Stateless Session Bean
- SessionSynchronization
interface, Transactional Stateful Session Beans, Life in the Transactional Method-Ready state
- set
methods, The bean class
- BMP
and, Set and Get Methods
- set( ) method, Abstract Persistence Schema, Describing Relationships
- setAddress( )
method, Relationship Fields
- setCreditCard( )
method, Abstract programming model
- setCustomer( )
method, Abstract programming model
- setCustomers( )
method, Abstract programming model
- setEntityContext( )
method
- EJBContext interface
and, The Pooled State
- EntityContext interface
and, setEntityContext( ) and unsetEntityContext( ), EntityContext
- setHomeAddress( )
method, Relationship Fields
- setId( ) method, The bean class
- setInt( ) method, The reservation message producer
- setMessageDrivenContext( )
method, MessageDrivenBean interface, Transitioning to the Method-Ready Pool
- setName( )
method, Dependent Value Classes
- setPhoneNumbers( )
method, Abstract programming model
- setReservations( )
method, Abstract programming model
- setRollbackOnly( )
method, EJBContext Rollback Methods
- setSessionContext( )
method, Transitioning to the Method-Ready Pool
- setters, Set and Get Methods
- setTransactionTimeout( )
method, UserTransaction
- sharing resources, Shareable resources
- Ship EJB (sample
entity bean), The Cruise, Ship, and Reservation EJBs, The ShipBean
- bean-managed persistence
and, Bean-Managed Persistence
- deployment
descriptor, Examine the EJB Standard Files
- exercises, Exercise 9.1: A BMP Entity Bean
- home interface, Initialize the Database
- modified to enable
Timers, Exercise 13.1: EJB Timer Service
- queries
and, EJB QL Examples
- testing, Run the Client Application
- ShipBean.java, ShipBean.java, ShipBean.java
- ShipMaintenanceBean.java, ShipMaintenanceBean.java
- Simple
Object Access Protocol, Competing Component Models: Microsoft’s .NET Framework
- simple
queries, Simple Queries
- with
paths, Simple Queries with Paths, Simple Queries with Paths
- single-entity find
methods, Find Methods
- single-entity select
methods, Select Methods
- single-field
primary keys, The XML Deployment Descriptor, Single-Field Primary Keys
- <small-icon> element
- nesting inside <ejb-jar> element, The Descriptor’s Body
- Smalltalk
programming language, Server-Side Components
- snapshots, Database Locks
- SOAP (Simple Object Access
Protocol), Competing Component Models: Microsoft’s .NET Framework, SOAP and WSDL
- defined, Web Services
- SOAP
1.1, SOAP 1.1, Now You See It, Now You Don’t
- exchanging messages
with HTTP, Exchanging SOAP Messages with HTTP
- messaging modes, SOAP Messaging Modes, SOAP Messaging Modes
- SonicMQ
messaging product (Progress), Java Message Service
- source
code
- in this
book, Software and Versions
- SQL
(Structured Query Language), Benefits of a Standard Server-Side Component Model
- versus
EJBQL, CMP: EJB QL
- SSL (Secure Socket
Layer), Security
- state
- bean-managed
persistence and, Bean-Managed Persistence
- conversational, Stateless and stateful session beans
- state-management callback
methods, The bean class
- stateful session
beans, Stateless and stateful session beans, The Activation Mechanism, Session Beans, The Stateful Session Bean, The TravelAgent deployment descriptor
- activating/passivating, The Activation Mechanism
- Does Not Exist
state, Does Not Exist State
- exercises, Exercise 11.2: A Stateful Session Bean, Client_112c
- instance pooling
and, The Life Cycle of a Stateful Session Bean
- life cycle of, The Life Cycle of a Stateful Session Bean, System exceptions
- Method-Ready
state, Method-Ready State
- Passivated
state, Passivated State
- remote interface
and, The remote interface (TravelAgent)
- transactional, Transactional Stateful Session Beans, Life in the Transactional Method-Ready state
- versus stateless session
beans, Stateless versus stateful session beans, Stateless versus stateful session beans
- stateless session
beans, Stateless and stateful session beans, Session Beans, Local component interfaces
- accessing
TimerService, Stateless Session Bean Timers
- creating/cancelling
timers, Stateless Session Bean Timers
- Does
Not Exist state, Does Not Exist
- exercises, Exercise 11.1: A Stateless Session Bean
- exposing as web
service, Exercise 15.1: Web Services and EJB 2.1, Run the Client Application
- implementing endpoint
interface, The Stateless Bean Class, The Stateless Bean Class
- instance pooling
and, The Life Cycle of a Stateless Session Bean
- life cycle
of, The Life Cycle of a Stateless Session Bean, Transitioning out of the Method-Ready Pool: The death of a stateless bean instance
- Method-Ready
Pool, The Method-Ready Pool, Transitioning out of the Method-Ready Pool: The death of a stateless bean instance
- open
connections for, Transitioning to the Method-Ready Pool
- remote interface
and, The remote interface (ProcessPaymentRemote)
- timers, Stateless Session Bean Timers, Using a Stateless Session Timer
- using, Using a Stateless Session Timer, Using a Stateless Session Timer
- versus stateful session
beans, Stateless versus stateful session beans, Stateless versus stateful session beans
- when
declared stateless, Instance swapping
- statements, Simple Queries
- Status
interface, Status
- store-and-forward
messaging, Subscription durability
- StreamMessage
message type, Identifying message-driven beans
- String
functions, Functional expressions in the WHERE clause
- String
types, Return types and parameters
- Strings, array
of, Returning entity data from EJBs
- Structured Query
Language, CMP: EJB QL
- stubs, Distributed Object Architectures
- EJB objects
and, Return types and parameters
- reducing number of with
session beans, Modeling Taskflow with Session Beans
- <subscription-durability> element, EJB 2.0 elements
- subqueries, Subqueries
- subscribing to
topics, TopicConnectionFactory and Topic, Publish-and-subscribe
- subscription
durability, Subscription durability
- subscriptionDurablity property (<activation-config> element), EJB 2.1 elements
- subsystem exceptions, System exceptions
- BMP
and, Exception Handling
- suffixes, Select Methods
- create
methods and, Creating and finding beans, The Remote Home Interface
- SUM( ) function, AVG( numeric ), SUM( numeric)
- Sun Microsystems, Author’s Note
- EJB-to-CORBA
mapping developed by, Distributed Objects
- Forte IDE developed
by, Setting Up Your Java IDE
- Sun’;s
JMX (Java Management
eXtensions), Microkernel Architecture
- Supports
transaction
attribute, Transaction attributes defined
- suspended
transactions, Transaction attributes defined
- synchronizing beans
state, Object-to-relational persistence, The Callback Methods, Using ejbLoad( ) and ejbStore( ) in Container-Managed Persistence, Transitioning from the Ready state to the Pooled state via passivation
- system
exceptions, System exceptions, System exceptions
- subsystem-level, An application exception (PaymentException)
- versus application
exceptions, System Exceptions Versus Application Exceptions
T
- tables, creating in
databases, Creating a CABIN Table in the Database
- taskflow, Modeling Taskflow with Session Beans
- terminology
conventions
- abstract persistence schema
and, Abstract Persistence Schema
- TextMessage, Message types
- TextMessage message
type, Identifying message-driven beans
- thread
control, When Not to Use EJBs
- threads, Concurrency with session and entity beans
- three-tier
architecture, Distributed Object Architectures
- TicketDistributor
EJB, EJB 2.1: Message Linking, EJB 2.1: Message Linking
- consuming
messages, EJB 2.1: Message Linking
- TicketDO object, Reimplementing the TravelAgent EJB with JMS, Point-to-point
- timeouts
- Passivated state
and, Passivated State
- stateful session
beans and, Transitioning out of the Method-Ready state
- stateless session
beans and, Session Beans
- timer
attacks, Entity Bean Timers
- Timer
interface, The Timer
- exceptions, Exceptions
- getNextTimeout( )
method, Retrieving other information from timers
- Timer
Service, EJB 2.1 : Timer Service, Timer Service, Final Words
- API, Timer Service API, Exceptions
- creating
timers, The TimerService Interface
- exceptions, Exceptions
- exercises, Exercise 13.1: EJB Timer Service
- how a bean
would register for notification at a set
time, Timer Service API
- how it
works, Timer Service
- improving, Improving the Timer Service
- problems
with, Problems with the Timer Service, Other problems with Timer API
- transactions, Transactions
- uses for scheduling
systems, Timer Service
- TimerHandle
object, The TimerHandle object
- timers, The Timer, Exceptions
- cancelling, Cancelling timers
- entity
bean, Entity Bean Timers, Entity Bean Timers
- serious
concern, Entity Bean Timers
- identifying, Identifying timers, Identifying timers
- managing, The TimerService Interface
- MDBs, Message-Driven Bean Timers, Other problems with Timer API
- configuring
at deployment, Message-Driven Bean Timers
- initializing, Message-Driven Bean Timers
- standard
configuration
properties, Message-driven bean timers: Standard configuration properties
- problems
with, Other problems with Timer API
- retrieving information
from, Retrieving other information from timers
- stateless
session bean, Stateless Session Bean Timers, Using a Stateless Session Timer
- TimerService
interface, The TimerService Interface, Exceptions
- createTimer( )
methods, The TimerService Interface
- definition, The TimerService Interface
- getTimers( )
method, The TimerService Interface
- Titan application
- business
entities, Business Entity Identification
- Titan Cruises (sample
business), Titan Cruises: An Imaginary Business
- Topic
object, TopicConnectionFactory and Topic
- TopicConnection, TopicConnection and TopicSession
- TopicConnectionFactory, TopicConnectionFactory and Topic, ejb-jar.xml
- TopicPublisher, TopicConnection and TopicSession, TopicPublisher
- topics
(JMS), TopicConnectionFactory and Topic
- TopicSession, TopicConnection and TopicSession
- TopicSubscriber, TopicConnection and TopicSession
- toString( )
method, Compound Primary Keys
- TPC (two-phase commit
protocol), Transaction Propagation
- <transaction-type> element, Specifying a Bean’s Transaction Attributes
- nesting inside <session> element, Session and Entity Beans
- Transactional Method-Ready
state, Transactional Stateful Session Beans, The Transactional Method-Ready State
- transactions, Transactions, ACID Transactions, Life in the Transactional Method-Ready state
- accuracy
of, ACID Transactions
- ACID, ACID Transactions
- atomic, ACID Transactions
- attributes, EJB 2.1 and 2.0: Defining the XML elements, Transaction Attributes, EJB endpoints and transaction attributes
- CMP
entity beans and, Container-managed persistence and transaction attributes
- definitions
of, Transaction attributes defined
- EJB
endpoints and, EJB endpoints and transaction attributes
- Mandatory, Transaction attributes defined
- MDBs
and, Message-driven beans and transaction attributes
- Never, Transaction attributes defined
- NotSupported, Transaction attributes defined
- Required, Transaction attributes defined
- RequiresNew, Transaction attributes defined
- setting, Setting a transaction attribute
- specifying, Specifying a Bean’s Transaction Attributes
- Supports, Transaction attributes defined
- balancing
performance of against consistency, Balancing Performance Against Consistency
- business, When to Use EJBs
- business systems
that employ, ACID Transactions
- consistency
of, ACID Transactions
- declarative
management and, Declarative Transaction Management
- durability
of, ACID Transactions
- entity
beans, ejb-jar.xml (part II)
- exceptions
and, Exceptions and Transactions, Application exceptions
- explicit
management and, Explicit Transaction Management
- how they
work, ACID Transactions
- interoperability, IIOP
- isolation
and database locking, Dirty, Repeatable, and Phantom Reads, Controlling isolation levels
- isolation
levels, Transaction Isolation Levels
- isolation
of, ACID Transactions
- database
locking, Dirty, Repeatable, and Phantom Reads, Controlling isolation levels
- management,
explicit, Explicit Transaction Management, EJBContext Rollback Methods
- managers, Heuristic Decisions
- propagation
of, Transaction Propagation
- propogation, Transaction Scope, Transaction Propagation, Collection-Based Relationships and Transactions
- BMT
beans and, Transaction Propagation in Bean-Managed Transactions, Message-driven beans and bean-managed transactions
- scope, Transaction Scope, Transaction Scope
- minimizing, Minimize transaction scope
- scope
of, Transaction Scope
- stateful
session beans and, Transactional Stateful Session Beans, Life in the Transactional Method-Ready state
- summary of
interactions between (table), Application exceptions
- suspended, Transaction attributes defined
- Transfer Object
pattern, Returning entity data from EJBs
- transient fields, The Activation Mechanism, Passivated State
- transitioning between
states
- Method-Ready Pool
and, Transitioning to the Method-Ready Pool
- stateful session beans
and, Transitioning to the Method-Ready state
- Transactional Method-Ready state
and, Transitioning into the Transactional Method-Ready state
- TravelAgent EJB (sample session
bean), Modeling Taskflow with Session Beans, Getting Set Up for the TravelAgent EJB, The TravelAgent deployment descriptor, Exercise 11.2: A Stateful Session Bean, Client_112c
- ACID
properties, Is the TravelAgent EJB Atomic?, Is the TravelAgent EJB Durable?
- creating, Developing a Session Bean
- deploying, Deploying the TravelAgent EJB
- exercise, Exercise 4.2: A Simple Session Bean
- listCabins( )
method, Client_3.java
- MDBs
and, Message-Driven Beans, Reimplementing the TravelAgent EJB with JMS
- reasons for
using, Why use a Reservation entity bean?
- transactions
and, ACID Transactions
- travelagent.wsdl file, travelagent.wsdl
- TravelAgentClientBean.java, TravelAgentClientBean.java
- TravelAgentEndpoint.java, TravelAgentEndpoint.java
- travelagent_mapping.xml file, travelagent_mapping.xml
- two-phase
commit protocol (2-PC or TPC), Transaction Propagation
- <types> element
(WSDL), The <types> Element
U
- UDDI (Universal Description,
Discovery and Integration), UDDI 2.0, From Standards to Implementation
- registry, UDDI 2.0
- repository, UDDI 2.0
- UML diagram
of business entities and their relationships, Business Entity Identification
- unchecked
exceptions, The Local Interface
- unchecked
methods, Unchecked methods, Unchecked methods
- undefined primary
keys, Undefined Primary Keys in CMP
- underscore (_), The WHERE Clause and LIKE
- unidirectional relationships, wrong way
to modify, Client_71a
- unit-of-work, ACID Transactions, Transaction Scope
- unsetEntityContext( )
method, setEntityContext( ) and unsetEntityContext( ), End of the Life Cycle
- updatePhoneNumber( )
method, Abstract programming model
- URLs
- distributed computing
technologies, Comments and Questions
- EJB, Comments and Questions
- in
JNDI, Locating Beans with JNDI
- this book, Comments and Questions
- XML deployment
descriptors and, The Document Headerand Schema Declarations
- <use-caller-identity/>
element, The runAs security identity
- users, Security
- UserTransaction
interface, Explicit Transaction Management, UserTransaction, UserTransaction
- definition
of, UserTransaction
- utilities
- container-deployment, Container Tools and Persistence
- for database
tables, Database Modeling
- utility
classes, Utility classes, Utility classes
W
- .war (web
archive) files, Filling in the Gaps
- web
components, Web Components and EJB
- EJBs and, Filling in the Gaps, Guaranteed Services
- Web Service Description
Language (see WSDL)
- web
services, Web Services
- accessing with
JAX-RPC, Accessing Web Services with JAX-RPC, The JAX-RPC Mapping File
- exercises, Exercise 15.1: Web Services and EJB 2.1, Run the Client Application
- J2EE, EJB 2.1 and Web Services
- overview, Web Services Overview
- standards, EJB 2.1: Web Service Standards, From Standards to Implementation
- WebOS, Microkernel Architecture
- webservices.xml
file, webservices.xml file
- WebSphere
(IBM), Setting Up Your Java IDE
- well formed
XML, XML Schema
- WHERE clause
- arithmetic and logic operators
in, Exercise 8.2: Complex EJB QL Statements
- arithmetic
operators and, The WHERE Clause and Arithmetic Operators
- BETWEEN
clause and, The WHERE Clause and BETWEEN
- CDATA sections
and, The WHERE Clause and CDATA Sections
- comparison
operators and, The WHERE Clause and Comparison Symbols
- equality
semantics and, The WHERE Clause and Equality Semantics
- IN operator
and, The WHERE Clause and IN
- input parameters
and, The WHERE Clause and Input Parameters
- IS EMPTY
operator and, The WHERE Clause and IS EMPTY
- IS NULL comparison operator
and, The WHERE Clause and IS NULL
- LIKE
comparison operator
and, The WHERE Clause and LIKE
- literals
and, The WHERE Clause and Literals
- logical
operators and, The WHERE Clause and Logical Operators
- MEMBER OF
operator and, The WHERE Clause and MEMBER OF
- operator
precedence and, The WHERE Clause and Operator Precedence
- wildcards, asterisk
indicating, Setting a transaction attribute, Specifying a Bean’s Transaction Attributes, Wildcard declarations
- wizards
- for
graphical deployment, Deploying the Cabin EJB
- for
object-to-relational database
mapping, Object-to-relational persistence
- workbook
- contents, Contents of the JBoss Workbook, Contents of the JBoss Workbook
- example
code, Exercise Code Setup and Configuration, Environment Setup
- downloading, Exercise Code Setup and Configuration
- exercises (see exercises)
- online
resources, Online Resources
- workflow scheduling
examples, Timer Service
- workflow,
modeling with session beans, Modeling Taskflow with Session Beans, Session Beans
- stateful session beans
and, The Stateful Session Bean, The bookPassage( ) method
- wrapper classes for primitive data
types, Single-Field Primary Keys
- write
locks, Database Locks
- write
once, run anywhere, Introduction
- WSDL
- file
used to generate endpoint interface, WSDL file
- generating
JAX-RPC stubs from, Generating JAX-RPC Stubs from WSDL, Generating JAX-RPC Stubs from WSDL
- WSDL
(Web Service Description Language), Web Services, SOAP and WSDL, WSDL 1.1
- <binding>
element, The <binding> and <service> elements
- <definitions>
element, The <definitions> Element
- <message>
element, The <portType> and <message> Elements, The <portType> and <message> Elements
- <portType>
element, The <portType> and <message> Elements, The <portType> and <message> Elements
- <service>
element, The <binding> and <service> elements
- <types>
element, The <types> Element
X
- XML
- as entity data from
EJBs, Returning entity data from EJBs
- correctness, XML Schema
- documents, The Document Headerand Schema Declarations
- element
delimiters, The WHERE Clause and CDATA Sections
- parsers, XML Schema
- using
different markup languages in same
document, XML Namespaces
- version of, specifying in
documents, The Document Headerand Schema Declarations
- versus
HTML, XML Deployment Descriptors
- XML deployment
descriptors (see deployment
descriptors)
- XML
elements
- defining, EJB 2.1 and 2.0: Defining the XML elements, EJB 2.1 and 2.0: Defining the XML elements
- for session
beans, EJB 2.0 and 1.1: Defining the XML elements
- XML
Namespaces, XML Namespaces, XML Namespaces
- declarations, XML Namespaces
- default
namespaces, XML Namespaces, XML Namespaces
- prefixes for target
namespace, XML Namespaces
- URI, XML Namespaces
- XML Schema, XML Schema, XML Schema
- built-in types, XML Schema
- built-in types and corresponding Java types, Generating JAX-RPC Stubs from WSDL
- specification, XML Schema
- XSDs for deployment
descriptors in EJB 2.1, XML Deployment Descriptors
..................Content has been hidden....................
You can't read the all page of ebook, please click
here login for view all page.