• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Value from select element is null in request

 
Ranch Hand
Posts: 327
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Here is where I create the option list:


I would like to have the FIRSTNAME and LASTNAME concatenated as the display for the option list,
but the bigger problem is that the professor attribute in the request is null when accessed as follows:



I have been reading posts for quite a while and other articles, and I am just not seeing what the problem is.

Thanks for any direction.
 
Author
Posts: 12617
IntelliJ IDE Ruby
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Request attributes and request parameters are not the same thing.
 
Sheriff
Posts: 67746
173
Mac Mac OS X IntelliJ IDE jQuery TypeScript Java iOS
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Two things:

First, please be sure to use code tags when posting code to the forums. Unformatted code is extremely hard to read and many people that might be able to help you will just move along to posts that are easier to read. Please read this for more information. You can go back and change your post to add code tags by clicking the button on your post.

Second, examine the difference between getParameter() and getAttribute().
 
Mary Taylor
Ranch Hand
Posts: 327
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thank you; I know that. At least the mistake was only in a value being used to print out a debug statement. I did use "getParameter" when setting the "sessionProfessor".

String sessionProfessor = request.getSession().setAttribute("professor", request.getParameter("professor"));


It is, however, null when I try to access it.

I did struggle a while before discovering the difference in getParameter and getAttribute, but I resolved that a few weeks ago, just failing to show that in this code. At any rate, the value is not in the request object.

When I leave this initial jsp page with the select element option items, it is with an HREF link. Would that prevent the values from the option list being stored in the request object?

I was using radio buttons to try to go to one of two pages, but I could not figure out how to do that so I changed them to two HREF links which takes me to the correct page but without the values stored in the request object. I can go back to using the radio buttons, but I could not determine how to use the value from the radio button to go to the correct following page. I understand using the action attribute of the form tag in html on the jsp page; but if I want to go to one of two different jsp pages based on a radio group value, how would I do that? Would that then enable the jsp page to store the values in the request object?

I am very new to web projects but have been reading a lot and learning a lot, just not "there" yet. Thank you for any advice.
 
Ranch Hand
Posts: 874
Android VI Editor Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Mark,

When I leave this initial jsp page with the select element option items, it is with an HREF link. Would that prevent the values from the option list being stored in the request object?



href link do not submit forms by default. You need to use javascript to call submit() method to submit the form. Also to note is the request objects ( paramertes as well as attributes) exists only for that particular request , for the next request it new request object and it has to be set with required values again.





I was using radio buttons to try to go to one of two pages, but I could not figure out how to do that so I changed them to two HREF links which takes me to the correct page but without the values stored in the request object. I can go back to using the radio buttons, but I could not determine how to use the value from the radio button to go to the correct following page. I understand using the action attribute of the form tag in html on the jsp page; but if I want to go to one of two different jsp pages based on a radio group value, how would I do that? Would that then enable the jsp page to store the values in the request object?



You can submit to 2 different actions by invoking appropriate javascript function. During submission action attribute can be changed dynamically (but redefined) and submitted.

ex : you can use similar logic for radi button as well.








 
Mary Taylor
Ranch Hand
Posts: 327
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I am not allowed to use JavaScript in this project. I can store the request parameters in the session object once I get them into the request object, but I can't do that using javascript.
 
David Newton
Author
Posts: 12617
IntelliJ IDE Ruby
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Then use a form?
 
Mary Taylor
Ranch Hand
Posts: 327
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
i don't understand the question. Of course I am using a form in one jsp with the select options described in the original post. Then there are two HREF links at the bottom of the form for the user to determine the next page to go to. I think the selection from the select options is not stored in the request when using an HREF link to go to the next jsp.
Is this correct?

I have moved the select option code to the same page as I have a file upload as follows:



However, I am still finding a null value for the select option in the request parameter.

What am I missing?
 
Bear Bibeault
Sheriff
Posts: 67746
173
Mac Mac OS X IntelliJ IDE jQuery TypeScript Java iOS
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Mary Taylor wrote:I think the selection from the select options is not stored in the request when using an HREF link to go to the next jsp. Is this correct?


Absolutely correct. Form elements are submitted only when the form is submitted. Anchor tags with hrefs have no effect whatsoever on the form and submit nothing to do with the form.

You'll need to encode the request parameters to be submitted onto the href itself, which of course, you cannot do with a dynamic value like the selected option without JavaScript.

Without JavaScript, you are severely severely limited as to what sort of client-side activities can take place.
 
Mary Taylor
Ranch Hand
Posts: 327
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanks, Bear. Slowly learning this area. Now, can you tell me if I have a form with a select option and a file upload as you can see in the posts above, should that work when I submit the form? I have successfully uploaded several files to my database before starting to work on adding this information from the select option element. I need the information from the select option element to store with the file. Can I get that information within the form as I now have it with the select opotion and file upload both within the same form.
 
Bear Bibeault
Sheriff
Posts: 67746
173
Mac Mac OS X IntelliJ IDE jQuery TypeScript Java iOS
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Yes, the other form elements (besides the file element) will be submitted as part of the multi-part form. You cannot, however, use getParameter(), which does not work with multi-part forms. If you are using a 3rd-party package to parse the multi-part form, it will have an API that allows you to get at the values.

Otherwise, you'll need to parse them out yourself. (not recommended!)
 
Mary Taylor
Ranch Hand
Posts: 327
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Are you saying I cannot get the selected value out of the request without a third party tool? I am already getting the file uploaded into a blob and retrieved so that part is ok. Maybe I can somehow redesign this thing so I only upload the file from that page which is what I previously had until I needed to move the selected option away from the page with the HREF links trying to get it's value.
 
Bear Bibeault
Sheriff
Posts: 67746
173
Mac Mac OS X IntelliJ IDE jQuery TypeScript Java iOS
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Are you currently parsing the multi-part form yourself? If so, the request parameters are part of the input stream.

Most experienced developers will recommend the use of one of the 3rd-party packages however. See the JSP FAQ for links.
 
Don't get me started about those stupid light bulbs.
reply
    Bookmark Topic Watch Topic
  • New Topic