Glossary

This appendix lists new or uncommon terms used throughout this book and provides a brief definition.

3-Tier

The 3-tier model for enterprise applications, as used by J2EE, that splits the application functionality into three parts: presentation, business, and integration. Components that deliver these three types of functionality will typically live on their own tier of servers, so that the three types of functionality are physically, as well as logically, separated.

See also [n-tier]
Active Directory

Active Directory is Microsoft's directory service, first delivered as part of Microsoft Windows 2000.

ANSI

The American National Standards Institute is a private, non-profit organization that administers and coordinates the U.S. voluntary standardization and conformity assessment system.

ANSI SQL

ANSI SQL represents a standard for SQL programming that is independent of any one specific implementation. The first ANSI SQL standard was published in 1989, but most vendors now support the update published in 1992.

See also [ANSI SQL 92]
ANSI SQL 92

ANSI SQL 92 refers to the version of the SQL specification published by ANSI in 1992. This forms the basis of most current SQL implementations by major vendors.

See also [SQL]
Ant (or Apache Ant)

An automated build tool included in the J2EE RI under the name asant (Application Server Ant).

See also [Apache Software Foundation]
Apache Software Foundation (or just Apache)

The Apache Software Foundation is an umbrella organization that supports a range of open-source projects being pursued under the Apache banner. Notable among these projects are the Jakarta Project, which delivers the Tomcat servlet and JSP implementation, Ant build tool, and James email server. Together with the XML Project, which oversees the development of the Crimson and Xerces parsers, the Jakarta Project also delivers the Xalan XSLT processor and the Axis SOAP engine.

See also [Jakarta]
See also [Axis]
Application Client

A J2EE application client is a client-side J2EE component that has access to a subset of the J2EE APIs provided by the J2EE client container. A J2EE application client must be invoked within the context of a J2EE client container, such as the runclient container provided by the J2EE RI.

Application Layer

The application layer is a term used to refer to the logical layer containing the interaction with the user of the application. This can include not only Web-based interaction using servlets and JSPs with a Web browser, but also application clients.

Application Server

An application server is a server-side container for components of an n-tier application. In Java terms, a typical application server will provide all of the J2EE APIs and container types. Application servers can also provide additional functionality, such as CORBA, COM, or Web Service support. Common application servers include BEA WebLogic, IBM WebSphere, Sun ONE Application Server, JBoss and OpenEJB.

Asymmetric Key Encryption

Encryption that uses two keys to encrypt and decrypt the data. One key is made public and is used by senders to encrypt messages for the recipient. Only the recipient can decrypt the key as the other key is kept private and held only by the recipient. Asymmetric encryption is usually known as Public Key Encryption (PKE). The most widely known algorithm used today is RSA.

AVK (Java Application Verification Kit)

The AVK (formerly the Compatibility Test Suite) is a testing environment from Sun Microsystems for validating J2EE compliant application servers.

Axis

The Apache Axis project is part of the Apache XML project. Axis is a Java-based SOAP toolkit that allows you to build and invoke Web Services from Java components.

See also [Apache]
Bean

See [JavaBean]
Bean-Managed Persistence (BMP)

See [BMP]
Bean-Managed Transaction Demarcation (BMTD)

See [BMTD]
BMP (Bean-Managed Persistence)

An Entity EJB can take responsibility for persisting and retrieving its own internal state when prompted by its container. This is commonly done by including JDBC code in the appropriate lifecycle methods. This style of Entity EJB persistence is termed Bean-Managed Persistence.

See also [CMP]
BMTD (Bean-Managed Transaction Demarcation)

An EJB can take control of its own transactions by making API calls to start and end transactions. This is termed Bean-Managed Transaction Demarcation.

See also [CMTD]
Business Tier

The set of machines on which the business components execute in an n-tier or 3-tier application.

See also [n-tier]
See also [3-tier]
CA(Certification Authority)

A trusted organization that verifies the authenticity of a digital certificate of another organization.

See also [Digital Certificates]
Certification Authority (CA)

See [CA]
Client Tier

See [Presentation Tier]
CMP (Container-Managed Persistence)

An Entity EJB can delegate responsibility for persisting and retrieving its internal state to its container. This is termed Container-Managed Persistence.

See also [BMP]
CMR (Container-Managed Relationships)

Under EJB 2.0 and later (and J2EE 1.3 and later), it is possible to specify relationships between Entity EJBs in such a way that the container will automatically manage the lifecycle of the whole interconnected web of entities according to those relationships. This means that entities that are referenced by other entities will automatically be instantiated and populated when required, with no need for code in either the client or the containing Entity. Such relationships are termed Container-Managed Relationships.

CMTD (Container-Managed Transaction Demarcation)

An EJB can delegate control of its transactions to its container, which will start and end transactions on behalf of the EJB. This is termed Container-Managed Transaction Demarcation.

See also [BMTD]
Collaboration Protocol Agreement (CPA)

See [CPA]
Collaboration Protocol Profile (CPP)

See [CPP]
Compatibility Test Suite (CTS)

See [AVK]
Component

A component is a grouping of functionality that forms a coherent unit. This unit can be deployed in a component container independent of other components. Applications can then be built by calling on the functionality of multiple, specialist components. J2EE applications are built from various types of components, such as Web Components and EJBs.

See also [Container]
Connector

See [JCA (Java Connector Architecture)]
Container

A container provides services for a component. These services can include lifecycle management, security, connectivity, transactions, and persistence. Each type of J2EE component is deployed into its own type of J2EE container, such as a Web Container or an EJB Container.

See also [Component]
Container-Managed Persistence (CMP)

See [CMP]
Container-Managed Relationships (CMR)

