Bean Tag (Data Tag) Example

In this section, we are going to describe the Bean Tag . The Bean tag is a generic tag that is used to instantiates a class that conforms to the JavaBeans specification.

Bean Tag (Data Tag) Example

Bean Tag (Data Tag) Example

     

In this section, we are going to describe the Bean Tag. The Bean tag is a generic tag that is used to instantiates a class that confirms to the JavaBeans specification. This tag has a body which can contain a number of Param elements to set any mutator methods on that class.

If the id attribute is set on the BeanTag, it will place the instantiated bean into the stack's Context.

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

 

 

 

struts.xml

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

Create an action class as shown below:

 beanTag.java

package net.roseindia;
import com.opensymphony.xwork2.ActionSupport;

public class beanTag extends ActionSupport {
  public String execute() throws Exception{
  return SUCCESS;
  }
}

create a simple java bean as shown: 

companyName.java

package net.roseindia;

public class companyName {
  
  private String name;

  public void setName(String name){
  this.name =name ;
  }

  public String getName(){
  return name;
  }
}

Now create a jsp page using <s:bean> and <s:param> tags as shown in the beanTag.jsp page. The bean tag instantiates the "net.roseindia.companyName" class, it confirms to the JavaBeans specification. The id attribute is set on the BeanTag, it places the instantiated bean into the stack's Context. The body of <s:bean> tag contains a param element

<s:param name="name">RoseIndia</s:paramwhich is used to set the value for the setName() method of the "companyName" class and <s:property value="%{name}" /> retrieves that value by calling the getName() method.

beanTag.jsp

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

<html>
  <head>
  <title>Bean Tag Example!</title>
  </head>
  <body>
  <h1><span style="background-color: #FFFFcc">Bean Tag 
   (
Data TagsExample!</span></h1>
  <s:bean name="net.roseindia.companyName" id="uid">
  <s:param name="name">RoseIndia</s:param> 
  <s:property value="%{name}" /><br>
  </s:bean>

  </body>
</html>

Output of the beanTag.jsp