HOME      BLOG       FORUMS      CONTACT       ABOUT

JSP/Servlets interview questions – Part 1

September 7th, 2011 Albin Joseph Posted in JSP/Servlet interview questions | 2 Comments »

21. What are the implicit objects?
Certain objects that are available for the use in JSP documents without being declared first. These objects are parsed by the JSP engine and inserted into the generated servlet. The implicit objects are: request, response, pageContext, session, application, out, config, page, exception

22. What’s the difference between forward and sendRedirect?
forward is server side redirect and sendRedirect is client side redirect. When you invoke a forward request, the request is sent to another resource on the server, without the client being informed that a different resource is going to process the request. This process occurs completely with in the web container And then returns to the calling method. When a sendRedirect method is invoked, it causes the web container to return to the browser indicating that a new URL should be requested. Because the browser issues a completely new request any object that are stored as request attributes before the redirect occurs will be lost. This extra round trip a redirect is slower than forward. Client can disable sendRedirect.

23. What are the different scopes available ?
page, request, session, application

24. Is JSP extensible ?
Yes, it is. JSP technology is extensible through the development of custom actions, or tags, which are encapsulated in tag libraries.

25. What’s the Servlet Interface?
The central abstraction in the Servlet API is the Servlet interface. All servlets implement this interface, either directly or, more commonly, by extending a class that implements it such as HttpServlet.

26. What are two different types of Servlets ?
GenericServlet and HttpServlet. HttpServlet is used to implement HTTP protocol, where as Generic servlet can implement any protocol.

27. What is the life cycle of servlet?
Each servlet has the same life cycle: first, the server loads and initializes the servlet by calling the init method. This init() method will be executed only once during the life time of a servlet. Then when a client makes a request, it executes the service method. finally it executes the destroy() method when server removes the servlet.

28. Can we call destroy() method on servlets from service method ?
Yes.

29. What is the need of super.init (config) in servlets ?
Then only we will be able to access the ServletConfig from our servlet. If there is no ServletConfig our servlet will not have any servlet nature.

30. What is the difference between GenericServlet and HttpServlet?
GenericServlet supports any protocol. HttpServlet supports only HTTP protocol. By extending GenericServlet we can write a servlet that supports our own custom protocol or any other protocol.

32. Can we write a constructor for servlet ?
Yes. But the container will always call the default constructor only. If default constructor is not present , the container will throw an exception.

33. What is the difference between <%@ include ...> (directive include) and ?
@ include is static include. It is inline inclusion. The contents of the file will get included on Translation phase. It is something like inline inclusion. We cannot have a dynamic filename for directive include. is dynamic include. Here the included file will be processed as a separate file and the response will be included. We can have a dynamic filename for . We can also pass parameters to

34. Can I just abort processing a JSP?
Yes. You can put a return statement to abort JSP processing.

35. What are the parameters for service method ?
ServletRequest and ServletResponse

36. What are cookies ?
Cookies are small textual information that are stored on client computer. Cookies are used for session tracking.

37. How do I prevent the output of my JSP or Servlet pages from being cached by the browser?
By setting appropriate HTTP header attributes we can prevent caching by the browser

<%
response.setHeader("Cache-Control","no-store"); //HTTP 1.1
response.setHeader("Pragma","no-cache"); //HTTP 1.0
response.setDateHeader ("Expires", 0); //prevents caching at the proxy server
%>

38. How to refer the “this” variable within a JSP page?
Under JSP 1.0, the page implicit object page is equivalent to “this”, and returns a reference to the servlet generated by the JSP page.

39. How many JSP scripting elements and what are they?
There are three scripting elements in JSP . They are declarations, scriptlets, expressions.

40. Can we implement an interface in JSP ?
No.

Tags: , , ,

AddThis Social Bookmark Button

JSP/Servlets interview questions Part 2

September 4th, 2011 Albin Joseph Posted in JSP/Servlet interview questions | No Comments »

40. What is the meaning of response has already been committed error?
You will get this error only when you try to redirect a page after you already have flushed the output buffer. This happens because HTTP specification force the header to be set up before the lay out of the page can be shown. When you try to send a redirect status, your HTTP server cannot send it right now if it hasn’t finished to set up the header. Simply it is giving the error due to the specification of HTTP 1.0 and 1.1

42. How do I use a scriptlet to initialize a newly instantiated bean?
A jsp:useBean action may optionally have a body. If the body is specified, its contents will be automatically invoked when the specified bean is instantiated (Only at the time of instantiation.) Typically, the body will contain scriptlets or jsp:setProperty tags to initialize the newly instantiated bean, although you are not restricted to using those alone.