See [CMR]
Container-Managed Transaction Demarcation (CMTD)

See [CMTD]
Cookie

A cookie is a short text string sent as part of an HTTP request and response. Because HTTP is a stateless protocol, cookies provide a way of identifying the same client across multiple HTTP requests. Any cookie sent by a server is stored by the client and then submitted whenever another request is made to the same server or domain. Cookies form the basis of most Web-based session management.

CORBA (Common Object Request Broker Architecture)

CORBA, from the Object Management Group (OMG), defines a distributed environment consisting of client-server connectivity integrated with a set of distributed services. CORBA clients and servers connect to a local Object Request Broker (ORB) for connectivity and can register and discover each other in the Common Object Services Naming Service (COS Naming). There are many other CORBA services defined, including security, transaction, and persistence.

CPA (Collaboration Protocol Agreement)

A CPA is an XML document that defines an agreement between two parties who are using ebXML to conduct e-business. The CPA defines an intersection of the two parties' CPPs, specifying which protocols and mechanisms they will use to exchange information and services.

See also [CPP]
CPP (Collaboration Protocol Profile)

A CPP is an XML document that defines the services and capabilities offered by an organization that provides e-business services using ebXML.

See also [CPA]
Crimson

The Crimson XML parser from Apache is used to provide the XML parsing functionality of the Sun JAXP reference implementation..

See also [Apache]
See also [Xerces]
CTS (Compatibility Test Suite)

See [AVK]
Custom Tag Library

See [Tag Library]
Data Encryption Standard (DES)

See Symmetric Data Encryption.

Data Tier

See [Integration Tier]
Declarative attributes

Declarative attributes provide a way for a component to specify requirements to its container by means of attributes defined in the deployment descriptor. These requirements can include when to start and stop transactions and the level of security required by different parts of the component. Delegating control of such functionality to the container and defining them in the deployment descriptor rather than using code means that they are more easily changed when configuring an application.

Deployment Descriptor

A deployment descriptor defines metadata for the component or application with which it is associated. J2EE deployment descriptors are XML documents that convey the requirements that a component or application has of its container (such as security requirements). The deployment descriptor can also define the relationships between different classes in the component, naming information, persistence requirements, and so on.

DES (Data Encryption Standard)

See Symmetric Data Encryption.

Design pattern

See [Pattern]
Digital certificate

A digital certificate provides a way of signing digital data in such a way that it authoritatively proves the identity of the sender. Certificates are usually issued by trusted third parties called Certification Authorities.

See also [Asymmetric Key Encryption]
See also [Certification Authorities]
DNS (Domain Name System)

DNS is the mechanism whereby Internet applications can resolve host names (such as java.sun.com) to IP addresses (such as 192.18.97.71), acting as a basic directory service. It also provides reverse resolution and information on the location of email servers.

Document Object Model (DOM)

See [DOM]
Document Type Definition (DTD)

See [DTD]
DOM (Document Object Model)

The document object model is an API defined by the W3C for manipulating and traversing an XML document. The API is defined in language-neutral (CORBA) IDL, and Java-based XML parsers provide a Java-language mapping of it. DOM is one of the two main parsing APIs provided by JAXP (the other is the simple API for XML ).

See also [JAXP]
See also [SAX]
See also [W3C]
Domain Layer

The term domain layer is sometimes used to denote the group of logical components that provide the data model for an application. These components are manipulated by other components in the business layer to perform business-oriented functionality.

Domain Name System (DNS)

See [DNS]
DTD (Document Type Definition)

The structure of an XML document can be defined using a DTD. The DTD syntax forms part of the XML specification, but is somewhat limited in its descriptive capabilities. For this reason, it is being superseded by XML Schema.

See also [XML Schema]
EAI (Enterprise Application Integration)

Many existing enterprise applications reside on systems, such as mainframes. Providing connectivity and interoperability with such systems for an n-tier application is commonly termed Enterprise Application Integration. Some n-tier reference models will refer to an integration tier, which is a combination of components that connect to databases and EAI components, sometimes called enterprise information systems.

See also [EIS]
EAR (Enterprise Archive)

An EAR file contains the components and deployment descriptors that make up an enterprise application. An EAR is the unit of deployment for a J2EE server (that is, how the J2EE server expects applications to be packaged).

ebXML (Electronic Business XML)

The ebXML initiative has produced a set of e-business standards that range from data transportation to the choreography of business processes. These standards provide a platform for e-business and a set of value-added services when sending e-business messages.

See also [CPA]
See also [CPP]
See also [JAXM]
Electronic Business XML (ebXML)

See [ebXML]
EIS (Enterprise Information Systems)

An enterprise information system is any source of enterprise data, such as a database or mainframe. EIS systems will be accessed through an integration tier.

See also [EAI]
EJB (Enterprise JavaBean)

An EJB is a J2EE business component that lives within a J2EE EJB container. EJBs can be Session beans, Entity beans, or Message-driven beans. An EJB consists of home and remote interface definitions, the bean functionality, and the metadata required for the container to correctly interact with the bean.

EJB Container

An EJB container provides services for the EJBs deployed within it. It will control access to the EJB instances and will call the lifecycle methods on each EJB at the appropriate time. The container also provides the persistence and relationship mechanisms used by Entity EJBs.

ejb-jar

An ejb-jar file contains one or more EJBs together with the deployment descriptor and resources needed by them. The ejb-jar is a unit of deployment for EJB business components.

See also [EJB]
EJB QL (EJB Query Language)

EJBs that use CMP must specify the results expected from the various finder methods defined on their home interface. EJB QL provides a container-independent way of doing this by allowing the developer to associate EJB-based queries with the different finder methods.

