servlet checkboxs (data from Database)

Hi,

I am displaying data from a DB using EJB3/JEE5 as below:

for(Iteamdetailhlp itemlist: iteamdetailhlp){

//String s=itemlist.getitmid();

out.println("<TR>");

out.println("<form method='get' action='AllItemsser'>");

out.println("<td>");out.println("<input type='checkbox' name='itemcd' value='itemlist.getitmid()'/>"+ itemlist.getitmid());out.println("</td>");

out.println("<td>");out.println( itemlist.getitmname());out.println("</td>");

out.println("<td>");out.println(itemlist.getdescription());out.println("</td>");

out.println("<td>");out.println(itemlist.getitemsize());out.println("</td>");

out.println("<td>");out.println(itemlist.getcolour());out.println("</td>");

out.println("<td>");out.println(itemlist.getprice());out.println("</td>");

out.println("</td>");}

out.println("<input type='Submit' value='itm' name='itm'/>");

String itmcod=request.getParameter("itemcd");

out.println(itmcod);

System.out.println(itmcod);

When I checked the checkbox, I get a null value. How do I make sure, data from the database is applied to the checkbox?

eve

[1287 byte] By [evepokuaa] at [2007-11-27 4:19:14]
# 1

I have figure this problem out. I had the for Loop closed as below:

for(Iteamdetailhlp itemlist: iteamdetailhlp){

String s=itemlist.getitmid();

out.println("<TR>");

out.println("<form method='get' action='AllItemsser'>");

out.println("<td>");out.println("<input type='checkbox' name='itemcd' value='itemlist.getitmid()'/>"+ itemlist.getitmid());out.println("</td>");

out.println("<td>");out.println( itemlist.getitmname());out.println("</td>");

out.println("<td>");out.println(itemlist.getdescription());out.println("</td>");

out.println("<td>");out.println(itemlist.getitemsize());out.println("</td>");

out.println("<td>");out.println(itemlist.getcolour());out.println("</td>");

out.println("<td>");out.println(itemlist.getprice());out.println("</td>");

out.println("</td>");}//this was closed

out.println("<input type='Submit' value='itm' name='itm'/>");

String itmcod=request.getParameter("itemcd");

out.println(itmcod);

System.out.println(itmcod);

The problems is resolved. But it is doing something else. I will soon sort it out.

Thanks

eve

evepokuaa at 2007-7-12 9:26:09 > top of Java-index,Enterprise & Remote Computing,Web Tier APIs...
# 2

out.println("<td>");out.println("<input type='checkbox' name='itemcd' value='itemlist.getitmid()'/>"+ itemlist.getitmid());out.println("</td>");

i think is have problemhere

value='itemlist.getitmid()'

u need to put same as

out.println("<td>");out.println("<input type='checkbox' name='itemcd' value='"+itemlist.getitmid()+"'/>"+ itemlist.getitmid());out.println("</td>");

becouse when you put whithout double qutation will save is the method name the valu of that

thanks

javaskilleda at 2007-7-12 9:26:09 > top of Java-index,Enterprise & Remote Computing,Web Tier APIs...
# 3

Thank you. You were right. I did something like you suggested but then I had

and error because, I forgot to put the '+' sign before and after:

'"+ itemlist.getitmid()+ "'

The other problem I was having was that the data coming from the DB was being Collected and displayed in a for Loop:

for(Iteamdetailhlp itemlist: iteamdetailhlp){

out.println("<TR>");

out.println("<form method='get' action='CollectPointordser'>");

out.println("<td>");out.println("<input type='checkbox' name='itemcd' value='"+ itemlist.getitmid()+ "'>"+ itemlist.getitmid());out.println("</td>");

out.println("<td>");out.println( itemlist.getitmname());out.println("</td>");

out.println("<td>");out.println(itemlist.getdescription());out.println("</td>");

out.println("<td>");out.println(itemlist.getitemsize());out.println("</td>");

out.println("<td>");out.println(itemlist.getcolour());out.println("</td>");

out.println("<td>");out.println(itemlist.getprice());out.println("</td>");

out.println("</td>");

}

out.println("<input type='Submit' value='itm' name='itm'/>");

String itmcod=request.getParameter("itemcd");

out.println(itmcod);

//System.out.println(s);

System.out.println(itmcod);

Now as the checkbox has only one name, that means it only collects or prints the first checked box that is ticked.

I think I have to use:

String itmcod=request.getParameterValues("itemcd");

But i am not sure if it would work with a For Loop.

The idea is to allow user to tick whatever item they are looking for. The user

could tick one or more than one item. But I can't give the check box individual names as I don't know how many data would be coming out of the DB.

Any ideas.

Thanks

eve

evepokuaa at 2007-7-12 9:26:09 > top of Java-index,Enterprise & Remote Computing,Web Tier APIs...
# 4

hi everyone,

This issue has been resolved with the following code:

for(Iteamdetailhlp itemlist: iteamdetailhlp){

out.println("<TR>");

out.println("<form method='get' action='CollectPointordser'>");

out.println("<td>");out.println("<input type='checkbox' name='itemcd' value='"+ itemlist.getitmid()+ "'>"+ itemlist.getitmid());out.println("</td>");

out.println("<td>");out.println( itemlist.getitmname());out.println("</td>");

out.println("<td>");out.println(itemlist.getdescription());out.println("</td>");

out.println("<td>");out.println(itemlist.getitemsize());out.println("</td>");

out.println("<td>");out.println(itemlist.getcolour());out.println("</td>");

out.println("<td>");out.println(itemlist.getprice());out.println("</td>");

out.println("</td>");

}

out.println("<input type='Submit' value='itm' name='itm'/>");

String[] itmcod=request.getParameterValues("itemcd");

for (int i=0; i<itmcod.length; i++){

out.println(itmcod);

//System.out.println(s);

System.out.println(itmcod);}

thanks

eve>

evepokuaa at 2007-7-12 9:26:09 > top of Java-index,Enterprise & Remote Computing,Web Tier APIs...