Solved

Keeping values after refreshing...

Posted on 2004-09-07
12
289 Views
Last Modified: 2010-04-01
Hi, I am creating a jsp file that has a checkbox and a select box.  There are also two buttons: one "Run" button that will run something give the choices in the checkbox and select box, and the second "Apply Settings" button applies the settings so that if a user presses the "Run" button, the choices that the user picked right before clicking apply settings will be in affect.  Is there a way to keep the choices selected (choices that the user choose after clicking the "Apply Settings" button) even when the user performs a refresh on the page?  Currently, if the user clicks refresh, all the default values are selected.

If possible, please provide some sample code. Any comments or suggestions are well appreciated.

Thanks,
noijet.
0
Comment
Question by:noijet
  • 8
  • 4
12 Comments
 
LVL 21

Expert Comment

by:MogalManic
ID: 12001278
The only way to persist attributes accross multiple requests is to store the values on the session.  Maybe something like this...

<form name='runForm' method='post'>
<input type='checkbox' name='checkbox1'
    <%if (session.getAttribute('checkbox1')!=null) {
        %>checked='true'<%
     }%>/>
<input type='button' name='run' value='run' onclick='javascript:run()'/>
<input type='button' name='Apply' value='ApplySettings' onclick='javascript:apply()'/>
</form>
<%
  if (request.getMethod().equals("POST") {
     if (request.getAttribute("checkbox1")!=null)
       session.setAttribute("checkbox1", request.getAttribute("checkbox1"));
  }
%>
0
 

Author Comment

by:noijet
ID: 12008013
Thank you MogalManic, I am currently on another urgent project, but I will get back as soon as possible, thanks again!

-noijet
0
 

Author Comment

by:noijet
ID: 12019275
Hi MogalManic, thanks for your comment and sorry for the delay !.  

Is there a way to do this using hidden fields or cookies?  I have always thought cookies are like sessions, am I right?

Thanks,
noijet.
0
PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

 
LVL 21

Expert Comment

by:MogalManic
ID: 12022209
Oh yea,

Sometimes the simplest solutions are the best!  I don;t have time right now to do a full blown and tested page but it would be something like this:

<body onload='setOptions()'>
<form name='runForm' method='post'>
<input type='checkbox' name='checkbox1' >
<input type='button' name='run' value='run' onclick='javascript:run()'/>
<input type='button' name='Apply' value='ApplySettings' onclick='onclick='setCookie("checkbox1", "this.checked", (new Date())+5000 /*5 seconds from now*//)'/>
</form>


To answer your cookie & session question:
The Java servlet uses cookies for the Session ID and the session data is then stored on the server and mapped to the user via the session ID.  This means that sessions are a little more secure than cookies because the user does not directly know what is stored.  If you use an all cookie solution, then the user CAN (probably does not know how) view the cookies on his hard drive.
0
 

Author Comment

by:noijet
ID: 12030959
Thank you for your very informative and excellent answer MogalManic.  Regarding cookies, what risk would it be to allow users to view the cookies on his hard drive, could the user use that to break into my server or something?  I would probably store the user's name, address so that the user doesn't have to type it again on another page or for some other action.

Thank you,
noijet.
0
 
LVL 21

Accepted Solution

by:
MogalManic earned 180 total points
ID: 12031070
no, the cookies just would be the data the client stored.  The client would just know more details on how your page works.  They could manually change the cookie data W/O going through your page.
0
 

Author Comment

by:noijet
ID: 12031108
Thanks MogalManic, so if they do manually change the cookie data, they would only be doing this on their own local machines?

Thanks,
noijet.
0
 

Author Comment

by:noijet
ID: 12031602
Hi MogalManic, an off-topic question, do you know how to get an image next to the web address, sort of like how experts-exchange has it?

(I didn't want to write another question, but I added some points though)
Thanks noijet
0
 
LVL 21

Expert Comment

by:MogalManic
ID: 12034173
I'm not sure that I understand the question.  Do you mean this:
   <a href='/nextImage><img src="next.gif"></a>
0
 

Author Comment

by:noijet
ID: 12055404
Thanks MogalManic for your comment, I meant on the Address bar near the top of our webbrowser.  On the left side of "http://www.experts-excha..., there is a image, can we change that?

Thanks again,
noijet.
0
 

Author Comment

by:noijet
ID: 12143327
Hi, I currently have a question open regarding using Tomcat and ServletExec Application servers, if you have some comments please check out question:  "Working with Tomcat and ServletExec on IIS..."     http://experts-exchange.com/Web/Web_Servers/IIS/Q_21143102.html

Thank you !
noijet
0
 

Author Comment

by:noijet
ID: 12435118
Hi everybody !  If possible, can you take a look this question regrading a mysterious scrollbar appearing in Netscape 7.2 but not in Netscape 7.1 or IE?  

At link: http://www.experts-exchange.com/Web/Web_Languages/HTML/Q_21186370.html

Thank you !
noijet
0

Featured Post

ScreenConnect 6.0 Free Trial

Discover new time-saving features in one game-changing release, ScreenConnect 6.0, based on partner feedback. New features include a redesigned UI, app configurations and chat acknowledgement to improve customer engagement!

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
caughtSpeeding java challenge 16 136
nested if has else if 13 94
Is possible to make a jsp script work with oracle wallet? 7 101
mask rule in struts validation.xml 5 87
This article outlines why you need to choose a backup solution that protects your entire environment – including your VMware ESXi and Microsoft Hyper-V virtualization hosts – not just your virtual machines.
This Micro Tutorial hows how you can integrate  Mac OSX to a Windows Active Directory Domain. Apple has made it easy to allow users to bind their macs to a windows domain with relative ease. The following video show how to bind OSX Mavericks to …
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…

777 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