EJB Query Language

See [EJB QL]
EL (Expression Language)

A simple scripting language originally defined as part of JSTL but incorporated into JSP 2.0 (J2EE 1.4) to provide a weakly typed grammar for accessing JSP variables.

Enterprise Application

An enterprise application consists of one or more J2EE components packaged in an EAR archive. An enterprise application is the end result of a J2EE development.

Enterprise Application Integration (EAI)

See [EAI]
Enterprise Archive (EAR)

See [EAR]
Enterprise Information Systems (EIS)

See [EIS]
Enterprise JavaBean (EJB)

See [EJB]
Enterprise Resource Planning (ERP)

See [ERP]
Entity EJB (or Entity Bean)

An Entity EJB is a data component used in a J2EE application. Entities frequently map onto domain Entities discovered during analysis and design.

ERP (Enterprise Resource Planning)

ERP packages provide pre-packaged, configurable components that provide core enterprise functions, such as personnel management and operations. Such systems are core to enterprise operations, so they must be integrated with other enterprise applications, such as those developed using J2EE. Information from such systems can be retrieved and manipulated through J2EE Connectors or Web Services.

See also [JCA]
Expression Language

See [EL]
eXtensible Markup Language (XML)

See [XML]
eXtensible Stylesheet Language (XSL)

See [XSL]
eXtensible Stylesheet Language Formatting Objects (XSL-FO)

See [XSL-FO]
eXtensible Stylesheet Language Transformations (XSLT)

See [XSLT]
Home Interface

The home interface of an EJB is a remote factory interface that is registered using JNDI. Clients will discover this interface and use its methods to create, remove, or find one or more EJBs.

See also [EJB]
HTML (Hypertext Markup Language)

HTML is the language used to define Web pages that display in a Web browser, such as Netscape Navigator or Microsoft Internet Explorer.

See also [HTTP]
HTTP (Hypertext Transfer Protocol)

HTTP is the standard transport mechanism used between Web clients and servers. It is used to fetch HTML documents, and also as the underlying transport for Web Services. HTTP servers can be set up on any TCP endpoint, but are usually found on port 80 or common alternatives (8000, 8080, 8888, and so on).

See also [HTML]
See also [HTTPS]
See also [Web Service]
HTTPS (Secure Hypertext Transfer Protocol)

HTTPS uses SSL to encrypt HTTP traffic between a client and a server and to authenticate the server to the client (and possibly vice versa). HTTPS uses a different endpoint (443) from standard HTTP.

See also [HTTP]
HyperText Markup Language (HTML)

See [HTML]
HyperText Transfer Protocol (HTTP)

See [HTTP]
IMAP (Internet Message Access Protocol)

IMAP is a flexible way of dealing with Internet-based email. Using IMAP, messages stay in a user's mailbox on the server while the client retrieves metadata about them (such as the size, sender, and so on). The client can then selectively download messages, rather than having to download all emails in one go.

See also [POP]
Initial Context

A JNDI initial context is the starting point for JNDI interaction. J2EE components will obtain an initial context to discover resources, properties, and other J2EE components.

Integration Tier

The set of machines on which the data access components execute in an n-tier or 3-tier application.

See also [n-tier]
See also [3-tier]
Internet Message Access Protocol (IMAP)

See [IMAP]
J2EE

Java 2 Enterprise Edition.

J2EE application

See [Enterprise Application]
J2EE Component

A J2EE component is the basic unit of a J2EE application. Different components will serve different purposes, such as presentation of data, provision of business logic, or access to underlying data.

See also [Web Component]
J2EE Container

A J2EE container provides the services and environment required by a particular type of J2EE component.

See also [Web Container]
J2EE Pattern

A J2EE Pattern is a pattern that is implemented using J2EE technologies. J2EE Patterns can help improve the quality of the J2EE applications within which they are applied.

See also [Pattern]
J2EE Reference Implementation (RI)

See [J2EE RI]
J2EE RI (J2EE Reference Implementation)

The J2EE RI (or the Java 2 SDK Enterprise Edition) serves as a proof-of-concept for the technologies defined in the J2EE specification. The team that produces the JSR for each version of J2EE is responsible for delivering a reference implementation for it. The J2EE RI is freely downloadable and provides a useful test environment for J2EE developers.

J2EE Server

A J2EE server is the underlying J2EE platform that provides the services required by J2EE containers. J2EE servers are typically delivered in the form of application servers.

See also [J2EE Container]
Jakarta Project

The Jakarta Project is the overarching project for Java-oriented development at the Apache Foundation. This includes the Tomcat servlet and JSP engine.

See also [Apache]
JAF (JavaBeans Activation Framework)

JAF provides a way of associating a particular MIME type with an application or component that knows how to process data of that MIME type. JAF is used in various parts of J2EE including JavaMail and Web Services.

James

An open source SMTP and POP3 mail server provided through the Jakarta Project.

See also [Apache]
JAR (Java Archive)

JAR files are a compressed archive format in which Java classes and associated resources are typically stored. All of the various archives used by J2EE are delivered in JAR files.

See also [EAR]
See also [ejb-jar]
See also [WAR]
Java API for XML Messaging (JAXM)

See [JAXM]
Java API for XML Parsing (JAXP)

See [JAXP]
Java API for XML Registries (JAXR)

See [JAXR]
Java API for XML-based RPC (JAX-RPC)

See [JAX-RPC]
Java Architecture for XML Binding (JAXB)

See [JAXB]
Java Archive (JAR)

See [JAR]
JavaBean

