Struts 2 If, ElseIf, Else tag example
Struts 2 If, ElseIf and Else tags are used to perform basic condition checking.
The ‘If‘ tag could be used by itself
<s:if test="%{#variable=='String 1'}"> This is String 1 </s:if>
or with ‘Else If‘ tag
<s:if test="%{#variable=='String 1'}"> This is String 1 </s:if> <s:elseif test="%{#variable=='String 2'}"> This is String 2 </s:elseif>
and/or single/multiple ‘Else‘ tag.
<s:if test="%{#variable=='String 1'}"> This is String 1 </s:if> <s:elseif test="%{#variable=='String 2'}"> This is String 2 </s:elseif> <s:else> Other Strings </s:else>
All the above statements are correct. Let’s see an example to show the use of Struts 2 ‘If, ElseIf and Else‘ tag.
1. Action
An Action class with a String property , which contains a “Struts 2” value.
IfTagAction
package com.mkyong.common.action; import com.opensymphony.xwork2.ActionSupport; public class IfTagAction extends ActionSupport{ private String framework = "Struts 2"; public String getFramework() { return framework; } public void setFramework(String framework) { this.framework = framework; } public String execute() { return SUCCESS; } }
2. If, ElseIf and Else tag example
A JSP page to show the use of If, ElseIf and Else tag to perform the condition checking on the “framework” variable.
if.jsp
<%@ taglib prefix="s" uri="/struts-tags" %> <html> <head> </head> <body> <h1>Struts 2 If, Else, ElseIf tag example</h1> <s:set name="webFramework" value="framework"/> <s:if test="%{#webFramework=='Struts 2'}"> This is Struts 2 </s:if> <s:elseif test="%{#webFramework=='Struts 1'}"> This is Struts 1 </s:elseif> <s:else> Other framework </s:else> </body> </html>
3. struts.xml
Link it ~
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <constant name="struts.devMode" value="true" /> <package name="default" namespace="/" extends="struts-default"> <action name="ifTagAction" class="com.mkyong.common.action.IfTagAction" > <result name="success">pages/if.jsp</result> </action> </package> </struts>
4. Demo
http://localhost:8080/Struts2Example/ifTagAction.action