43. What is JSP?
JSP is a server side scripting technology. JSP allows Java as well as a few special tags to be embedded into a web file (HTML/XML, etc). The suffix must ends with .jsp.

44. What are JSP Actions?
JSP actions use constructs in XML syntax to control the behavior of the servlet engine. You can dynamically insert a file, reuse JavaBeans components, forward the user to another page, or generate HTML for the Java plugin. Available actions include: jsp:include, jsp:useBean, jsp:setProperty, jsp:getProperty, jsp:forward and Jsp: plugin

45. What is the difference between ServletContext and ServletConfig?
The ServletConfig gives the information about the servlet initialization parameters. The servlet engine implements the ServletConfig interface in order to pass configuration information to a servlet. The server passes an object that implements the ServletConfig interface to the servlet’s init() method. The ServletContext gives information about the container. The ServletContext interface provides information to servlets regarding the environment in which they are running. It also provides standard way for servlets to write events to a log file.

46. How can a servlet refresh automatically?
We can use a client-side Refresh or Server Push

47. What is Server side push?
Server Side push is useful when data needs to change regularly on the clients application or browser, without intervention from client. The mechanism used is, when client first connects to Server, then Server keeps the TCP/IP connection open.

48. What is client side refresh?
The standard HTTP protocols ways of refreshing the page, which is normally supported by all browsers.

<META HTTP-EQUIV="Refresh" CONTENT="5; URL=/servlet/MyServlet/">

This will refresh the page in the browser automatically and loads the new data every 5 seconds.

49. What is the Max amount of information that can be saved in a Session Object ?
There is no such limit on the amount of information that can be saved in a Session Object. The only limit is the Session ID length , which should not exceed more than 4K.

50. Why should we go for inter servlet communication?
The three major reasons to use inter servlet communication are: a) Direct servlet manipulation – allows to gain access to the other currently loaded servlets and perform certain tasks (through the ServletContext object) b) Servlet reuse – allows the servlet to reuse the public methods of another servlet. c) Servlet collaboration – requires to communicate with each other by sharing specific information (through method invocation)

51. What is a output comment?
A comment that is sent to the client in the viewable page source. The JSP engine handles an output comment as un interpreted HTML text, returning the comment in the HTML output sent to the client. You can see the comment by viewing the page source from your Web browser.

52. What is a Hidden Comment
Hidden Comments are JSP comments. A comments that documents the JSP page but is not sent to the client. The JSP engine ignores a hidden comment, and does not process any code within hidden comment tags.

53. What are the differences between a session and a cookie?
Session is stored in server but cookie stored in client. Session should work regardless of the settings on the client browser. There is no limit on the amount of data that can be stored on session. But it is limited in cookie. Session can store objects and cookies can store only strings. Cookies are faster than session.

54. What is HttpTunneling?
HTTP tunneling is used to encapsulate other protocols within the HTTP or HTTPS protocols. Normally the intranet is blocked by a firewall and the network is exposed to the outer world only through a specific web server port, that listens for only HTTP requests. To use any other protocol, that by passes the firewall, the protocol is embedded in HTTP and send as HttpRequest.

55. How to pass information from JSP to included JSP?
By using tag.

56. What is the better way to enable thread-safe servlets and JSPs? SingleThreadModel Synchronization?
The better approach is to use synchronization. Because SingleThreadModel is not scalable. SingleThreadModel is pretty resource intensive from web server’s perspective. The most serious issue is when the number of concurrent requests exhaust the servlet instance pool. In that case, all the un serviced requests are queued until something becomes free – which results in poor performance.

57. What is the difference between ServletContext and PageContext?
ServletContext gives the information about the container and PageContext gives the information about the Request

58. Why in Servlet 2.4 specification SingleThreadModel has been deprecated?
SingleThreadModel is pretty resource intensive from web server’s perspective. When the number of concurrent requests exhaust the servlet instance pool, all the un serviced requests are queued until something becomes free – which results in poor performance.

59. How do you pass data (including JavaBeans) to a JSP from a servlet?
By forwarding the request to the servlet ( the data must be there in the request scope) we can pass the data from a JSP to servlet. Also we can use a session to pass the data.

60. How can I set a cookie?

	Cookie c = new Cookie("name","value");
    response.addCookie(c);

Tags: , , ,

AddThis Social Bookmark Button

JSP/Servlets interview questions – Part 3

