Skip to main content

Struts2 - Date Tag (Data Tag)

In this section, we are going to describe the Date tag. The date tag allows to format a Date in a quick and easy way. User can specify a custom format (eg. "dd/MM/yyyy hh:mm"), can generate easy readable notations (like "in 2 hours, 14 minutes"), or can just fall back on a predefined format with key 'struts.date.format' in the properties file.
If that key is not defined, it will finally fall back to the default DateFormat.MEDIUM formatting.

Note: If the requested Date object isn't found on the stack, a blank will be returned.

Configurable attributes are :-
1. name
2. nice
3. format

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

struts.xml

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

Create an action class as shown below:

dateTag.java

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

public class dateTag extends ActionSupport {
  private Date currentDate;
  public String execute() throws Exception{
  setCurrentDate(new Date());
  return SUCCESS;
  }
  public void setCurrentDate(Date date){
  this.currentDate = date;
  }
  public Date getCurrentDate(){
  return currentDate;
  }
}


Now create a jsp page using tag as shown in the success.jsp page.
The date tag formats a Date in a quick and easy way. Here the "format" parameter specify a custom format (eg. "dd/MM/yyyy hh:mm") to follow.
The nice parameter is of Boolean type which decides whether to print out the date nicely
or not. By Default it is kept false which prints out date nicely i.e.
tag formats a date and similarly does not format a date, it is illustrated in our current jsp page.





dateTag.jsp


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

<html>
  <head>
  <title>Date Tag (Data Tag) Example!</title>
  </head>
  <body>
  <h1><font color="#000080">Current Date Format</font></h1>
  <table border="1" width="35%" bgcolor="ffffcc">
  <tr>
  <td width="50%"><b><font color="#000080">Date Format</font></b></td>
  <td width="50%"><b><font color="#000080">Date</font></b></td>
  </tr>
  <tr>
  <td width="50%">Day/Month/Year</td>
  <td width="50%"><s:date name="currentDate" format="dd/MM/yyyy" /></td>
  </tr>
  <tr>
  <td width="50%">Month/Day/Year</td>
  <td width="50%"><s:date name="currentDate" format="MM/dd/yyyy" /></td>
  </tr>
  <tr>
  <td width="50%">Month/Day/Year</td>
  <td width="50%"><s:date name="currentDate" format="MM/dd/yy" /></td>
  </tr>
  <tr>
  <td width="50%">Month/Day/Year Hour<B>:</B>Minute</td>
  <td width="50%"><s:date name="currentDate" format="MM/dd/yy hh:mm" /></td>
  </tr>
  <tr>
  <td width="50%">Month/Day/Year Hour<B>:</B>Minute<B>:</B>Second</td>
  <td width="50%"><s:date name="currentDate" format="MM/dd/yy hh:mm:ss" /></td>
  </tr>
  <tr>
  <td width="50%">Nice Date (Current Date & Time)</td>
  <td width="50%"><s:date name="currentDate" nice="false" /></td>
  </tr>
  <tr>
  <td width="50%">Nice Date</td>
  <td width="50%"><s:date name="currentDate" nice="true" /></td>
  </tr>
  </table>
  
  </body>
</html>


Output of the dateTag.jsp :

Popular posts from this blog

Struts2 - Radio Tag (Form Tags)

In this section, we are going to describe the radio tag. The radio tag is a UI tag that renders a radio button input field. Add the following code snippet into the struts.xml file. struts.xml <action name="radioTag" class="net.struts2.checkboxlistTag">   <result>/pages/uiTags/radioTag.jsp</result> </action> Create an action class with two lists as shown below: checkboxlistTag.java package net.struts2; import com.opensymphony.xwork2.ActionSupport; import java.util.*; public class checkboxlistTag extends ActionSupport{      private List fruits;   private List animals;     public String execute()throws Exception{   fruits = new ArrayList();   fruits.add("Apple");   fruits.add("Mango");   fruits.add("Orange");   fruits.add("Pine Apple");  ...

Struts2 - Combobox Tag (Form Tags)

The struts2 combobox is basically an HTML INPUT of type text and HTML SELECT grouped together to give you a combo box functionality. You can place text in the INPUT control by using the SELECT control or type it in directly in the text field. Add the following code snippet into the struts.xml file. struts.xml <action name="comboboxTag" class="net.struts2.comboboxTag">    <result>/pages/uiTags/comboboxTag.jsp</result> </action> Create "comboboxTag " action class and a list in the class and populate it with various items as shown in the class. comboboxTag.java package net.struts2; import com.opensymphony.xwork2.ActionSupport; import java.util.*; public class comboboxTag extends ActionSupport{      private List fruits;   public String execute()throws Exception{   fruits = new ArrayList();   fruits.add("Appl...

Global Action Forwards and Action Mappings

What is an action forward? A action forward can be used to forward to a jsp or action mapping. There are two different action forwards. The global action forward and the local action forward. You can access a global action forward on each jsp or action class. A local action forward can only be accessed by the assigned action class. What is a action mapping? The action mapping is the heart of struts. It managed all actions between the application and the user. You can define which action will be executed by creating a action mapping. The diagram show you, how the application server manage the request of the index.jsp or a non existing action mapping. In the first step we create a new action mapping. Open the struts-config.xml, you will find it in the folder WebRoot/WEB-INF. Right click in the outline window on action-mapping. Choose Use Case default and Action Type Forward. The Forward Path is the welcome page /jsp/index.jsp In the second step you create a global act...