how to collect data from JSP ?

Posted on 2011-09-13
Last Modified: 2012-08-14
I have database table column as

Itemid | Amount

I shall have a screen attached .

When my user submit the form. I want to insert the data into the above  table.

How do I collect the data in the servlet  so that it can preserve the mapping  i.e   itemid with Amount ?

Question by:cofactor
  • 6
  • 6
LVL 40

Expert Comment

ID: 36528759
You can preserve the indexes in the names
item1, amount1, etc

at the server side, you need to know how many pairs are there, then you can simply fetch
request.getParameter( "item" + index ); //in the loop
request.getParameter( "amount" + index ); //in the loop

something like this?

Author Comment

ID: 36533748
Thanks for the comments. I get some pointer . But my actual screen has one more field.  The above screen is just small part of it.

Here is the proposed screen and proposed database table ATTACHED.

Please see  screen and database table. As you see for a given ID in the screen I have multiple  (select box , amount ) pair.

How do I capture data  at server side for such a screen ? Can you please tell me a workaround ?

N.B: I generate those dynamic rows <tr>  and  select boxes using javascript.
LVL 40

Expert Comment

ID: 36533954
That should not be an issue.

You just need to name those input fields (select and amount) in such a way that by just appending the index (or a counter in a for loop) you should be able to retrieve values in servlet
MIM Survival Guide for Service Desk Managers

Major incidents can send mastered service desk processes into disorder. Systems and tools produce the data needed to resolve these incidents, but your challenge is getting that information to the right people fast. Check out the Survival Guide and begin bringing order to chaos.


Author Comment

ID: 36534096
Still confusing. Need more help here. I'm stuck at this part

>>>You just need to name those input fields

What name you suggest for  ID field ?

What name you suggest for select box and amount pairs  for the above ID field ?

Author Comment

ID: 36534315
comments ?
LVL 40

Expert Comment

ID: 36535007
This means, that for each Id there has to be select box and textbox right.
In this case, i would name my select box and textbox as item_{id value} and amount_{id value}

so, if you are iterating through the ids, you can easily fetch the select box and textbox value by appending the id value to the item_ and amount_

Author Comment

ID: 36535033
No. This will not work.

>>>i would name my select box and textbox as item_{id value} and amount_{id value}

you will have a  multiple select box and textbox for a  given id_value.

How do you address that  ?
LVL 40

Expert Comment

ID: 36540898
Good question. Got me thinking.
I guess one way to deal with this is to have a hidden input for each id, which will tell us how many item and amount pair are for each of them.

Author Comment

ID: 36547152
Not understood.  I dont get your idea.  Could you please tell me

in JSP:
what you write for ID field name ?

what you write for select box  name ?

what you write for amount box  name ?

In Servlet
How you retrieve the multiple values  for ID's and corresponding select box and amount pair now ?

LVL 40

Expert Comment

ID: 36547547
<<what you write for ID field name ?>>

<<what you write for select box  name ?>>

<<what you write for amount box  name ?>>

hidden field value == 1


now if the hidden field value is 2, which means that for one id there are more than one pair

For item id 1 and hidden field value 2


Author Comment

ID: 36547943
>>><<what you write for ID field name ?>>

You should not write a field name as "1" !  ...although nothing stops .

Please note i have to get the value of ID field also.
I should  NOT be doing this    

String field_value=request.getParameter("1"); // this  ..very bad
LVL 40

Accepted Solution

gurvinder372 earned 500 total points
ID: 36548057
i just gave an example, you can give any name you want, and you just have to append this name to the item_ and amount_

Expert Comment

ID: 36556627
you need to have another column added to the table - SeqNo - which would be having value of 1,2,3 etc for a given ID. Please note the combination of ID and SeqNo can be maintained as Unique value if required...
This you can use when naming the type and quantity
for ex:
type="type_<ID>_<SeqID>" for ex:TYPE_101_1, TYPE_101_2 etc...
Quantity="Quantity_<ID>_<SeqID>" for ex:Quantity_101_1, Quantity_101_2 etc...

Please let me know if you face any issue in this...

Featured Post

Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
javap bin 2 40
map related example 6 55
ejb on wildfly 5 30
Need Help! Getting a syntax error and don't understand why 3 31
I had a project requirement for a displaying a user workbench .This workbench would consist multiple data grids .In each grid the user will be able to see a large number of data. These data grids should allow the user to 1. Sort 2. Export the …
Introduction This article is the second of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers the basic installation and configuration of the test automation tools used by…
Video by: Michael
Viewers learn about how to reduce the potential repetitiveness of coding in main by developing methods to perform specific tasks for their program. Additionally, objects are introduced for the purpose of learning how to call methods in Java. Define …
Viewers will learn about basic arrays, how to declare them, and how to use them. Introduction and definition: Declare an array and cover the syntax of declaring them: Initialize every index in the created array: Example/Features of a basic arr…

839 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question