August 30th, 2011 Albin Joseph Posted in JSP/Servlet interview questions | No Comments »

61. How will you delete a cookie?

	Cookie c = new Cookie ("name", null);
	c.setMaxAge(0);
	response.addCookie(killCookie);
	

62. What is the difference between Context init parameter and Servlet init parameter?
Servlet init parameters are for a single servlet only. No body out side that servlet can access that. It is declared inside the tag inside Deployment Descriptor, where as context init parameter is for the entire web application. Any servlet or JSP in that web application can access context init parameter. Context parameters are declared in a tag directly inside the tag. The methods for accessing context init parameter is getServletContext ().getInitParamter (“name”) where as method for accessing servlet init parameter is getServletConfig ().getInitParamter (“name”);

63. What are the different ways for getting a servlet context?
We will get ServletContext by calling getServletConfig ().getServletContext (). This is because a ServletConfig always hold a reference to ServletContext. By calling this.getServletContext () also we will get a ServletContext object.

64. What is the difference between an attribute and a parameter?
The return type of attribute is object, where the return type of parameter is String. The method to retrieve attribute is getAttribute () where as for parameter is getParameter (). We have a method setAttribute to set an attribute. But there is no setters available for setting a parameter.

65. How to make a context thread safe?
Synchronizing the ServletContext is the only solution to make a ServletContext thread safe.
Eg:

	synchronized (getServletContext ()) {
		  // do whatever you want with thread safe context.
	}
	

66. What is the difference between setting the session time out in deployment descriptor and setting the time out programmatically?
In DD time out is specified in terms of minutes only. But in programmatically it is specified in seconds. A session time out value of zero or less in DD means that the session will never expire. To specify session will never expire programmatically it must be negative value.

67. What JSP lifecycle methods we can override?
You cannot override the _jspService() method within a JSP page. You can however, override the jspInit() and jspDestroy() methods within a JSP page.

68. How will you include a static file in a JSP page?
You can include a static resource to a JSP using or <%@ inlcude >.

69. How you can perform browser redirection?
We can use the method sendRedirect of HttpServletResponse or forward method of RequestDispatcher.

70. Can we use ServletOutputStream object from a JSP page?
No. You are supposed to use JSPWriter object (given to you in the form of the implicit object out) only for replying to clients.

71. How can you stop JSP execution in the middle of processing a request?
We can use the return statement to stop the processing of JSP. Because JSP is compiled to servlet and all the statements will go inside service method, any time you can stop the processing using return statement.

72. How can I invoke a JSP error page from a servlet?
You can invoke the JSP error page and pass the exception object to it from within a servlet. For that you need to create a request dispatcher for the JSP error page, and pass the exception object as a javax.servlet.jsp.jspException request attribute.

73. How will you pass information from JSP to included JSP?
By using <%jsp:param> tag.

74. How does JSP handle runtime exceptions?
Using errorPage attribute of page directive JSP handles runtime exceptions. We need to specify isErrorPage=true if the current page is intended to use as a JSP error page.

75. How can I enable session tracking for JSP pages if the browser has disabled cookies?
By default session tracking uses cookies to associate a session identifier with a user. If the browser does not support cookies, or if cookies are disabled, you can still use session tracking using URL rewriting. For URL rewriting to be effective, you need to append the session ID for each and every link that is part of your servlet response. By using the methods response.encodeURL() and response.encodeRedirectURL() we can achieve this.

76. How can you declare methods in your JSP page?
You can declare methods as declarations in your JSP page. The methods can then be invoked within any other methods you declare, or within JSP scriptlets and expressions.

77. How can we set the inactivity period on a per-session basis?
We can set the session time out programmatically by using the method setMaxInactiveInterval() of HttpSession.

78. How do you pass an init parameter to a JSP?
You need to configure the DD for passing init parameter to a JSP. You can configure the DD as follows.

	
		  test.jsp
		  test.jsp
			   
Abc
Xyz
		   
	
	

79. How can my application get to know when a HttpSession is removed?
You can define a class which implements HttpSessionBindingListener and override the valueUnbound() method.

80. How many cookies can one set in the response object of the servlet? Also, are there any restrictions on the size of cookies?
If the client is using Netscape, the browser can receive and store 300 total cookies and 4 kilobytes per cookie. And the no of cookie is restricted to 20 cookies per server or domain

Tags: , , , ,

AddThis Social Bookmark Button

JSP/Servlets interview questions – Part 4

August 29th, 2011 Albin Joseph Posted in JSP/Servlet interview questions | No Comments »

