Dear Readers, Welcome to J2EE Interview Questions and Answers have been designed specially to get you acquainted with the nature of questions you may encounter during your Job interview for the subject of J2EE. These J2EE Questions are very important for campus placement test and job interviews. As per my experience good interviewers hardly plan to ask any particular questions during your Job interview and these model questions are asked in the online technical test and interview of many IT companies.
J2EE is an environment for developing and deploying enterprise applications. The J2EE platform consists of a set of services, application programming interfaces
(APIs), and protocols that provide the functionality for developing multitiered, web-based applications.
A J2EE module consists of one or more J2EE components for the same container type and one component deployment descriptor of that type.
A J2EE component is a self-contained functional software unit that is assembled into a J2EE application with its related classes and files and communicates with other components. The J2EE specification defines the following J2EE components:
Application clients and applets are client components.
Java Servlet and JavaServer PagesTM (JSPTM) technology components are web components.
Enterprise JavaBeansTM (EJBTM) components (enterprise beans) are business components.
Resource adapter components provided by EIS and tool vendors.
1. Application client module
2. Web module
3. Enterprise JavaBeans module
4. Resource adapter module
5. What does application client module contain?
The application client module contains:
=> class files,
=> an application client deployment descriptoor.
Application client modules are packaged as JAR files with a .jar extension.
The web module contains:
=> JSP files,
=> class files for servlets,
=> GIF and HTML files, and
=> a Web deployment descriptor.
Web modules are packaged as JAR files with a .war (Web ARchive) extension.
There are no structural differences between the files they are all archived using zip-jar compression.
However, they are intended for different purposes.
=> Jar files (files with a .jar extension) arre intended to hold generic libraries of Java classes, resources, auxiliary files, etc.
=> War files (files with a .war extension) arre intended to contain complete Web applications. In this context, a Web application is defined as a single group of files, classes, resources, .jar files that can be packaged and accessed as one servlet context.
=> Ear files (files with a .ear extension) arre intended to contain complete enterprise applications.
In this context, an enterprise application is defined as a collection of .jar files, resources, classes, and multiple Web applications.
Each type of file (.jar, .war, .ear) is processed uniquely by application servers, servlet containers, EJB containers, etc.
The Session bean and Entity bean are two main parts of EJB container.
Session Bean:
=> represents a workflow on behalf of a cliennt
=> one-to-one logical mapping to a client.
=> created and destroyed by a client
=> not permanent objects
=> lives its EJB container(generally) does noot survive system shut down
=> two types: stateless and stateful beans Entity Bean
=> represents persistent data and behavior off this data
=> can be shared among multiple clients
=> persists across multiple invocations
=> findable permanent objects
=> outlives its EJB container, survives systeem shutdown
=> two types: container managed persistence(CCMP) and bean managed persistence(BMP)
A J2EE component that typically executes in a Web browser but can execute in a variety of other applications or devices that support the applet programming model.
A container that includes support for the applet programming model.
The process by which access to a method or resource is determined. Authorization depends on the determination of whether the principal associated with a request
through authentication is in a given security role. A security role is a logical grouping of users defined by the person who assembles the application. A
deployer maps security roles to security identities.
Security identities may be principals or groups in the operational environment.
An authorization rule that determines who is permitted to access a Web resource collection.
B2B stands for Business-to-business.
A JavaBeans component that corresponds to a JSP page that includes JavaServer Faces components. The backing bean defines properties for the components on the page
and methods that perform processing for the component.
This processing includes event handling, validation, and processing associated with navigation.
An authentication mechanism in which a Web server authenticates an entity via a user name and password obtained using the Web application's built-in authentication mechanism.
The mechanism whereby data transfer between an entity bean's variables and a resource manager is managed by the entity bean.
A transaction whose boundaries are defined by an enterprise bean.
Generating the code needed to process a well-defined portion of XML data.
Wiring UI components to back-end data sources such as backing bean properties.
The XML file that contains one or more asant targets.
A target is a set of tasks you want to be executed.
When starting asant, you can select which targets you want to have executed. When no target is given, the project's default target is executed.
The code that implements the functionality of an application. In the Enterprise JavaBeans architecture, this logic is implemented by the methods of an enterprise bean.
A method of an enterprise bean that implements the business logic or rules of an application.
33. What is callback methods Component methods called by the container to notify the component of important events in its life cycle.
Same as caller principal.
The principal that identifies the invoker of the enterprise bean method.
A deletion that triggers another deletion. A cascade delete can be specified for an entity bean that has container-managed persistence.
A predefined XML tag for character data that means "don't interpret these characters," as opposed to parsed character data (PCDATA), in which the normal
rules of XML syntax apply. CDATA sections are typically used to show examples of XML syntax.
A trusted organization that issues public key certificates and provides identification to the bearer.
An authentication mechanism that uses HTTP over SSL, in which the server and, optionally, the client authenticate each other with a public key certificate that conforms to a standard that is defined by X.509 Public Key Infrastructure.
In an XML document, text that is ignored unless the parser is specifically told to recognize it.
The point in a transaction when all updates to any resources involved in the transaction are made permanent.
The contract between a J2EE component and its container. The contract includes life-cycle management of the component, a context interface that the instance uses to obtain various information and services from its container, and a list of services that every container must provide for its components.
A mechanism whereby security information needed for signing on to a resource is provided by an application component.
A standard extension mechanism for containers that provides connectivity to enterprise information systems. A connector is specific to an enterprise information system and consists of a resource adapter and application development tools for enterprise information system connectivity. The resource adapter is plugged in to a container through its support for system-level contracts defined in the Connector architecture.
An architecture for integration of J2EE products with enterprise information systems. There are two parts to this architecture: a resource adapter provided by an
enterprise information system vendor and the J2EE product that allows this resource adapter to plug in.
This architecture defines a set of contracts that a resource adapter must support to plug in to a J2EE product-for example, transactions, security, and
resource management.
An entity that provides life-cycle management, security, deployment, and runtime services to J2EE components. Each type of container (EJB, Web, JSP, servlet, applet, and application client) also provides component-specific services.
The mechanism whereby data transfer between an entity bean's variables and a resource manager is managed by the entity bean's container.
The mechanism whereby security information needed for signing on to a resource is supplied by the container.
A transaction whose boundaries are defined by an EJB container. An entity bean must use container-managed transactions.
In an XML document, the part that occurs after the prolog, including the root element and everything it contains.
An object bound into the context associated with a servlet.
A name that gets mapped to the document root of a Web application.
The field values of a session bean plus the transitive closure of the objects reachable from the bean's fields. The transitive closure of a bean is defined in
terms of the serialization protocol for the Java programming language, that is, the fields that would be stored by serializing the bean instance.
Common Object Request Broker Architecture. A language-independent distributed object model specified by the OMG.
A method defined in the home interface and invoked by a client to create an enterprise bean.
The information describing the security attributes of a principal.
Cascading style sheet. A stylesheet used with HTML and XML documents to add a style to all elements marked with a particular tag, for the direction of browsers
or other presentation mechanisms.
Compatibility test suite. A suite of compatibility tests for verifying that a J2EE product complies with the J2EE platform specification.
The contents of an element in an XML stream, generally used when the element does not contain any subelements. When it does, the term content is generally used. When the only text in an XML structure is contained in simple elements and when elements that have subelements have little or no data mixed in, then that structure is often thought of as XML data, as opposed to an XML document.
Document-driven programming. The use of XML to define applications.
The very first thing in an XML document, which declares it as XML. The minimal declaration is . The declaration is part of the document prolog.
Mechanisms used in an application that are expressed in a declarative syntax in a deployment descriptor.
An act whereby one principal authorizes another principal to use its identity or privileges with some restrictions.
A person who installs J2EE modules and applications into an operational environment.
The process whereby software is installed into an operational environment.
An XML file provided with each module and J2EE application that describes how they should be deployed. The deployment descriptor directs a deployment tool to deploy a module or application with specific container options and describes specific configuration requirements that a deployer must resolve.
A JMS administered object that encapsulates the identity of a JMS queue or topic. See point-to-point messaging system, publish/subscribe messaging system.
68. What is digest authentication An authentication mechanism in which a Web application authenticates itself to a Web server by sending the server a message digest along with its HTTP request message. The digest is computed by employing a one-way hash algorithm to a concatenation of the HTTP request message and the client's password. The digest is typically much smaller than the HTTP request and doesn't contain the password.
An application made up of distinct components running in separate runtime environments, usually on different platforms connected via a network. Typical distributed
applications are two-tier (client-server), three-tier (client-middleware-server), and multitier (client-multiple middleware-multiple servers).
In general, an XML structure in which one or more elements contains text intermixed with subelements.
An API for accessing and manipulating XML documents as tree structures. DOM provides platform-neutral, language-neutral interfaces that enables programs and
scripts to dynamically access and modify content and structure in XML documents.
The top-level directory of a WAR. The document root is where JSP pages, client-side classes and archives, and static Web resources are stored.
Document type definition. An optional part of the XML document prolog, as specified by the XML standard. The DTD specifies constraints on the valid tags and tag
sequences that can be in the document. The DTD has a number of shortcomings, however, and this has led to various schema proposals. For example, the DTD entry
says that the XML element called username contains parsed character data-that is, text alone, with no other structural elements under it. The DTD includes
both the local subset, defined in the current file, and the external subset, which consists of the definitions contained in external DTD files that are
referenced in the local subset using a parameter entity.
An object whose class implements the enterprise bean's remote interface. A client never references an enterprise bean instance directly; a client always
references an EJB object. The class of an EJB object is generated by a container's deployment tools.
Software that provides services to an EJB container.
For example, an EJB container typically relies on a transaction manager that is part of the EJB server to perform the two-phase commit across all the participating resource managers. The J2EE architecture assumes that an EJB container is hosted by an EJB server from the same vendor, so it does not specify the contract between these two entities. An EJB server can host one or more EJB containers.
A vendor that supplies an EJB server.
A unit of XML data, delimited by tags. An XML element can enclose other elements.
A tag that does not enclose any content
A J2EE component that implements a business task or business entity and is hosted by an EJB container;
either an entity bean, a session bean, or a message-driven bean.
An application developer who produces enterprise bean classes, remote and home interfaces, and deployment descriptor files, and packages them in an EJB JAR
file.
The applications that constitute an enterprise's existing system for handling companywide information.
These applications provide an information infrastructure for an enterprise. An enterprise information system offers a well-defined set of services to its clients. These services are exposed to clients as local or remote interfaces or both.
Examples of enterprise information systems include enterprise resource planning systems, mainframe transaction processing systems, and legacy database systems.
An entity that provides enterprise information system-specific functionality to its clients. Examples are a record or set of records in a database system, a
business object in an enterprise resource planning system, and a transaction program in a transaction processing system.
A component architecture for the development and deployment of object-oriented, distributed, enterprise-level applications. Applications written using the Enterprise JavaBeans architecture are scalable, transactional, and secure.
Defines the queries for the finder and select methods of an entity bean having container-managed persistence. A subset of SQL92, EJB QL has extensions that allow navigation over the relationships defined in an entity bean's abstract schema.
A distinct, individual item that can be included in an XML document by referencing it. Such an entity reference can name an entity as small as a character (for example, <, which references the less-than symbol or left angle bracket, <). An entity reference can also reference an entire document, an external entity, or a collection of DTD definitions.
An enterprise bean that represents persistent data maintained in a database. An entity bean can manage its own persistence or can delegate this function to
its container. An entity bean is identified by a primary key. If the container in which an entity bean is hosted crashes, the entity bean, its primary key,
and any remote references survive the crash.
A reference to an entity that is substituted for the reference when the XML document is parsed. It can reference a predefined entity such as < or reference
one that is defined in the DTD. In the XML data, the reference could be to an entity that is defined in the local subset of the DTD or to an external XML file (an
external entity). The DTD can also carve out a segment of DTD specifications and give it a name so that it can be reused (included) at multiple points in the DTD
by defining a parameter entity.
A SAX parsing error is generally a validation error; in other words, it occurs when an XML document is not valid, although it can also occur if the declaration
specifies an XML version that the parser cannot handle. See also fatal error, warning.
XML.
An entity that exists as an external XML file, which is included in the XML document using an entity reference.
That part of a DTD that is defined by references to external DTD files.
A fatal error occurs in the SAX parser when a document is not well formed or otherwise cannot be processed.
See also error, warning.
An object that can transform the header or content (or both) of a request or response. Filters differ from Web components in that they usually do not themselves
create responses but rather modify or adapt the requests for a resource, and modify or adapt responses from a resource. A filter should not have any dependencies on a Web resource for which it is acting as a filter so that it can be composable with more than one type of Web resource.
A concatenation of XSLT transformations in which the output of one transformation becomes the input of the next.
A method defined in the home interface and invoked by a client to locate an entity bean.
An authentication mechanism in which a Web container provides an application-specific form for logging in.
This form of authentication uses Base64 encoding and can expose user names and passwords unless all connections are over SSL.
An entity that is referenced as part of an XML document's content, as distinct from a parameter entity, which is referenced in the DTD. A general entity can be a parsed entity or an unparsed entity.
An authenticated set of users classified by common traits such as job title or customer profile. Groups are also associated with a set of roles, and every
user that is a member of a group inherits all the roles assigned to that group.
An object that identifies an enterprise bean. A client can serialize the handle and then later deserialize it to obtain a reference to the enterprise bean.
An object that can be used to obtain a reference to the home interface. A home handle can be serialized and written to stable storage and deserialized to obtain the reference.
One of two interfaces for an enterprise bean. The home interface defines zero or more methods for managing an enterprise bean. The home interface of a session bean
defines create and remove methods, whereas the home interface of an entity bean defines create, finder, and remove methods.
Hypertext Markup Language. A markup language for hypertext documents on the Internet. HTML enables the embedding of images, sounds, video streams, form fields, references to other objects with URLs, and basic text formatting.
Hypertext Transfer Protocol. The Internet protocol used to retrieve hypertext objects from remote hosts.
HTTP messages consist of requests from client to server and responses from server to client.
HTTP layered over the SSL protocol.