A JavaBean is a Java class that conforms to certain rules on method naming, construction, and serialization. JavaBeans are used within J2EE to contain Java functionality and data in Web components or as data carriers between layers. Note that JavaBeans and Enterprise JavaBeans (EJBs) are totally different technologies.

See also [EJB]
JavaBeans Activation Framework (JAF)

See [JAF]
Java Application Verification Kit (AVK)

See [AVK]
Java Connector Architecture (JCA, Connectors)

See [JCA]
Java Community Process (JCP)

See [JCP]
Java Database Connectivity (JDBC)

See [JDBC]
Java Data Objects (JDO)

See [JDO]
Java IDL

Java IDL is the delivery mechanism for CORBA IDL support under Java. The Java IDL compiler allows you to compile CORBA IDL into Java stubs and skeletons that can be used to communicate with remote CORBA objects.

See also [CORBA]
JavaMail

JavaMail is part of the J2EE platform that allows you to send and receive email messages.

Java Message Service (JMS)

See [JMS]
Java Naming and Directory Interface (JNDI)

See [JNDI]
JavaServer Faces (JSF)

See [JSF]
JavaServer Pages (JSP)

See [JSP]
JavaServer Pages Standard Tag Library (JSTL)

See [JSTL]
Java Transaction API (JTA)

See [JTA]
Java Transaction Service (JTS)

See [JTS]
Java Web Service (JWS) file

See [JWS]
Java Web Services Developer Pack (Java WSDP)

See [Java WSDP]
Java WSDP (Java Web Services Developer Pack)

The Java WSDP provides an integrated toolkit containing standard implementations of Web services standards, such as WSDL and SOAP, as well as implementations for Web application development, such as (JavaServer Pages) and all of the technologies included in the Java XML Pack (JAX Pack). It enables the building of web services, web applications and XML applications.

See also [JAX Pack]
JAXB (Java Architecture for XML Binding)

JAXB defines an architecture for marshalling data between Java and XML formats. It provides tools to convert XML DTDs and Schemas into Java classes.

JAXM (Java API for XML Messaging)

JAXM defines how J2EE components send and receive XML-based messages over SOAP.

See also [SOAP]
JAXP (Java API for XML Processing)

JAXP defines the interfaces and programming model for the parsing, manipulation, and transformation of XML in Java.

JAX Pack (or Java XML Pack)

The JAX Pack provides an interim delivery mechanism for the various XML-related APIs currently under development. The Java Web Services Developer Pack (Java WSDP) incorporates all the technologies included in JAX Pack.

See also [Java WSDP]
See also [JAXM]
See also [JAXP]
See also [JAXR]
See also [JAX-RPC]
JAXR (Java API for XML Registries)

JAXR defines how a J2EE component will access and manipulate XML data held in XML-oriented registries, such as UDDI and the ebXML registry and repository.

JAX-RPC (Java API for XML-based RPC)

JAX-RPC defines how J2EE components make and receive XML-based RPC calls over SOAP. It specifies the relationship between the definition of an interface in WSDL and the Java binding for that interface.

See also [SOAP]
See also [UDDI]
JCA (Java Connector Architecture)

The JCA defines how external data sources, such as ERP systems, should be made available to J2EE components. The JCA mechanism is very similar to the JDBC standard extension that allows components to discover and use data sources defined by the container.

JCP (Java Community Process)

The JCP is the process under which vendors and individuals in the Java community work together to create and formalize the APIs and technologies used in the Java platform. Standardization efforts under the JCP are referred to as Java Specification Requests (JSRs).

See also [JSR]
JDBC (Java Database Connectivity)

JDBC provides data access for Java applications and components.

JDO (Java Data Objects)

JDO specifies a lightweight persistence mechanism for Java objects. Its functionality lies somewhere between Java Serialization and entity EJBs.

JMS (Java Message Service)

JMS specifies how a J2EE component can produce or consume messages by sending them to, or retrieving them from, a queue or a topic. JMS supports both the point-to-point model and the publish/subscribe model of message passing.

JNDI (Java Naming and Directory Interface)

JNDI provides a generic API for access to information contained in underlying naming services, such as the CORBA CoS Naming service. JNDI is used by J2EE components to discover resources, configuration information, and other J2EE components.

JSF (JavaServer Faces)

JSF provides a framework for developing user interfaces in Web Applications. JSF is an emerging technology and is included, the Java Web Services Developer Pack from Sun Microsystems.

JSP (JavaServer Pages)

JSPs provide a model for mixing static tagged content, such as HTML or XML, with content dynamically generated using Java code. Such code can be embedded in the page itself or, more usually, encapsulated in a JavaBean or tag library.

See also [JavaBean]
See also [Tag Library]
JSP Directive

Directives are messages to the JSP container that are embedded in a JSP page. They appear as tags delimited by <%@ %>. Directives include page, taglib, and include. A common example would be a page directive that defines the error page for this JSP.

See also [JSP]
See also [JSP Error Page]
JSP Error Page

An error page can be defined for each JSP page to handle any errors occurring on that page. Any unhandled exceptions will cause the error page to be displayed. The same error page can be shared between multiple JSP pages. An error page is basically a JSP page that has access to error-specific information, such as the exception that caused the error.

See also [JSP]
JSP Expression

A JSP expression is a Java statement that is executed, and the result of this statement is coerced into a string and output at the current location in the page. Expressions are delimited by <%= %>. A typical example would use a Java statement to evaluate the current date or time to be inserted at the current location.

See also [JSP]
JSP Scriptlet

A JSP scriptlet is a section of Java code embedded in a JSP page and delimited by <% %>.

JSR (Java Specification Request)

A JSR is a project under the auspices of the JCP that defines a new standard for a Java API or technology. JSRs are run by groups of experts drawn from vendors and the broader Java community.

