Home Struts Struts2 Struts2controltags Merge Tag (Control Tags) Example
Questions:Ask|Latest

 
 

Share on Google+Share on Google+

Merge Tag (Control Tags) Example

Advertisement
In this section, we are going to describe the merge tag . The merge tag is a generic tag that is used to merge iterators.

Merge Tag (Control Tags) Example

     

In this section, we are going to describe the merge tag. The merge tag is a generic tag that is used to merge iterators. The successive call to the merge iterator causes each merge iterator to have a chance to expose its element, subsequently next call allows the next iterator to expose its element. Once the last iterator is done exposing its element, the first iterator is allowed to do so again (unless it is exhausted of entries).

In the current example, 2 lists being merged, each list have 5 entries, the following will be the logic.

  1. Display first element of the first list.
  2. Display first element of the second list.
  3. Display second element of the first list.
  4. Display second element of the second list.
  5. Display third element of the first list.
  6. Display thrid element of the second list.....and so on.

Add the following code snippet into the struts.xml file.

struts.xml

<action name="mergeTag" class="net.roseindia.mergeTag">
  <result>/pages/genericTags/mergeTag.jsp</result>
</action>

Create two lists in the action class  and populate them with various items as shown in the  "mergeTag" class.

mergeTag.java

package net.roseindia;
import com.opensymphony.xwork2.ActionSupport;
import java.util.*;

public class mergeTag extends ActionSupport {
  private List myList;
  private List myList1;

  public String execute() throws Exception{
  myList = new ArrayList();
  myList.add("www.Roseindia.net");
  myList.add("Deepak Kumar");
  myList.add("Sushil Kumar");
  myList.add("Vinod Kumar");
  myList.add("Amit Kumar");

  myList1 = new ArrayList();
  myList1.add("www.javajazzup.com");
  myList1.add("Himanshu Raj");
  myList1.add("Mr. khan");
  myList1.add("John");
  myList1.add("Ravi Ranjan");
  return SUCCESS;
  }

  public List getMyList(){
  return myList;
  }

  public List getMyList1(){
  return myList1;
  }
}

Now create a jsp page using <s:merge> and <s:param value> tags as  shown in the mergeTag.jsp page. The merge  tag  is used to merge iterators. The "id" parameter keeps the resultant iterator stored under in the stack's context and the "value" parameter in the <s:iterator> is used to get the values contained within the respective iterators.

mergeTag.jsp 

<%taglib prefix="s" uri="/struts-tags" %>

<html>
  <head>
  <title>Merge Tag Example!</title>
  </head>
  <body>
  <h1><span style="background-color: #FFFFcc">Merge Tag Example!
</span></h1>

  <s:merge id="mergeId">
  <s:param value="%{myList}" />
  <s:param value="%{myList1}" />
  </s:merge>

  <s:iterator value="%{#mergeId}">
  <s:property /><br>
  </s:iterator>
  </body>
</html>

Output of merge Tag:

Advertisements

If you enjoyed this post then why not add us on Google+? Add us to your Circles



Liked it!  Share this Tutorial


Follow us on Twitter, or add us on Facebook or Google Plus to keep you updated with the recent trends of Java and other open source platforms.

Posted on: July 17, 2007

Related Tutorials

Ask Questions?    Discuss: Merge Tag (Control Tags) Example   View All Comments

Post your Comment


Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
 
 
Comments
Journey
November 1, 2011
YoYyoqPpzyJ

Keep it coming, writres, this is good stuff.
DMCA.com