Showing posts with label J2EE. Show all posts
Showing posts with label J2EE. Show all posts

Monday, March 8, 2010

J2EE Interview Questions

Question: What is J2EE?
Answer: J2EE Stands for Java 2 Enterprise Edition. J2EE is an environment for developing and deploying enterprise applications. J2EE specification is defined by Sun Microsystems Inc. The J2EE platform is one of the best platform for the development and deployment of enterprise applications. The J2EE platform is consists of a set of services, application programming interfaces (APIs), and protocols, which provides the functionality necessary for developing multi-tiered, web-based applications. You can download the J2EE SDK and development tools from http://java.sun.com/.


Question: What do you understand by a J2EE module?
Answer: A J2EE module is a software unit that consists of one or more J2EE components of the same container type along with one deployment descriptor of that type. J2EE specification defines four types of modules:
a) EJB
b) Web
c) application client and
d) resource adapter
  
In the J2EE applications modules can be deployed as stand-alone units. Modules can also be assembled into J2EE applications.
   

Question: Tell me something about J2EE component?
Answer: J2EE component is
a self-contained functional software unit supported by a container and configurable at deployment time. The J2EE specification defines the following J2EE components:
  • Application clients and applets are components that run on the client.
  • Java servlet and JavaServer Pages (JSP) technology components are Web components that run on the server.
  • Enterprise JavaBeans (EJB) components (enterprise beans) are business components that run on the server. J2EE components are written in the Java programming language and are compiled in the same way as any program in the language. The difference between J2EE components and "standard" Java classes is that J2EE components are assembled into a J2EE application, verified to be well formed and in compliance with the J2EE specification, and deployed to production, where they are run and managed by the J2EE server or client container.
    Source: J2EE v1.4 Glossary
        

Question: What are the contents of web module?
Answer: A web module may contain:
a) JSP files
b) Java classes
c) gif and html files and
d) web component deployment descriptors
  
Question: Differentiate between .ear,  .jar and .war files.
Answer: These files are simply zipped file using java jar tool. These files are created for different purposes. Here is the description of these files:
.jar files: These files are with the .jar extenstion. The .jar files contains the libraries, resources and accessories files like property files.
.war files: These files are with the .war extension. The war file contains the web application that can be deployed on the any servlet/jsp container. The .war file contains jsp, html, javascript and other files for necessary for the development of web applications.
.ear files: The .ear file contains the EJB modules of the application.
  

Question: What is the difference between Session Bean and Entity Bean?
Answer:  

Session Bean: Session is one of the EJBs and it represents a single client inside the Application Server. Stateless session is easy to develop and its efficient. As compare to entity beans session beans require few server resources.

A session bean is similar to an interactive session and is not shared; it can have only one client, in the same way that an interactive session can have only one user. A session bean is not persistent and it is destroyed once the session terminates.
 
Entity Bean: An entity bean represents persistent global data from the database. Entity beans data are stored into database.
    

Question: Why J2EE is suitable for the development distributed multi-tiered enterprise applications?
Answer: The J2EE platform consists of multi-tiered distributed application model. J2EE applications allows the developers to design and implement the business logic into components according to business requirement. J2EE architecture allows the development of multi-tired applications and the developed applications can be installed on different machines depending on the tier in the multi-tiered J2EE environment . The J2EE application parts are:

a) Client-tier components run on the client machine.
b) Web-tier components run on the J2EE server.
c) Business-tier components run on the J2EE server and the
d) Enterprise information system (EIS)-tier software runs on the EIS servers
    

Question: Why do understand by a container?
Answer: Normally, thin-client multi-tiered applications are hard to write because they involve many lines of intricate code to handle transaction and state management, multithreading, resource pooling, and other complex low-level details. The component-based and platform-independent J2EE architecture makes J2EE applications easy to write because business logic is organized into reusable components. In addition, the J2EE server provides underlying services in the form of a container for every component type. Because you do not have to develop these services yourself, you are free to concentrate on solving the business problem at hand (Source: http://java.sun.com/j2ee/1.3/docs/tutorial/doc/Overview4.html ).

In short containers are the interface between a component and the low-level platform specific functionality that supports the component. The application like Web, enterprise bean, or application client component must be assembled and deployed on the J2EE container before executing.
  

Question: What are the services provided by a container?
Answer: The services provided by container are as follows:
a) Transaction management for the bean
b) Security for the bean
c) Persistence of the bean
d) Remote access to the bean
e) Lifecycle management of the bean
f) Database-connection pooling
g) Instance pooling for the bean
   