See also [JCP]
JSTL (JavaServer Pages Standard Tag Library)

A standard JSP tag library for common functionality, such as conditional evaluation and looping.

See also [Tag Library]
JTA (Java Transaction API)

The JTA defines an API that allows J2EE components o interact with transactions. This includes starting transactions and completing or aborting them. The JTA uses the underlying services of the JTS.

See also [JTS]
JTS (Java Transaction Service)

The JTS is a low-level, Java-based mapping of the CORBA Object Transaction Service. Transaction managers that conform to JTS can be used as part of a J2EE environment to control and propagate transactions on behalf of J2EE components. J2EE components will not use JTS directly, it is used on their behalf by their container or through the JTA.

See also [JTA]
JWS (Java Web Service file)

A JWS file is a Java class file with a .jws extension. When placed under the appropriate part of the Apache Axis hierarchy, this Java class will automatically be exported as a Web Service.

See also [Axis]
Kerberos

Kerberos is a strong, distributed security mechanism that uses encryption and signed “tickets” to allow clients and servers to interoperate in a secure manner.

LDAP (Lightweight Directory Access Protocol)

LDAP is a standard protocol for accessing data in a directory service. Common directory services such as Microsoft's Active Directory and Novell's NDS support LDAP. JNDI can be used to deliver LDAP requests using the LDAP service provider.

See also [Active Directory]
See also [JNDI]
See also [NDS]
Lightweight Directory Access Protocol (LDAP)

See [LDAP]
Local Home Interface

A local home interface is an EJB factory interface that returns EJB local interfaces. The local home interface is for use by clients that run in the same server and reduces the overhead associated with remote RMI calls.

See also [Home Interface]
See also [Local Interface]
Local Interface

A local interface is a business- or data-access interface defined by an EJB that is intended to be used by clients running in the same server. Using a local interface reduces the overhead associated with remote RMI methods. Local interfaces form the foundation for container-managed relationships used by Entity EJBs.

See also [CMR]
See also [Local Home Interface]
See also [Remote Interface]
MD5 (Message Digest version 5)

See [Message Digest]
MDB (Message-Driven EJB)

A Message-Driven bean is an EJB that processes JMS messages. The bean implements an onMessage method, just like a JMS message consumer. Messages delivered to the associated queue will be passed to the MDB's onMessage method, so the MDB will be invoked asynchronously (the client could be long gone).

Message-Driven EJB (or Message-Driven Bean, MDB)

See [MDB]
Message Digest

A security mechanism whereby the data in a message is subjected to a numerical algorithm that calculates one or more validation numbers that are transmitted along with the data. The recipient can perform the same calculation on the data and as long as the digest numbers match the recipient be reasonably confident the message has not been corrupted in some way. Checksums are a very simple form of digest.

Microsoft SQL Server

Microsoft SQL Server is Microsoft's flagship enterprise database. SQL Server is now part of Microsoft's .NET server range. J2EE components can access data in a SQL Server database through standard data access mechanisms, such as JDBC.

See also [JDBC]
MIME (Multipurpose Internet Mail Extensions)

MIME provides a way of defining a multi-part message in which each part contains a different type of data. Within the message, each part has its own MIME header defining the content type of that part and delimiting that part from the other parts. Common uses of MIME include Internet email and SOAP.

Multipurpose Internet Mail Extensions (MIME)

See [MIME]
N-Tier

Modern distributed applications are defined in terms of multiple tiers. A 3-tier application has three physical tiers containing presentation, business, and data access components. In reality, applications can have many more physical tiers, each of which can be some specialization of the three tiers listed, or as a representation of ultimate clients and data sources. As such, these applications are referred to as n-tier to indicate that there are a variable number of tiers (3 or more).

See also [3-tier]
NDS (Novell Directory Services)

NDS is Novell's popular directory service, originating from its NetWare family of products.

Novell Directory Services (NDS)

See [NDS]
OASIS (Organization for the Advancement of Structured Information Standards)

OASIS is a non-profit, international consortium that creates interoperable industry specifications based on public standards, such as XML and SGML. OASIS is one of the sponsors of ebXML.

See also [ebXML]
Object-Oriented Database Management System (OODBMS)

See [OODBMS]
Object Relational Database Management System (ORDBMS)

See [ORDBMS]
OODBMS (Object-Oriented Database Management System)

An OODBMS provides persistent storage that supports the OO paradigm so that data definition can be done in terms of classes, inheritance, and methods. Data retrieval can be performed in terms of object instances in contrast to record sets.

See also [ORDBMS]
Oracle

Oracle produces several J2EE-related products. The Oracle database can be used as an enterprise-class data store as part of a J2EE application. The Oracle application server is itself a J2EE application server that can host a J2EE-compliant application. As you would expect, this gives performance and functionality benefits when combined with Oracle's database.

ORDBMS (Object Relational Database Management System)

An ORDBMS provides an OO mapping on top of a traditional relational database. This means that the developer can work in terms of objects and classes, and the ORDBMS takes the responsibility for mapping these classes and objects to the underlying database tables.

See also [OODBMS]
Organization for the Advancement of Structured Information Standards (OASIS)

See [OASIS]
Pattern

A pattern is a solution to a problem in a given context. Patterns commonly occur in software design and architecture. By using patterns, designers and architects can improve the quality of the software and systems they produce.

PKE (Public Key Encryption)

See [Asymmetric Key Encryption]
Platform Specific Deployment Descriptor

The deployment descriptors provided with J2EE components and applications provide standard information about the properties and configuration of those components and applications. The auxiliary deployment descriptor defines additional, non-standard information about the J2EE application or component that is used by a specific J2EE container or application server. Hence, the contents of the auxiliary deployment descriptor are specific to that environment.