81. When a session object gets added or removed to the session, which event will get notified ?
HttpSessionBindingListener will get notified When an object is added and/or removed from the session object, or when the session is invalidated, in which case the objects are first removed from the session, whether the session is invalidated manually or automatically (timeout).

82. What is URL Encoding and URL Decoding ?
URL encoding is the method of replacing all the spaces and other extra characters into their corresponding Hex Characters and Decoding is the process of converting all Hex Characters back to their normal form.

83. What is the difference between an applet and a servlet?
Servlets run inside a web server and applets run inside web browsers. Applets must have graphical user interfaces whereas servlets have no graphical user interfaces.

84. What are the different web servers available name few of them?
Tomcat, Java Web Server, JRun,

85. What is a Java Bean?
A Java Bean is a software component that has been designed to be reusable in a variety of different environments.

86. What are the different types of ServletEngines?
The different types of ServletEngines available are:- Standalone ServletEngine: This is a server that includes built-in support for servlets. Add-on ServletEngine: It is a plug-in to an existing server. It adds servlet support to a server that was not originally designed with servlets in mind.

87. What is a Session Id?
It is a unique id assigned by the server to the user when a user starts a session.

88. What is use of parseQueryString ?
It parses a query string and builds a Hashtable of key-value pairs, where the values are arrays of strings. The query string should have the form of a string packaged by the GET or POST method.

89. When init() and Destroy() will be called.
init() is called whenever the servlet is loaded for the first time into the web server. Destroy will be called whenever the servlet is removed from the web server.

90. What is the use of setComment and getComment methods in Cookies ?
setComment: If a web browser presents this cookie to a user, the cookie’s purpose will be described using this comment. This is not supported by version zero cookies.
getComment: Returns the comment describing the purpose of this cookie, or null if no such comment has been defined.

91. Why we are used setMaxAge() and getMaxAge() in Cookies ?
setMaxAge : Sets the maximum age of the cookie. The cookie will expire after that many seconds have passed. Negative values indicate the default behavior, and will be deleted when the browser closes.
getMaxAge : Returns the maximum specified age of the cookie. If none was specified, a negative value is returned, indicating the default behavior described with setMaxAge.

92. What is the use of setSecure() and getSecure() in Cookies ?
setSecure method indicates to the web browser that the cookie should only be sent using a secure protocol (https). getSecure method returns the value of the ‘secure’ flag.

93. How do you communicate between the servlets?
We can communicate between servlets by using RequestDespatcher interface and servlet chaining.

94. What is Servlet chaining?
Servlet chaining is a technique in which two or more servlets can cooperate in servicing a single request. In servlet chaining, one servlet’s output is the input of next servlet. This process continues until the last servlet is reached. Its output is then sent back to the client. We are achieving Servlet Chaining with the help of RequestDispatcher.

95. How will you communicate from an applet to servlet?
There are three ways to communicate from an applet to servlet and they are: HTTP Communication (Text-based and object-based) , Socket Communication and RMI Communication

96. Can we call a servlet with parameters in the URL?
Yes. You can call a servlet with parameters in the URL like ?param=value

97. How do servlets handle multiple simultaneous requests?
When a request comes in, the web server will start a new thread and the request is assigned to a thread, which calls a service method of the servlet.

98. Explain the directory structure of a web application?
The directory structure of a web application consists of two parts. A private directory called WEB-INF and a public resource directory which contains files server to public. WEB-INF folder consists of web.xml (the deployment descriptor), classes directory (where we keeps all our classes and servlets) and lib directory (where we keeps all our jar files). The public folder contains the static resources of the web application.

99. What is pre initialization of a servlet?
A container doesn’t initialize the servlets when it starts up. It initializes a servlet when it receives a request for that servlet first time. This is called lazy loading. The servlet specification defines the element, which can be specified in the deployment descriptor to make the servlet container load and initialize the servlet as soon as it starts up. The process of loading a servlet before any request comes in is called preloading or pre initializing a servlet.

100. What are the uses of ServletRequest?
The ServletRequest gives information such as the names of the parameters passed by the client, the protocol (scheme) being used by the client, and the names of the remote host that made the request and the server that received it. The input stream, ServletInputStream.

Tags: , , ,

AddThis Social Bookmark Button

JSP/Servlet interview questions – 5

August 26th, 2011 Albin Joseph Posted in JSP/Servlet interview questions | No Comments »

