Hi Dave, one of my action classes are executing perfectly which I am appending below. I am also including the output for you. package net.astralpharma; import com.opensymphony.xwork2.ActionSupport; import java.sql.*; import java.util.*; public class Productdisplay extends ActionSupport { List<Product> productName = new ArrayList<Product>(); public String populate() { productName=getProductName(); return "populate"; } public String execute() throws Exception{ String url = "jdbc:mysql://localhost:3306/"; String dbname="astraldb"; String driverName="org.gjt.mm.mysql.Driver"; String userName="root"; String password="root"; Connection con=null; PreparedStatement stat =null; try { Class.forName(driverName); System.out.println("Driver Loaded"); con = DriverManager.getConnection("jdbc:mysql://localhost:3306/astraldb","root","root" ); System.out.println("Database is connected"); String query="Select productname from supplier_proddetails"; stat = con.prepareStatement(query); System.out.println(stat); ResultSet rs = stat.executeQuery(); System.out.println("rs"+ rs); while(rs.next()) { System.out.println("inside while"); // // Product productName = new Product(); //String s= rs.getString("productName"); //System.out.println("Productname" + s); //productName.setProductName(rs.getString("productName")); productName.add(new Product((rs.getString("productName")))); System.out.println("item added successfully"); } return "success"; } catch(Exception ex){ ex.printStackTrace(); System.out.println("Exception" + ex.getMessage()); } return "error"; } public List<Product> getProductName() { return productName; } public void setProductName(List<Product> productName) { this.productName = productName; } } I would like to again state that the the above class is working fine. Output is as follows: xxxxxxxxxxxxxxx Database is connected com.mysql.jdbc.preparedstatem...@ad157f: [...@15e538e rscom.mysql.jdbc.result...@9c82f4 inside while item added successfully inside while item added successfully xxxxxxxxxxxxxxxxx Now I am giving you the action class which is not working: package net.astralpharma; import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; import org.apache.struts2.ServletActionContext; import javax.servlet.http.HttpServletRequest;
import java.sql.*; import java.util.*; import net.astralpharma.Productdisplay; public class Showpdtsuppliers extends ActionSupport { private String productId; private String productName; List<Supplier> supplierName = new ArrayList<Supplier>(); public String populate() { productName=getProductName(); return "populate"; } public String execute() throws Exception{ HttpServletRequest request = ServletActionContext.getRequest(); String productId = request.getParameter("productId"); //String productId=(String) ActionContext.getContext().getParameters().get("loginname"); System.out.println("Product Id = " + productId); String url = "jdbc:mysql://localhost:3306/"; String dbname="astraldb"; String driverName="org.gjt.mm.mysql.Driver"; String userName="root"; String password="root"; Connection con=null; PreparedStatement stat =null; try { Class.forName(driverName); System.out.println("Driver Loaded"); con = DriverManager.getConnection("jdbc:mysql://localhost:3306/astraldb","root","root" ); System.out.println("Database is connected"); System.out.println("Product Id = " + productId); System.out.println("Product Name = " + productName); String query="Select suppliername from supplier_proddetails where productid=?"; stat = con.prepareStatement(query); stat.setString(1, productId); System.out.println(stat); ResultSet rs = stat.executeQuery(); System.out.println("rs"+ rs); while(rs.next()) { System.out.println("inside while"); supplierName.add(new Supplier((rs.getString("supplierName")))); System.out.println("item added successfully"); } return "success"; } catch(Exception ex){ ex.printStackTrace(); System.out.println("Exception" + ex.getMessage()); } return "error"; } public List<Supplier> getSupplierName() { return supplierName; } public void setSupplierName(List<Supplier> supplierName) { this.supplierName = supplierName; } public String getProductId() { return productId; } public void setProductId(String productId) { this.productId = productId; } public String getProductName() { return productName; } public void setProductName(String productName) { this.productName = productName; } } As you can see that I am tryint to get the productId and have used http request.getParameter but its been of no help. I have also used: //String productId=(String) ActionContext.getContext().getParameters().get("loginname"); but it also not been able to get the productID from the front end jsp. I am appending the output. xxxxxxxxxxxxxx Product Id = Driver Loaded Database is connected Product Id = Product Name = null com.mysql.jdbc.preparedstatem...@8ab08f: Select suppliername from supplier_proddetails where productid=''[...@14d921a rscom.mysql.jdbc.result...@1b32627 xxxxxxxxxxxxxxxxx Please help. Regards, Prashant --- On Mon, 25/5/09, Dave Newton <newton.d...@yahoo.com> wrote: From: Dave Newton <newton.d...@yahoo.com> Subject: Re: not able to populate the productID or the productName from the front end jsp. To: "Struts Users Mailing List" <user@struts.apache.org> Date: Monday, 25 May, 2009, 7:06 PM Prashant Singh wrote: > I have been able to display the all the products on a jsp. Now I need > to click on one product and execute the action class and and display > all the suppliers supplying the product. > > I have not been able to execute the action class as I am not able to > populate the productID or the productName from the front end jsp. Basically I > am trying to reach the action class from href link which > I am able to do but I am not populating the productId and > productName. > > I did read the docs but did not get any answers. > > Please Help. Are the links rendering properly? Are you actually iterating over anything? In the code you're iterating over "productName", which to me sounds like a single entity. Looking at your code I'm suspicious--what is this supposed to do? public String doList() { suppliers=getSupplierName(); productName=getProductName(); productId=getProductId(); return "populate"; } You're calling a local method to set a local value with itself. Dave --------------------------------------------------------------------- To unsubscribe, e-mail: user-unsubscr...@struts.apache.org For additional commands, e-mail: user-h...@struts.apache.org Bollywood news, movie reviews, film trailers and more! Go to http://in.movies.yahoo.com/