See also [Deployment Descriptor]
Post Office Protocol (POP/POP3)

See [POP]
POP/POP3 (Post Office Protocol)

POP defines a way for an email client, such as Eudora, to retrieve messages from a mailbox maintained by an email server. All messages must be downloaded before they can be examined or read.

See also [IMAP]
See also [SMTP]
Presentation Layer

The presentation layer is a term used to refer to the logical layer containing the interaction with the user of the application. For a Web-based application, this typically means the generation of HTML or XML by servlets and/or JSPs. For an application client, the presentation is typically done through a Swing GUI.

Presentation Tier

The set of machines on which the presentation components execute in an n-tier or 3-tier application.

See also [3-tier]
See also [N-tier]
Public Key Encryption (PKE)

See [Asymmetric Key Encryption]
Reference Implementation

See [J2EE RI]
Remote Interface

The business or data access methods exposed by an EJB are referred to as its remote interface. The interface extends the RMI Remote interface, indicating that it is to be used outside of the current virtual machine. Each EJB has one remote interface, and this is the type returned by finder and creator methods on the EJB's home interface.

Remote Method Invocation (RMI)

See [RMI]
Remote Procedure Call (RPC)

See [RPC]
Remote Reference

A remote reference is an object reference that refers to a remote object. The method calls made through the remote reference will be propagated to the remote object using RMI. In J2EE terms, a remote reference will usually refer to an EJB or its home interface and will be retrieved from a finder/creation method or through JNDI, respectively.

See also [RMI]
RI

See [J2EE RI]
Rivest Shamir Adleman (RSA)

See [Asymmetric Key Encryption]
RMI (Remote Method Invocation)

RMI is a Java-based, object-oriented RPC mechanism. All communication with EJBs in a J2EE application is done via RMI (except for Message-driven beans). RMI defines a syntax and mechanism for accessing remote Java objects and also for passing serialized Java objects between client and server.

See also [RMI-IIOP]
RMI-IIOP

RMI-IIOP defines a way that RMI RPC calls can be carried over the CORBA IIOP transport. This allows for interoperability between different J2EE application servers as well as between RMI clients and servers and CORBA clients and servers.

See also [CORBA]
See also [RMI]
RPC (Remote Procedure Call)

An RPC is a method call that spans processes, frequently across a network. A client-side stub (or proxy) and a server-side skeleton (or stub) will make the issuing of RPCs look similar to a local method call.

See also [CORBA]
See also [RMI]
RSA (Rivest Shamir Adleman)

See [Asymmetric Key Encryption]
SAAJ (SOAP with Attachments API for Java)

Provides a mechanism for producing and consuming SOAP messages.

See also [SOAP]
SAX (Simple API for XML)

SAX was defined by members of the XML-DEV email list (and formalized by David Megginson) as a way of processing XML in Java. The SAX API is event-driven, notifying the Java program as XML elements and content are encountered. SAX is generally regarded as lighter-weight than the DOM API and is delivered as part of JAXP.

See also [DOM]
See also [JAXP]
Scriptlet

See [JSP Scriptlet]
Secure HyperText Transfer Protocol (HTTPS)

See [HTTPS]
Secure Sockets Library (SSL)

See [SSL]
Servlet

A servlet is a Web component that is written entirely in Java. Servlets have a defined lifecycle and allow Web developers to consume (most commonly) HTTP requests and generate responses. Responses can be in the form of HTML, XML, or any text or binary format.

See also [JSP]
See also [Web Component]
Session EJB (or Session Bean)

Session EJBs are intended to house business logic and processing in a typical J2EE application. Session EJBs will provide business services to the presentation tier and will use Entity EJBs, connectors, or direct database access to retrieve business data.

Session EJBs can be either stateful (they retain state between invocations) or stateless (state is not retained between invocations).

SGML (Standard Generalized Markup Language)

SGML is a forerunner of both HTML and XML. It is a very flexible general purpose markup language that, like XML, can be used to mark up any form of data. However, its flexibility leads to it being somewhat unwieldy. The originators of XML intended to keep much of the flexibility of SGML while deriving a simpler syntax.

See also [XML]
Simple API for XML (SAX)

See [SAX]
Simple Mail Transfer Protocol (SMTP)

See [SMTP]
Simple Object Access Protocol (SOAP)

See [SOAP]
SMTP (Simple Mail Transfer Protocol)

The SMTP standard defines how email servers send messages to each other. SMTP forms the backbone of the Internet email delivery system.

See also [IMAP]
See also [POP]
SOAP (Simple Object Access Protocol)

SOAP is an XML-based, de-facto standard for the encoding of XML-based messages. The messages can be intended as method names and parameters for a remote procedure call, or as an XML-encoded message to be processed and potentially passed on. SOAP is used as the underlying transport for all Web Services. SOAP is being formalized under the auspices of the W3C.

See also [JAX-RPC]
See also [JAXM]
See also [SOAP-RP]
See also [Web Service]
SOAP Routing Protocol

See [SOAP-RP]
SOAP-RP (SOAP Routing Protocol)

SOAP-RP is an evolving standard that adds the ability to route SOAP messages. The original SOAP specification only dealt with SOAP messages sent between two parties. A fully-functional messaging system should be able to support multi-hop messages. This is the intention of SOAP-RP.

See also [SOAP]
SQL (Structured Query Language)

SQL is a language used to create, update, retrieve, delete, and manage data in a relational database. SQL statements are defined from simple selection of data to the invocation of parameterized stored procedures. Although the core SQL statements are standardized, some vendors provide their own extensions.