101. What are the uses of ServletResponse interface?
ServletResponse allows the servlet to set the content length and MIME type of that response. It provides an output stream, ServletOutputStream and a Writer through which the servlet can send data.

102. How HTTP Servlet handles client requests?
An HTTP Servlet handles client requests through its service method. The service method supports standard HTTP client requests by dispatching each request to a method designed to handle that request.

103. Is HTML page a web component?
No. Static HTML pages and applets are not considered as web components by J2EE specification. Even the server-side utility classes are not considered web components.

104. What is the container?
A container is a runtime support of a system-level entity. Containers provide components with services such as lifecycle management, security, deployment, and threading.

105. What is the web container?
Servlet and JSP containers are collectively referred to as Web containers.

106. What is deployment descriptor?
A deployment descriptor is an XML based file which describes a web application’s deployment settings. The name of deployment descriptor of a web application is web.xml.

107. How can I print the stack trace of an exception from a JSP page?
By creating an object of PrintWriter we can print the stack trace in JSP page. Eg:
PrintWriter pw = response.getWriter();
exception.printStackTrace(pw);

108. Do objects stored in a HTTP Session need to be serializable? Or can it store any object?
No, the objects need not to be serializable. We can store any type of objects in session.

109. What is the difference between JspWriter and PrintWriter?
JspWriter is buffered.

110. How can you implement singleton pattern in servlets ?
All servlets are singleton only , if the servlet is not implementing SingleThreadModel.

111. What is the difference between an application server and a web server?
Everything in web server must be achieved programmatically. But application server provides a lot of services like security, transaction , scalability. Application server will be having EJB support where web server don’t have an EJB support.

112. What is servlet exception?
It indicates that there is an exception occurred in the servlet.

113. Can we implement Runnable interface from within our servlet?
Our servlet can implement the Runnable interface.

114. What is a WAR file?
WAR stands for Web Archive. It is a compressed version of your web application. You can use this WAR file to deploy your web application.

115. What is a servlet filter?
Servlet filters are pluggable Web components that allow us to implement pre-processing and post-processing logic in our Web applications.

Tags: , , , ,

AddThis Social Bookmark Button

EJB interview questions

August 22nd, 2011 Albin Joseph Posted in EJB interview questions | No Comments »

Here you can find out a list of interview questions for EJB. These questions are often asked by the interviewer for EJB (Enterprise Java Bean) interview. We put our  maximum effort to make this answers error free. But still there might be some errors. If you feel out any answer given for any  question is wrong, please, please inform us by clicking on report bug button provided below.

In this section we are offering interview questions for EJB only. if you need interview questions for any other java related technologies , please check the relevant sections.

1. What is EJB?
Enterprise JavaBeans (EJB) technology is the server-side component architecture for the Java 2 Platform, Enterprise Edition (J2EE) platform. EJB technology enables rapid and simplified development of distributed, transactional, secure and portable applications based on Java technology.

2. What are the different type of Enterprise JavaBeans ?
There are 3 types of enterprise beans, namely: Session bean, Entity beans and Message driven beans.

3. What is Session Bean ?
Session bean represents a single client inside the J2EE server. To access the application deployed in the server the client invokes methods on the session bean. The session bean performs the task shielding the client from the complexity of the business logic.

Session bean components implement the javax.ejb.SessionBean interface. Session beans can act as agents modeling workflow or provide access to special transient business services. Session beans do not normally represent persistent business concepts. A session bean corresponds to a client server session. The session bean is created when a client requests some query on the database and exists as long as the client server session exists.

4. What are different types of session bean ?
There are two types of session beans, namely: Stateful and Stateless.

5. What is a Stateful Session bean?
Stateful session bean maintain the state of the conversation between the client and itself. When the client invokes a method on the bean the instance variables of the bean may contain a state but only for the duration of the invocation.

A stateful session bean is an enterprise bean (EJB component) that acts as a server-side extension of the client that uses it. The stateful session bean is created by a client and will work for only that client until the client connection is dropped or the bean is explicitly removed. The stateful session bean is EJB component that implements the javax.ejb.SessionBean interface and is deployed with the declarative attribute “stateful”. Stateful session beans are called “stateful” because they maintain a conversational state with the client. In other words, they have state or instance fields that can be initialized and changed by the client with each method invocation. The bean can use the conversational state as it process business methods invoked by the client.

6. What is stateless session bean ?
Stateless session beans are of equal value for all instances of the bean. This means the container can assign any bean to any client, making it very scalable.