Question: What are types of J2EE clients?
Answer: J2EE clients are the software that access the services components installed on the J2EE container. Following are the J2EE clients:
a) Applets
b) Java-Web Start clients
c) Wireless clients
d) Web applications
  

Wednesday, February 3, 2010

J2EE Interview Questions and Answers7

What is entity bean ?
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.
What is entity reference ?
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. 


What is error ?
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.


What is Extensible Markup Language ?
XML.

What is external entity ?
An entity that exists as an external XML file, which is included in the XML document using an entity reference.

What is external subset ?
That part of a DTD that is defined by references to external DTD files.

What is fatal error ?
A fatal error occurs in the SAX parser when a document is not well formed or otherwise cannot be processed. See also error, warning.

What is filter ?
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.

What is filter chain ?
A concatenation of XSLT transformations in which the output of one transformation becomes the input of the next.

What is finder method ?
A method defined in the Interview Questions - Home interface and invoked by a client to locate an entity bean.

What is form-based authentication ?
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

What is general entity ?
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.

What is group ?
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.

What is handle ?
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.

What is Interview Questions - Home handle ?
An object that can be used to obtain a reference to the Interview Questions - Home interface. A Interview Questions - Home handle can be serialized and written to stable storage and de-serialized to obtain the reference.

What is Interview Questions - Home interface ?
One of two interfaces for an enterprise bean. The Interview Questions - Home interface defines zero or more methods for managing an enterprise bean. The Interview Questions - Home interface of a session bean defines create and remove methods, whereas the Interview Questions - Home interface of an entity bean defines create, finder, and remove methods.

J2EE Interview Questions and Answers6

What is EJB Home object ?
An object that provides the life-cycle operations (create, remove, find) for an enterprise bean. The class for the EJB Home object is generated by the container's deployment tools. The EJB Home object implements the enterprise bean's Home interface. The client references an EJB Home object to perform life-cycle operations on an EJB object. The client uses JNDI to locate an EJB Home object.
What is EJB JAR file ?
A JAR archive that contains an EJB module.

What is EJB module ?
A deployable unit that consists of one or more enterprise beans and an EJB deployment descriptor. 


What is EJB object ?
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.

What is EJB server ?
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.

What is EJB server provider ?
A vendor that supplies an EJB server.

What is element ?
A unit of XML data, delimited by tags. An XML element can enclose other elements.

What is empty tag ?
A tag that does not enclose any content.

What is enterprise bean ?
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.

What is enterprise bean provider ?
An application developer who produces enterprise bean classes, remote and Interview Questions - Home interfaces, and deployment descriptor files, and packages them in an EJB JAR file.

What is enterprise information system ?
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.

What is enterprise information system resource ?
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.

What is Enterprise JavaBeans (EJB) ?
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.

What is Enterprise JavaBeans Query Language (EJB QL) ?
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.

What is an entity ?
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.

J2EE Interview Questions and Answers5

What is deployment descriptor ?
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.
What is destination ?
A JMS administered object that encapsulates the identity of a JMS queue or topic. See point-to-point messaging system, publish/subscribe messaging system. 


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.


What is distributed application ?
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).

What is document ?
In general, an XML structure in which one or more elements contains text intermixed with subelements.

What is Document Object Model ?
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.


What is document root ?
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.

What is DTD ?
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.

What is durable subscription ?
In a JMS publish/subscribe messaging system, a subscription that continues to exist whether or not there is a current active subscriber object. If there is no active subscriber, the JMS provider retains the subscription's messages until they are received by the subscription or until they expire.

What is EAR file ?
Enterprise Archive file. A JAR archive that contains a J2EE application.

What is ebXML ?
Electronic Business XML. A group of specifications designed to enable enterprises to conduct business through the exchange of XML-based messages. It is sponsored by OASIS and the United Nations Centre for the Facilitation of Procedures and Practices in Administration, Commerce and Transport (U.N./CEFACT).

What is EJB ?
Enterprise JavaBeans.

What is EJB container ?
A container that implements the EJB component contract of the J2EE architecture. This contract specifies a runtime environment for enterprise beans that includes security, concurrency, life-cycle management, transactions, deployment, naming, and other services. An EJB container is provided by an EJB or J2EE server.

What is EJB container provider ?
A vendor that supplies an EJB container.

What is EJB context ?
A vendor that supplies an EJB container. An object that allows an enterprise bean to invoke services provided by the container and to obtain the information about the caller of a client-invoked method.

J2EE Interview Questions and Answers4