See also [ANSI SQL]
See also [ANSI SQL 92]
SQL 92

See [ANSI SQL 92]
SQLJ

SQLJ defines a way of embedding SQL statements in Java code and, as such, is an alternative to the use of JDBC. SQLJ also defines how Java code can be used to create stored procedures. SQLJ is a vendor-independent initiative. More information can be found online at http://www.sqlj.org.

SSL (Secure Sockets Layer)

SSL defines a standard way of using Asymmetric Encryption across a sockets connection. This includes authentication of the server (and optionally the client) using digital certificates, and the exchange of encryption keys. SSL is commonly used as the basis for transporting secure versions of higher-level protocols, such as secure HTTP (HTTPS).

See also [HTTPS]
See also [RSA]
Standard Generalized Markup Language (SGML)

See [SGML]
Stateful Session EJB (or Stateful Session Bean)

See [Session EJB]
Stateless Session EJB (or Stateless Session Bean)

See [Session EJB]
Structured Query Language (SQL)

See [SQL]
Sybase

Sybase is one of the major database server vendors. Their products include the Adaptive Server database and the EAServer application server.

Symmetric Key Encryption

Encryption that uses the same key to encrypt and decrypt the data. The most widely used algorithm today is DES or one of its variants.

Tag Library

A tag library defines a set of XML-compliant tags that can be used as part of a JSP. Each tag is associated with a particular piece of Java code. When the JSP processor encounters one of these tags, it will invoke the associated Java code. The Java code may generate new content, or it may perform other tasks such as looping or access to J2EE resources.

See also [JSP]
Taglib

See [Tag Library]
Tag Library Descriptor

See [TLD]
TCK (Technology Compatibility Kits)

A kit comprising a suite of tests, tools and documentation provided by the Java Community Process. The TCK should be used to verify that a product complies with a particular Java technology specification.

See also [JCP]
Technology Compatibility Kits

See [TCK]
TLD

The Tag Library Descriptor file contains entries that map the tag names used in a JSP page onto the Java class files that implement that tag.

Tomcat

The Tomcat servlet engine is an open-source Java implementation delivered by the Apache Foundation. Tomcat (and the associated Jasper JSP engine that is delivered with it) have formed the reference implementation for servlets and JSPs. Tomcat can run as a standalone server, or it can be plugged into most Web servers, including the Apache Web Server.

See also [Jakarta Project]
UDDI (Universal Description, Discovery and Integration)

UDDI is one of the main technologies used for registration and discovery of Web Services. UDDI defines a set of SOAP messages that can be used to access XML-based data in a registry. It also defines a registry information model to structure the data stored and make it easier to search and navigate.

UDDI4J

UDDI4J is a Java-based API from IBM that provides Java wrappers for the UDDI SOAP messages. This API fills the same role as JAXR.

See also [JAXR]
See also [UDDI]
UML (Unified Modeling Language)

UML defines a largely diagrammatic language for capturing system requirements and expressing system design in object-oriented terms. UML diagrams are commonly used to illustrate class relationships and object interactions. UML was created from a merger of previous OO methodologies, including Booch, Jacobsen, and Object Modeling Technique (OMT).

UML Class Diagram

A UML class diagram represents a domain entity of some form that has usually been discovered by analysis. This entity can represent information, functionality, or both. An example would be a Customer class that had attributes and functionality associated with the role of a customer. Class diagrams can also be used to represent the relationships between different classes in a system.

See also [UML]
UML Collaboration Diagram

A UML collaboration diagram is a way of showing interactions between objects at the same time as showing the relationships between the objects. It combines some of the features of a class diagram with some of the features of a sequence diagram.

See also [UML]
UML Component Diagram

A UML component diagram shows the components in a system and their dependencies.

See also [UML]
UML Interaction Diagram

The term “UML interaction diagram” refers to any one of several forms of UML object-based diagrams that show the interactions between objects, such as sequence diagrams.

See also [UML Sequence Diagram]
UML Sequence Diagram

A UML sequence diagram shows the interactions between two or more objects over time. Each object is represented by a “swim lane” down the page, and messages are shown passing to and fro.

See also [UML]
Unified Modeling Language (UML)

See [UML]
Uniform Resource Identifier (URI)

See [URI]
Uniform Resource Locator (URL)

See [URL]
Universal Description, Discovery and Integration (UDDI)

See [UDDI]
URI (Uniform Resource Identifier)

A URI is a string-based name for an abstract or physical resource. The URI specification defines how specific resource identifiers, such as URLs, should be formatted. If you like, a URI is the “abstract base class” of other resource identifiers, such as URLs.

See also [URL]
URL (Uniform Resource Locator)

A URL is a string-based name for identifying a resource available across the Internet. An absolute URL begins with the protocol (http), then a colon (:), and then the specific address using that protocol. This usually contains a hostname, a relative path, and possibly other components. An example of a URL is http://java.sun.com.

See also [URI]
Validation

See [XML validation]
W3C (World Wide Web Consortium)

The W3C is a vendor-neutral body created in 1994 by Tim Berners-Lee to lead the development of common Web protocols. The W3C has more than 500 Member organizations from around the world.

WAP (Wireless Access Protocol)

WAP is a standard protocol for transporting data between a mobile device and a server. Most WAP servers take the form of gateways that provide onward access to Internet resources. The WAP protocol layers take the place of TCP/IP, and are designed to allow for the unpredictability of mobile connectivity.

See also [WML]
WAR (Web Archive)

A WAR file is the unit of deployment for one or more Web components. A WAR file is a JAR-format file that contains servlets and/or JSPs togetherwith deployment information and additional resources required by the component.