A stateless session bean is an enterprise bean that provides a stateless service to the client. Conceptually, the business methods on a stateless session bean are similar to procedural applications or static methods; there is no instance state, so all the data needed to execute the method is provided by the method arguments. The stateless session bean is an EJB component that implements the javax.ejb.SessionBean interface and is deployed with the declarative attribute “stateless”. Stateless session beans are called “stateless” because they do not maintain conversational state specific to a client session. In other words, the instance fields in a stateless session bean do not maintain data relative to a client session. This makes stateless session beans very lightweight and fast, but also limits their behavior. Typically an application requires less number of stateless beans compared to stateful beans.

7. What is an Entity Bean?
An entity bean represents a business object in a persistent storage mechanism. An entity bean typically represents a table in a relational database and each instance represents a row in the table. Entity bean differs from session bean by: persistence, shared access, relationship and primary key. T

8. What are different types of entity beans?
There are two types of entity beans available. Container Managed Persistence (CMP) , Bean managed persistence (BMP).

9. What is CMP (Container Managed Persistence) ?
The term container-managed persistence means that the EJB container handles all database access required by the entity bean. The bean’s code contains no database access (SQL) calls. As a result, the bean’s code is not tied to a specific persistent storage mechanism (database). Because of this flexibility, even if you redeploy the same entity bean on different J2EE servers that use different databases, you won’t need to modify or recompile the bean’s code. So, your entity beans are more portable.

10. What is BMP (Bean managed persistence) ?
Bean managed persistence (BMP)  occurs when the bean manages its persistence. Here the bean will handle all the database access. So the bean’s code contains the necessary SQLs calls. So it is not much portable compared to CMP. Because when we are changing the database we need to rewrite the SQL for supporting the new database.

11. What is abstract schema ?
In order to generate the data access calls, the container needs information that you provide in the entity bean’s abstract schema. It is a part of Deployment Descriptor. It is used to define the bean’s persistent fields and relation ships.

12. When we should use Entity Bean ?
When the bean represents a business entity, not a procedure. we should use an entity bean. Also when the bean’s state must be persistent we should use an entity bean. If the bean instance terminates or if the J2EE server is shut down, the bean’s state still exists in persistent storage (a database).

13. When to Use Session Beans ?
At any given time, only one client has access to the bean instance. The state of the bean is not persistent, existing only for a short period (perhaps a few hours). The bean implements a web service. Under all the above circumstances we can use session beans.

14. When to use Stateful session bean?
The bean’s state represents the interaction between the bean and a specific client. The bean needs to hold information about the client across method invocations. The bean mediates between the client and the other components of the application, presenting a simplified view to the client. Under all the above circumstances we can use a stateful session bean.

15. When to use a stateless session bean?
The bean’s state has no data for a specific client. In a single method invocation, the bean performs a generic task for all clients. For example, you might use a stateless session bean to send an email that confirms an online order. The bean fetches from a database a set of read-only data that is often used by clients. Such a bean, for example, could retrieve the table rows that represent the products that are on sale this month. Under all the above circumstance we can use a stateless session bean.

Tags: , , ,

AddThis Social Bookmark Button

JMS interview questions

August 20th, 2011 Albin Joseph Posted in JMS Interview questions | No Comments »

Here you can find out a list of interview questions for JMS. These questions are often asked by the interviewer for JMS (Java Message service) interview. We put our maximum effort to make this answers error free. But still there might be some errors. If you feel out any answer given for any question is wrong, please, please inform us by clicking on report bug button provided below.

In this section we are offering interview questions for JMS only. if you need interview questions for any other java related technologies , please check the relevant sections.

1. What is JMS?
The Java Message Service (JMS) API is a messaging standard that allows application components based on the Java 2 Platform, Enterprise Edition (J2EE) to create, send, receive, and read messages. It enables distributed communication that is loosely coupled, reliable, and asynchronous

2. What type messaging is provided by JMS
Both synchronous and asynchronous are provided by JMS.

3. What is messaging?
Messaging is a mechanism by which data can be passed from one application to another application.

4. What are the advantages of JMS?
One of the principal advantages of JMS messaging is that it’s asynchronous. Thus not all the pieces need to be up all the time for the application to function as a whole.

5. What is synchronous messaging?
Synchronous messaging involves a client that waits for the server to respond to a message. So if one end is down the entire communication will fail.

6. What is asynchronous messaging?
Asynchronous messaging involves a client that does not wait for a message from the server. An event is used to trigger a message from a server. So even if the client is down , the messaging will complete successfully.

