Prepare Interview

Exams Attended

Mock Exams

Make Homepage

Bookmark this page

Subscribe Email Address

RichFaces Interview Questions and Answers

Experienced / Expert level questions & answers

Ques 1. What is <a4j:support> tag?

Sends an AJAX request based on a DHTML event supported by the parent component.  In this example, the AJAX request will  be triggered after the user types a character in the text box:

<h:inputText value="#{document.docOrigtor}" id="docClaimOrigId" binding="#{handler.docOrig}">
  <a4j:support actionListener="#{handler.createDocumentName}" event="onkeyup" reRender="docId"/>
</h:inputText>
Here, on keyup event it will call handler.createDocumentName method with ajax call and rendering docId value.

Is it helpful? Add Comment View Comments
 

Ques 2. How to control traffic in RichFaces?

Controlling traffic can be done using Queues mechanism.
Queues can be defined using <a4j:queue…../>
3 types of queues are there: Named, Unnamed, and Global queue.

Is it helpful? Add Comment View Comments
 

Ques 3. How to keep a managed bean between requests?

 The bean class should be implemented by Serializable.

Is it helpful? Add Comment View Comments
 

Ques 4. How to different skins are runtime?

We can define an applications skin with EL expression like this:
Deine a session scoped skinBean and manage its currentSkin  property at runtime with your skin names values.  Every time a page is rendered, RichFaces will resolve the value in #{skinBean.currentSkin} to get the current skin.  Changing Skins should not be done via AJAX but with a full page refresh. A full page refresh will ensure that all CSS links are correctly updated based on the new skin.

Is it helpful? Add Comment View Comments
 

Ques 5. Tell me about a4j:outputPanel and ajaxRendered?

"ajaxRendered"  attribute of the  <a4j:outputPanel>  set to "true" allows to define the area of the page that will be re-rendered even if it is not pointed in the reRender attribute explicitly. It might be useful if you have an area on a page that should be updated as a response on any Ajax request.

Is it helpful? Add Comment View Comments
 

Ques 6. What is limitToList attribute?

"limitToList"  attribute allows to dismiss the behavior of the  <a4j:outputPanel>   "ajaxRendered" attribute.
limitToList = "true" means to update only the area(s) that mentioned in the "reRender"  attribute explicitly. All output panels with ajaxRendered="true" is ignored.

Is it helpful? Add Comment View Comments
 

Ques 7. What is the use of eventsQueue?

Attribute "eventsQueue" defines the name of the queue that will be used to order upcoming Ajax requests. By default, RichFaces does not queue Ajax requests. If events are produced simultaneously, they will come to the server simultaneously. JSF implementations (especially, the very first ones) does not guaranty that the request that comes first will be served or passed into the JSF lifecycle first. The order how the server-side data will be modified in case of simultaneous request might be unpredictable. Usage of eventsQueue attribute allows to avoid possible mess.
The next request posted in the same queue will wait until the previos one is not processed and Ajax Response is returned back if the  "eventsQueue"  attribute is defined.
In addition, RichFaces starts to remove from the queue "similar" requests. "Similar'"requests are the requests produced by the same event.

Is it helpful? Add Comment View Comments
 

Ques 8. How to handle request errors and session expire on client side?

Given an example below:
A4J.AJAX.onError = function(req, status, message){
    window.alert("Custom onError handler "+message);
}
A4J.AJAX.onExpired = function(loc, expiredMsg){
if(window.confirm("Custom onExpired handler "+expiredMsg+" for a location: "+loc)){
      return loc;
    } else {
     return false;
    }
}

Is it helpful? Add Comment View Comments
 

Ques 9. What is a4j:ajax?

a4j:ajax is one of our core behaviors, extending the base JSF 2.0 f:ajax tag. This tag triggers an Ajax request when the specified parent event is triggered.

<h:inputText value="#{userBean.name}">
    <a4j:ajax event="keyup" render="out" />
</h:inputText>
<h:outputText value="#{userBean.name}" id="out" />

Is it helpful? Add Comment View Comments
 

Ques 10. What is a4j:actionListener in RichFaces?

Use a4j:actionListener to register an ActionListener class on a parent action component. Multiple listener methods can be registered on an action components in this way.

