Struts 2 Select Tag Example

SHARE & COMMENT :

Struts 2 Select tag is helpful for implementing the drop down list where user can select one value from the list. Either these values can be send from the bean or it can be defined in the select tag itself. This tutorial shows a simple example to implement this tag. Lets look at the below code.

1. Action Class

package javabeat.net.struts2;

import java.util.ArrayList;

public class Struts2UITagsAction{
	private String cityName;
	private String lang;
	private ArrayList<String> cities;

	public String getLang() {
		return lang;
	}
	public void setLang(String lang) {
		this.lang = lang;
	}
	public String getCityName() {
		return cityName;
	}
	public void setCityName(String cityName) {
		this.cityName = cityName;
	}
	public ArrayList<String> getCities() {
		return cities;
	}
	public void setCities(ArrayList<String> cities) {
		this.cities = cities;
	}
	public String execute(){
		if (cityName == null || cityName.trim().length() == 0){
			cities = new ArrayList<String>();
			cities.add("London");
			cities.add("Newyork");
			cities.add("Tokyo");
			return "INDEX";
		}
		return "success";
	}
}

2. Select Tag Example

Select.jsp

<%@ page contentType="text/html; charset=UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<html>
<body>
	<h1>JavaBeat - Struts 2 Select Tag Demo</h1>
	<s:form action="SelectDemo">
		<s:select name="cityName" list="cities"/>
		<s:select name="lang" list="#{'Java Lang':'Java', 'C++ Lang':'C++',
                    'Scala Lang':'Scala'}"/>
		<s:submit label="Submit" />
	</s:form>
</body>
</html>

Result.jsp

<%@ page contentType="text/html; charset=UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<html>
<body>
	<h1>JavaBeat - Struts 2 Select Tag Demo</h1>
	<h4>
		Selected City :	<s:property value="cityName" /><br>
		Selected Languages :	<s:property value="lang" />
	</h4>
</body>
</html>

3. Struts.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts
Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<constant name="struts.devMode" value="true" />
<package name="uitagsdemo" extends="struts-default">
	<action name="SelectDemo" class="javabeat.net.struts2.Struts2UITagsAction" >
		<result name="success">Result.jsp</result>
		<result name="INDEX">Select.jsp</result>
	</action>
</package>
</struts>

4. Select Tag Demo

If you access the application using URL http://localhost:8080/Struts2App/SelectDemo, you would see the following output.

struts2 select tag example input screen

struts2 select tag example output screen

Comments

comments

About Krishna Srinivasan

He is Founder and Chief Editor of JavaBeat. He has more than 8+ years of experience on developing Web applications. He writes about Spring, DOJO, JSF, Hibernate and many other emerging technologies in this blog.

Speak Your Mind

*

Close
Please support the site
By clicking any of these buttons you help our site to get better