7. What is the difference between queue and topic ?
A topic is typically used for one to many messaging , while queue is used for one-to-one messaging. Topic .e. it supports publish subscribe model of messaging where queue supports Point to Point Messaging.

8. What is Stream Message ?
Stream messages are a group of java primitives. It contains some convenient methods for reading the data. However Stream Message prevents reading a long value as short. This is so because the Stream Message also writes the type information along with the value of the primitive type and enforces a set of strict conversion rules which actually prevents reading of one primitive type as another.

9. What is Map message?
Map message contains name value Pairs. The values can be of type primitives and its wrappers. The name is a string.

10. What is text message?
Text messages contains String messages (since being widely used, a separate messaging Type has been supported) . It is useful for exchanging textual data and complex character data like XML.

11. What is object message ?
Object message contains a group of serializeable java object. So it allows exchange of Java objects between applications. sot both the applications must be Java applications.

12. What is Byte Message ?
Byte Messages contains a Stream of uninterrupted bytes. Byte Message contains an array of primitive bytes in it’s payload. Thus it can be used for transfer of data between two applications in their native format which may not be compatible with other Message types. It is also useful where JMS is used purely as a transport between two systems and the message payload is opaque to the JMS client.

13. What is the difference between Byte Message and Stream Message?
Bytes Message stores data in bytes. Thus the message is one contiguous stream of bytes. While the Stream Message maintains a boundary between the different data types stored because it also stores the type information along with the value of the primitive being stored. Bytes Message allows data to be read using any type. Thus even if your payload contains a long value, you can invoke a method to read a short and it will return you something. It will not give you a semantically correct data but the call will succeed in reading the first two bytes of data. This is strictly prohibited in the Stream Message. It maintains the type information of the data being stored and enforces strict conversion rules on the data being read.

14. What is the Role of the JMS Provider?
The JMS provider handles security of the messages, data conversion and the client triggering. The JMS provider specifies the level of encryption and the security level of the message, the best data type for the non-JMS client.

15. What are the different parts of a JMS message ?
A JMS message contains three parts. a header, an optional properties and an optional body.

Tags: , , ,

AddThis Social Bookmark Button

Cheatin’ uh? error in wordpress with custom taxonomies

July 25th, 2011 Albin Joseph Posted in WordPress | 3 Comments »

Cheatin’ uh? error in wordpress with custom taxonomies.

Have you ever got a ‘Cheatin’ uh?‘ when you try to access a custom taxonomy page you have added to a custom post type? I was facing this problem today. The strange thing is that this issue was coming only for some taxonomy, not for all. After some trail and error methods I found the reason for this issue. When you create a taxonomy name only lowercase letters are allowed and no spaces are allowed. So if your taxonomy name has an upper case letter or a space, you will get this error.

For eg: ‘Movie Stars’ or ‘Movie’ is not valid. ‘movie’ or ‘moviestars’ is valid.

Tags:

AddThis Social Bookmark Button

JDBC Interview questions

July 22nd, 2011 Albin Joseph Posted in JDBC interview questions | 2 Comments »

JDBC Interview Questions
Here you can find out a list of interview questions for JDBC. These questions are often asked by the interviewer for JDBC (Java Database Connectivity) interview. We put our maximum effort to make this answers error free. But still there might be some errors. If you feel out any answer given for any question is wrong, please, please inform us by clicking on report bug button provided below.

In this section we are offering interview questions for JDBC only. if you need interview questions for any other java related technologies , please check the relevant sections.

1. What is JDBC?
JDBC technology is an API (included in both J2SE and J2EE releases) that provides cross-DBMS connectivity to a wide range of SQL databases and access to other tabular data sources, such as spreadsheets or flat files. With a JDBC technology-enabled driver, you can connect all corporate data even in a heterogeneous environment

2. What are stored procedures?
A stored procedure is a set of statements/commands which reside in the database. The stored procedure is precompiled. Each Database has it’s own stored procedure language,

3. What is JDBC Driver ?
The JDBC Driver provides vendor-specific implementations of the abstract classes provided by the JDBC API. This driver is used to connect to the database.

4. What are the steps required to execute a query in JDBC?
First we need to create an instance of a JDBC driver or load JDBC drivers, then we need to register this driver with DriverManager class. Then we can open a connection. By using this connection , we can create a statement object and this object will help us to execute the query.

5. What is DriverManager ?
DriverManager is a class in java.sql package. It is the basic service for managing a set of JDBC drivers.

6. What is a ResultSet ?
A table of data representing a database result set, which is usually generated by executing a statement that queries the database.