See also [EAR]
See also [JAR]
Web Application

A Web application provides functionality accessible over the Web, usually from a Web browser. A Web application can be delivered in a WAR file and deployed under a compliant Web container.

See also [Enterprise Application]
See also [WAR]
Web Archive (WAR)

See [WAR]
Web Component

A Web component is a unit of functionality that forms part of a Web application or Enterprise application. A Web component consists of one or more JSPs and/or servlets together with deployment information and additional resources required by the component. A Web component is deployed into a Web container that controls its access to resources and its lifecycle.

See also [Enterprise Application]
See also [WAR]
See also [Web Application]
See also [Web Container]
Web Container

A Web container provides services, such as access control, resource access, and lifecycle management for one or more Web components.

See also [Web Component]
Web Service

A Web Service is a programmatic interface for functionality accessible using Web protocols. Web Services are accessed over SOAP and may be registered in Web Service registries, such as UDDI. The functionality of a Web Service is usually defined in terms of WSDL.

See also [ebXML]
See also [SOAP]
See also [UDDI]
See also [WSDL]
Web Service Registry

A Web Service registry is an XML-based repository for information about Web Services. Service providers will register their services in such a repository and clients will search for required services there. Examples of Web Service Registry standards include UDDI and the ebXML Registry and Repository standard.

See also [ebXML]
See also [UDDI]
Web Services Description Language (WSDL)

See [WSDL]
Web Services Developer Pack (WSDP)

See [WSDP]
Web Tier

See [Presentation Tier]
Well-formed (of an XML document)

An XML document is said to be well-formed if it obeys certain rules regarding structure laid down in the XML standard. XML documents that are not well-formed cannot be manipulated by XML tools, such as parsers, and will generate errors when processed.

See also [XML]
See also [XML validation]
Wireless Access Protocol (WAP)

See [WAP]
Wireless Markup Language (WML)

See [WML]
WML (Wireless Markup Language)

WML is a markup language, similar to HTML, that is targeted at mobile devices. Due to the limited nature of most mobile displays, WML is far less feature-rich than HTML. WML documents are delivered to mobile devices over WAP.

See also [WAP]
World Wide Web Consortium (W3C)

See [W3C]
WSDL (Web Services Description Language)

WSDL is an XML syntax for describing a Web Service interface, the protocols through which that interface can be reached, and the location of one or more servers that implement the interface.

See also [Web Service]
WSDP (Web Services Developer Pack)

WSDP is a development environment from Sun Microsystems for developing Web Services. The pack includes a servlet and JSP engine (Tomcat) and support for JAXB, JAXM, JAXP, JAXR, SAAJ, JSF and JSTL.

WSDL4J

WSDL4J is a Java-based API for WSDL manipulation defined by IBM.

See also [WSDL]
Xalan

Xalan is an open-source XSLT processor from the Apache Foundation that is written in Java and is accessible from Java. Xalan supports the TrAX API for Java-based XML transformations. Xalan is used by the JAXP reference implementation as the basis for its XSLT transformation support.

See also [Apache]
Xerces

Xerces is an open-source XML parser from the Apache Foundation that is written in Java and accessible from Java. Xerces supports the SAX and DOM APIs and is very popular in the Java community. It is likely that Xerces will soon be merged with Crimson to create a single Apache XML processor.

See also [Apache]
See also [Crimson]
XML (eXtensible Markup Language)

XML is a tag-based syntax for adding information into text documents. XML does not define any specific tags, rather it defines the structure and conventions to be used by custom tags created for a variety of purposes. XML documents consist of a set of elements (delimited by opening and closing tags) and optional attributes on those elements. The XML specification is defined and maintained by the W3C.

See also [W3C]
XML Schema

The XML Schema standard defines an XML grammar that can be used to define the contents of an XML document. An XML schema can define the data types expected, sequencing of XML elements, the presence and values of attributes, and so on. XML schemas are associated with XML documents using namespaces. XML Schemas are replacing Document Type Definitions (DTDs) for describing XML documents.

See also [XML]
See also [DTD]
XML validation

A valid XML document is a well-formed XML document that conforms to a particular DTD or XML Schema. A parser can be asked to validate an XML document against a DTD or schema and will generate errors if the structure checking fails.

See also [DTD]
See also [Well-formed]
See also [XML Schema]
XPath

The W3C XPath standard describes a syntax for selecting parts of an XML document. XPath is used by XSLT to identify which parts of the source document are to be transformed by a particular rule.

See also [XSLT]
XPointer

The W3C XPointer standard describes how a fragment of an XML document can be identified using a URI combined with XPath syntax. This is similar in concept to an HTML-based URL that includes an anchor (for example http://www.tempuri.org/usefulfacts.html#WEBSERVICES) to locate a specific part of the document.

See also [XPath]
XSL (eXtensible Stylesheet Language)

The W3C XSL standard covers both XSLT and XSL-FO. Originally, there was intended to be a single XML-oriented style sheet language (such as is the case with the Cascading Style Sheet Language for HTML), but two distinct elements of functionality were identified (transformation and rendering), so two separate standards were spawned.

See also [XSL-FO]
See also [XSLT]
XSL-FO (eXtensible Stylesheet Language Formatting Objects)

XSL-FO defines a set of XML-based formatting objects that can be used to render a document. XSL-FO is a more generic rendering format than, for example, HTML, and can be used on a wider variety of devices and applications.

See also [XSL]
XSLT (eXtensible Stylesheet Language Transformations)

XSLT is a declarative language and processing model used to convert one dialect of XML into another dialect of XML (or some other text-based format). XSLT is frequently used when importing or exporting business documents in XML format.

See also [XSL]
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.133.151.220