The a4j:actionListener tag differs from the standard JSF tag in that it allows the listener to be attached in any of three ways:

  1. By listener method, using the listener attribute.
  2. By listener class, using the type attribute.
  3. By object binding, using the binding attribute.
<h:commandButton value="Update">
    <a4j:actionListener listener="#{bean.actionMethod}"/>
    <f:ajax render="messages"/>
</h:commandButton>

Is it helpful? Add Comment View Comments
 

Ques 11. What is a4j:jsFunction in RichFaces?

The a4j:jsFunction component creates a JavaScript function that allows you to send JSF Ajax requests from any JavaScript. You define the Ajax and JSF properties just like a4j:ajax, or a4j:commandButton, and a4j:jsFunction creates the JavaScript for you. The component sends a request using the standard JSF mechanisms. Note that this means a JSF form is required.

The following example shows how to use a4j:jsFunction to create a function named updateName. This is then called on mouseover of the different names. This triggers the full round trip Ajax request and renders the updated name.

<span onmouseover="updateAddress('WithoutBook')" onmouseout="updateAddress('')">WithoutBook</span>

<a4j:jsFunction name="updateAddress" render="showAddress">
    <a4j:param name="address" assignTo="#{bean.address}" />
</a4j:jsFunction>

Is it helpful? Add Comment View Comments
 

Ques 12. What is rich:tree in RichFaces?

The rich:tree component renders a tree control on the page. The most important tree features include the following:

  • Native support for Ajax operations
  • Support for ajax, client, and server switch types
  • Selection capabilities
  • Flexible look and feel
<rich:tree id="tree" nodeType="#{node.type}" var="node" value="#{bean.rootNodes}" toggleType="client" selectionType="ajax" selectionChangeListener="#{bean.selectionChanged}">
      <rich:treeNode type="country">#{node.name}</rich:treeNode>
      <rich:treeNode type="company" iconExpanded="/images/ctry.gif" iconCollapsed="/images/tree/disc.gif">#{node.name}</rich:treeNode>
      <rich:treeNode type="cd" iconLeaf="/images/tree/cd.gif">
           #{node.artist} - #{node.name} - #{node.year}
</rich:treeNode>
Is it helpful? Add Comment View Comments
 

Most helpful rated by users:

Related interview subjects

JUnit interview questions and answers - Total 24 questions
Spring Framework interview questions and answers - Total 53 questions
Java Design Patterns interview questions and answers - Total 15 questions
Core Java interview questions and answers - Total 306 questions
Tomcat interview questions and answers - Total 16 questions
Apache Wicket interview questions and answers - Total 26 questions
Java Applet interview questions and answers - Total 29 questions
JAXB interview questions and answers - Total 18 questions
JMS interview questions and answers - Total 64 questions
Log4j interview questions and answers - Total 35 questions
Struts interview questions and answers - Total 84 questions
RMI interview questions and answers - Total 31 questions
Apache Camel interview questions and answers - Total 20 questions
JDBC interview questions and answers - Total 27 questions
Java 11 interview questions and answers - Total 24 questions
JPA interview questions and answers - Total 41 questions
EJB interview questions and answers - Total 80 questions
GWT interview questions and answers - Total 27 questions
Kotlin interview questions and answers - Total 30 questions
Glassfish interview questions and answers - Total 8 questions
Google Gson interview questions and answers - Total 8 questions
JSP interview questions and answers - Total 49 questions
J2EE interview questions and answers - Total 25 questions
Apache Tapestry interview questions and answers - Total 9 questions
Java Swing interview questions and answers - Total 27 questions
Java Mail interview questions and answers - Total 27 questions
Hibernate interview questions and answers - Total 52 questions
JSF interview questions and answers - Total 24 questions
Java 8 interview questions and answers - Total 30 questions
Java 15 interview questions and answers - Total 16 questions
JBoss interview questions and answers - Total 14 questions
Web Services interview questions and answers - Total 10 questions
RichFaces interview questions and answers - Total 26 questions
Servlets interview questions and answers - Total 34 questions
Java Beans interview questions and answers - Total 57 questions
Spring Boot interview questions and answers - Total 50 questions
©2023 WithoutBook