A ResultSet object maintains a cursor pointing to its current row of data. Initially the cursor is positioned before the first row. The next method moves the cursor to the next row, and because it returns false when there are no more rows in the ResultSet object, it can be used in a while loop to iterate through the result set.

7. What is Connection?
Connection class represents a connection (session) with a specific database. SQL statements are executed and results are returned within the context of a connection.

A Connection object’s database is able to provide information describing its tables, its supported SQL grammar, its stored procedures, the capabilities of this connection, and so on. This information is obtained with the getMetaData method.

8. What does Class.forName return?
A class as loaded by the classloader.

9. What is Connection pooling?
Connection pooling is a technique used for sharing server resources among requesting clients. Connection pooling increases the performance of Web applications by reusing active database connections instead of creating a new connection with every request. Connection pool manager maintains a pool of open database connections.

10. What are the different JDB drivers available?
There are mainly four type of JDBC drivers available. They are:

Type 1 : JDBC-ODBC Bridge Driver – A JDBC-ODBC bridge provides JDBC API access via one or more ODBC drivers. Note that some ODBC native code and in many cases native database client code must be loaded on each client machine that uses this type of driver. Hence, this kind of driver is generally most appropriate when automatic installation and downloading of a Java technology application is not important. For information on the JDBC-ODBC bridge driver provided by Sun.

Type 2: Native API Partly Java Driver- A native-API partly Java technology-enabled driver converts JDBC calls into calls on the client API for Oracle, Sybase, Informix, DB2, or other DBMS. Note that, like the bridge driver, this style of driver requires that some binary code be loaded on each client machine.

Type 3: Network protocol Driver- A net-protocol fully Java technology-enabled driver translates JDBC API calls into a DBMS-independent net protocol which is then translated to a DBMS protocol by a server. This net server middleware is able to connect all of its Java technology-based clients to many different databases. The specific protocol used depends on the vendor. In general, this is the most flexible JDBC API alternative. It is likely that all vendors of this solution will provide products suitable for Intranet use. In order for these products to also support Internet access they must handle the additional requirements for security, access through firewalls, etc., that the Web imposes. Several vendors are adding JDBC technology-based drivers to their existing database middleware products.

Type 4: JDBC Net pure Java Driver – A native-protocol fully Java technology-enabled driver converts JDBC technology calls into the network protocol used by DBMSs directly. This allows a direct call from the client machine to the DBMS server and is a practical solution for Intranet access. Since many of these protocols are proprietary the database vendors themselves will be the primary source for this style of driver. Several database vendors have these in progress.

11. What is the fastest type of JDBC driver?
Type 4 (JDBC Net pure Java Driver) is the fastest JDBC driver. Type 1 and Type 3 drivers will be slower than Type 2 drivers (the database calls are make at least three translations versus two), and Type 4 drivers are the fastest (only one translation).

12. Is the JDBC-ODBC Bridge multi-threaded?
No. The JDBC-ODBC Bridge does not support multi threading. The JDBC-ODBC Bridge uses synchronized methods to serialize all of the calls that it makes to ODBC. Multi-threaded Java programs may use the Bridge, but they won’t get the advantages of multi-threading.

13. What is cold backup, hot backup, warm backup recovery?
Cold backup means all these files must be backed up at the same time, before the database is restarted. Hot backup (official name is ‘online backup’ ) is a backup taken of each tablespace while the database is running and is being accessed by the users

14. What is the advantage of denormalization?
Data denormalization is reverse procedure, carried out purely for reasons of improving performance. It maybe efficient for a high-throughput system to replicate data for certain data.

15. How do you handle your own transaction ?
Connection Object has a method called setAutocommit ( boolean flag) . For handling our own transaction we can set the parameter to false and begin your transaction . Finally commit the transaction by calling the commit method.

Tags: , ,

AddThis Social Bookmark Button

Swing AWT Interview Questions

July 21st, 2011 Albin Joseph Posted in Swing interview question | 1 Comment »

Here you can find a list of interview questions for Java Swing and AWT. These questions are often asked by the interviewer for JFC (Java foundation Classes) or Swing interview. We put our maximum effort to make this section error free. However there might be some errors. If you feel any answer given for any question is wrong, please, please inform us by clicking on report bug button provided at the bottom of the screen. In this section we are offering interview questions for AWT and Swing technologies. This section covers interview questions for applets also. If you need interview questions for any other Java related technologies , please check the relevant sections.
Read the rest of this entry »

Tags: , , , ,

AddThis Social Bookmark Button