Frameworks| Hibernate| Struts| JSF| JavaFX| Ajax| Spring| DOJO| JDO| iBatis| Questions?

 

 

 

 

 

 

 

 

 

 

 

 

 

Search Tutorials

Latest Questions
Comments
 
Logic Present Tag (...) 
 

empty tag - If the requested variable is either null or an empty string then we use this tag to evaluate the contents contained in the nested body parts of this tag.

 

Logic Present Tag (<logic:equal>...</logic:equal>) 

                         

empty tag - If the requested variable is either null or an empty string then we use this tag to evaluate the contents contained in the nested body parts of this tag.

Tag evaluation of the nested body content occurs only if the specified value is either absent (i.e. null), an empty string (i.e. a java.lang.String with a length of zero), or an empty java.util.Collection or java.util.Map (tested by the isEmpty() method on the respective interface).

Attributes of Empty Tag

Attribute Name Description
name

This attribute specifies a  JSP bean variable. This variable is needed for comparison. 

 
property

The variable to be compared is the property of the bean. This is specified by the name attribute. The property reference can be simple, nested, and/or indexed.

 
scope

The bean scope within which to search for the bean is named by the name property, or "any scope" if not specified.

 

Logic notEmpty Tag (<logic:notEmpty>...</logic:notEmpty>) 

notEmpty - If the requested variable is neither null nor an empty string then we use this tag to evaluate the contents contained in the nested body parts of this tag.

Tag evaluation of the nested body content occurs only if the specified value is available (i.e.not null) and is not an empty string (i.e. a java.lang.String with a length of zero).

Attributes of notEmpty Tag

Attribute Name Description
name

This attribute specifies a  JSP bean variable. This variable is needed for comparison. 

 
property

The variable to be compared is the property of the bean. This is specified by the name attribute. The property reference can be simple, nested, and/or indexed.

 
scope

The bean scope within which to search for the bean is named by the name property, or "any scope" if not specified.

 

 

Example Illustrating the use of the Empty<logic:empty> and the notEmpty <logic:notEmpty> logic tags.

Here you will learn to use the Struts  Logic tags. We will cover an example that will show  a comparison between  the two logic tags (ie..<logic:empty> and the <logic:notEmpty>).

Example code

Creating an Action  Class

Develop a simple action class LogicAction.java.

package roseindia.net;

import java.io.*;
import java.util.*;

/**

* @author Amit Gupta
* @Web http://www.roseindia.net
* @Email struts@roseindia.net

**/
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletException;
import org.apache.struts.action.*;

public class LogicAction extends Action 
{
  public ActionForward execute(ActionMapping mapping,
    ActionForm form,
    HttpServletRequest request,
    HttpServletResponse response)
    throws IOException, ServletException {

      

        return mapping.findForward("success");
    }
}

Creating Form Bean

Our form bean class contains only one property text. Here is the code of FormBean (LogicForm.java)

package roseindia.net;

import org.apache.struts.action.*;

/**

* @author Amit Gupta
* @Web http://www.roseindia.net
* @Email struts@roseindia.net

**/

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class EmptyForm extends ActionForm 
{
    
    private String text = "";
       
  public String getText() 
    {
        return text;
    }
    
    public void setText(String text) 
    {
    this.text=text;
  }
   
    
  
    
}

Defining form Bean in struts-config.xml file

Add the following entry in the struts-config.xml file for defining the form bean

<form-bean name="LogicForm"  type="roseindia.net.LogicForm" />

 Developing the Action Mapping in the struts-config.xml

Here, Action mapping helps to select the method from the Action class for specific requests.

<action path="/LogicAction"
type="roseindia.net.LogicAction"
name="LogicForm"
scope="request"
input="/pages/InputLogic.jsp">
<forward name="success" path="/pages/output.jsp"/>
</action>

Developing the InputLogic.jsp page

<%@ taglib uri="/tags/struts-html" prefix="html" %>
<%@ taglib uri="/tags/struts-logic" prefix="logic" %>
<%@ taglib uri="/tags/struts-bean" prefix="bean" %>
<html:html>
<head>
<title>Using &lt;logic&gt; Tags</title>
</head>

<body>
<h1>Using &lt;logic&gt; Tags</h1>

<html:form action="/LogicAction" method ="post">

<h2>Enter text :</h2>
<html:text property="text"/>
<html:submit value="Submit"/> 
<html:cancel/>
</html:form>
</body>
</html:html>

Developing the output.jsp page

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

<HTML>
<HEAD>
<TITLE>Here's Your Data...</TITLE>
</HEAD>
<BODY>
<H4>Here's Your Data...</H4>

<h4>The text entered is:

<bean:write name="LogicForm1" property="text"/></h4>

<logic:present name="LogicForm1" property="text" >
<h5>Using the tag &lt;logic:present &gt; </h5> 

Result: Successfully supported 
</logic:present>
<logic:notPresent name="LogicForm1" property="text1" >
<h5>Using the tag&lt;logic:notPresent&gt;</h5> 

Result: Support for a Variable other than a String is not Present

</logic:notPresent>
</BODY>
</HTML>

Add the following line in the index.jsp to call the form.

<li>
<html:link page="/pages/InputLogic.jsp">Struts File Upload</html:link>
<br>
Example demonstrates  how LogicAction Class works.
</li>

Building and Testing the Example 

To build and deploy the application go to Struts\Strutstutorial directory and type ant on the command prompt. This will deploy the application. Open the browser and navigate to the InputLogic.jsp page. Your browser displays the following  page.

Writing nothing to the InputLogic.jsp page displays the working of  the  Empty Logic tag <logic:equal > 

Writing nothing displays the following out.jsp page

Now  write any data to the InputLogic.jsp to see the working of  the notEqual logic tag <logic:notEqual>

The <logic:notEqual > evaluated here displays the output.jsp as

Download example code

 

                         

» View all related tutorials
Related Tags: c com ant lua variable sed nested const compare content value tag eval ria this ai if ie constant sse

Leave your comment:

Name:

Email:

URL:

Title:

Comments:


Enter Code:

Audio Version
Reload Image
 

Note: Emails will not be visible or used in any way, and are not required. Please keep comments relevant. Any content deemed inappropriate or offensive may be edited and/or deleted.

No HTML code is allowed. Line breaks will be converted automatically. URLs will be auto-linked. Please use BBCode to format your text.

Add This Tutorial To:
  Del.icio.us   Digg   Google   Spurl   Blink   Furl   Simpy   Y! MyWeb 

Current Comments

1 comments so far (
post your own) View All Comments Latest 10 Comments:

In your action how are you passing the value back to jsp?

In action you are simply saying ....("success")

Could you add the code for that please?

Thanks,

Abhi

Posted by Abhi on Thursday, 09.25.08 @ 22:26pm | #80708

Training Courses
Tell A Friend
Your Friend Name
Software Solutions
Least Viewed
Most Rated
Recently Viewed
Search Tutorials

 

 
 

Home | JSP | EJB | JDBC | Java Servlets | WAP  | Free JSP Hosting  | Search Engine | News Archive | Jboss 3.0 tutorial | Free Linux CD's | Forum | Blogs

About Us | Advertising On RoseIndia.net  | Site Map

India News

Indian Software Development Company | iPhone Development Company in India | Flex Development Company in India | Java Training Delhi | Java Training at Noida |

Send your comments, Suggestions or Queries regarding this site at roseindia_net@yahoo.com.

Copyright © 2008. All rights reserved.