What is container-managed sign-on ?
The mechanism whereby security information needed for signing on to a resource is supplied by the container.
What is container-managed transaction ?
A transaction whose boundaries are defined by an EJB container. An entity bean must use container-managed transactions.

What is content ?
In an XML document, the part that occurs after the prolog, including the root element and everything it contains. 


What is context attribute ?
An object bound into the context associated with a servlet.

What is context root ?
A name that gets mapped to the document root of a Web application.

What is conversational state ?
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.

What is CORBA ?
Common Object Request Broker Architecture. A language-independent distributed object model specified by the OMG.

What is create method ?
A method defined in the Interview Questions - Home interface and invoked by a client to create an enterprise bean.

What is credentials ?
The information describing the security attributes of a principal.

What is CSS ?
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.

What is CTS ?
Compatibility test suite. A suite of compatibility tests for verifying that a J2EE product complies with the J2EE platform specification.

What is data ?
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.

What is DDP ?
Document-driven programming. The use of XML to define applications.

What is declaration ?
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.

What is declarative security ?
Mechanisms used in an application that are expressed in a declarative syntax in a deployment descriptor.

What is delegation ?
An act whereby one principal authorizes another principal to use its identity or privileges with some restrictions.

What is deployer ?
A person who installs J2EE modules and applications into an operational environment.

What is deployment ?
The process whereby software is installed into an operational environment.

J2EE Interview Questions and Answers3

What is binding (JavaServer Faces technology) ?
Wiring UI components to back-end data sources such as backing bean properties.
What is build file ?
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.


What is business logic ?
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.

What is business method ?
A method of an enterprise bean that implements the business logic or rules of an application.

What is callback methods ?
Component methods called by the container to notify the component of important events in its life cycle.

What is caller ?
Same as caller principal.

What is caller principal ?
The principal that identifies the invoker of the enterprise bean method.

What is cascade delete ?
A deletion that triggers another deletion. A cascade delete can be specified for an entity bean that has container-managed persistence.

What is CDATA ?
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.

What is certificate authority ?
A trusted organization that issues public key certificates and provides identification to the bearer.

What is client-certificate authentication ?
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.

What is comment ?
In an XML document, text that is ignored unless the parser is specifically told to recognize it.

What is commit ?
The point in a transaction when all updates to any resources involved in the transaction are made permanent.

What is component contract ?
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.

What is component-managed sign-on ?
A mechanism whereby security information needed for signing on to a resource is provided by an application component.

What is connector ?
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.

What is container-managed persistence ?
The mechanism whereby data transfer between an entity bean's variables and a resource manager is managed by the entity bean's container.

J2EE Interview Questions and Answers2



What is "application client" ?
A first-tier J2EE client component that executes in its own Java virtual machine. Application clients have access to some J2EE platform APIs.
What is "application client container" ?
A container that supports application client components. 


What is "application client module" ?
A software unit that consists of one or more classes and an application client deployment descriptor.

What is "application component provider" ?
A vendor that provides the Java classes that implement components' methods, JSP page definitions, and any required deployment descriptors.

What is "application configuration resource file" ?
An XML file used to configure resources for a Java Server Faces application, to define navigation rules for the application, and to register converters, Validator, listeners, renders, and components with the application.

What is "archiving" ?
The process of saving the state of an object and restoring it.

What is "asant" ?
A Java-based build tool that can be extended using Java classes. The configuration files are XML-based, calling out a target tree where various tasks get executed.

What is "attribute"?
A qualifier on an XML tag that provides additional information.

What is authentication ?
The process that verifies the identity of a user, device, or other entity in a computer system, usually as a prerequisite to allowing access to resources in a system. The Java servlet specification requires three types of authentication-basic, form-based, and mutual-and supports digest authentication.

What is authorization ?
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.

What is authorization constraint ?
An authorization rule that determines who is permitted to access a Web resource collection.

What is B2B ?
B2B stands for Business-to-business.

What is backing bean ?
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.

What is basic authentication ?
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.

What is bean-managed persistence ?
The mechanism whereby data transfer between an entity bean's variables and a resource manager is managed by the entity bean.

What is bean-managed transaction ?
A transaction whose boundaries are defined by an enterprise bean.

What is binding (XML) ?
Generating the code needed to process a well-defined portion of XML data.

J2EE Interview Questions and Answers1

What is J2EE?
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 multitier, web-based applications.
What is the J2EE module?
A J2EE module consists of one or more J2EE components for the same container type and one component deployment descriptor of that type.