Skip to main content

Struts 2 Ajax drop down Example

Struts 2 has emerged as boon for developers. But the documentation available is very small. So I had decided to give a brief demonstration of the ajax used in struts 2.1.8.1
Libraries used:

commons-beanutils-1.7.0.jar
commons-fileupload-1.2.jar
commons-logging-1.1.jar
commons-logging-api-1.1.jar
freemarker-2.3.8.jar
struts2-core-2.1.8.1.jar
struts2-dojo-plugin-2.1.8.1.jar
xwork-core-2.1.6.jar

In this example when u select from one drop down the other will populate accordingly. You can use it as it is or play with it. Enjoy !!

index.jsp
<%@ taglib prefix="s" uri="/struts-tags" %>
<s:action name="ListingAction" executeResult="true"></s:action>

listing.jsp
<%@ taglib prefix="s" uri="/struts-tags"%>
<%@ taglib prefix="sx" uri="/struts-dojo-tags"%>



Listing



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


 

DetailAction.java
package ajaxdemo.action;

import java.util.ArrayList;
import java.util.List;

import com.opensymphony.xwork2.ActionSupport;

public class DetailAction extends ActionSupport {
 private String lst;
 private List lstList = null;
 private List lstList2 = null;

 public String execute() throws Exception {

  if (getLst() != null && !getLst().equals("")) {
   populateDetail(getLst());
   return SUCCESS;
  } else {
   return SUCCESS;
  }
 }

 private void populateDetail(String id) {
  lstList = new ArrayList();
  if (id.equalsIgnoreCase("Fruits")) {
   lstList.add("Apple");
   lstList.add("PineApple");
   lstList.add("Mango");
   lstList.add("Banana");
   lstList.add("Grapes");
  } else if (id.equalsIgnoreCase("Places")) {
   lstList.add("New York");
   lstList.add("Sydney");
   lstList.add("California");
   lstList.add("Switzerland");
   lstList.add("Paris");
  } else {
   lstList.add("Other 1");
   lstList.add("Other 2");
   lstList.add("Other 3");
   lstList.add("Other 4");
   lstList.add("Other 5");
  }
 }

 public List getLstList() {
  return lstList;
 }

 public void setLstList(List lstList) {
  this.lstList = lstList;
 }

 public String getLst() {
  return lst;
 }

 public void setLst(String lst) {
  this.lst = lst;
 }
}


ListingAction.java
import com.opensymphony.xwork2.ActionSupport;
import java.util.ArrayList;
import java.util.List;

public class ListingAction extends ActionSupport {
 private List lstList1 = null;

 public String execute() throws Exception {
  populateDetail();
  return SUCCESS;
 }

 private void populateDetail() {
  lstList1 = new ArrayList();
  lstList1.add("Fruits");
  lstList1.add("Places");
  lstList1.add("Others");
 }

 public List getLstList1() {
  return lstList1;
 }

 public void setLstList1(List lstList1) {
  this.lstList1 = lstList1;
 }
}


Struts.xml

 
  
   /listing.jsp
  
  
   /detail.jsp
  
 

 

web.xml


 
  struts2
  org.apache.struts2.dispatcher.FilterDispatcher
 
 
  struts2
  /*
 
 
  index.jsp
 
 

Popular posts from this blog

Simple LDAP Authentication

This is a simple example through which we will connect to the LDAP Server and authenticate user.
I have used ApacheDS Server as a LDAP Server. Install ApacheDS server and run it.

Following is a servlet used. make login.html and use as it Login.java


package ajaxdemo.action; import java.io.IOException; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.naming.*; import javax.naming.directory.*; import java.util.Hashtable; public class Login extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet { public Login() { super(); } protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { final String SUCCESS = "Success.html"; final String FAILURE = "Failure.html"; String strUrl = "login.html"; String username = request.getPar…

Getting height and width of image in Java

Yesterday I was working on something that requires manipulation of image for getting its properties.
After searching over the internet I found a very intersting class on Java i.e ImageIO and BufferedImage class.

These classes are good enough to manipulate images. there are many other claases also. But what I need i got it from these. I found many developers searching over internet for getting properties of image and there is no good small example for that.

Thats why I thought why not creating a simple code to manipulate the image and help the developers.

Here is the small code that helps to get the height and width of the image. Enjoy it!!
import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; public class GetImage { public static void main(String[] args) { try { File f = new File("E:/Vinod/Docs/Pics/krishna_01.jpg"); BufferedImage image = ImageIO.read(f); int height = image.getHeight(); int width …

AWS S3 processing with JetS3t library

In this post we will see how we can use the Amazon AWS S3 to store objects. We will be using the JetS3t library to process our objects. JetS3t library also known as Jet Set, is widely used for processing the AWS S3 i.e. Amazon Web Services, Simple Storage Service.

Before working on AWS S3, you need to have a valid account on AWS with S3 key and S3 password. You can register here free of cost.
Amazon Web Services in Action (MANNING)
Here we will using 4 API of jets3t i.e. Upload a documentDownload a documentListing of documentsDelete a document We will upload images of user on S3 and then process them as specified above.
Upload: to upload image to the S3 we will be using putObject() method of the S3Service class.Download: To download image we will be using getObject() method of S3Service class.List: To list images we will be using listObjects() method of S3Service class.Delete: To delete image we will be using deleteObjects() method of S3Service class. We can also delete multiple images …