aspose file tools*
The moose likes Servlets and the fly likes getting null value from radio button Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Servlets
Bookmark "getting null value from radio button" Watch "getting null value from radio button" New topic
Author

getting null value from radio button

alona ariel
Ranch Hand

Joined: Sep 09, 2008
Posts: 36
I wrote programm using jsp , servlet that choose one value from the radio button and go to another page according to my choose.

my program is : jsp

<form action=TestUser3 METHOD="post">


<input type="radio" name="kaspomat" value="a1" CHECKED>

radio button 1




<input type="radio" name="kaspomat" value="a10" CHECKED>

radio button 2




<input type="radio" name="kaspomat" value="a20" CHECKED>

radio button 3




<input type="submit" VALUE="Submit" >






<td> what your choise </td>


and the servlet is:

@see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request1, HttpServletResponse response1) throws ServletException, IOException {{
// TODO Auto-generated method stub

// try {
// super.doPost(request1, response1);
// } catch (ServletException e) {
// TODO Auto-generated catch block
// e.printStackTrace();
// catch (IOException e) {
// TODO Auto-generated catch block
// e.printStackTrace();
}

// TODO Auto-generated catch block







doPost1(request1, response1, null, null);

// TODO Auto-generated catch block

}




public String[] Kaspomat(HttpServletRequest request1, HttpServletResponse response1,String kaspomat){
String[] kaspomat1=request1.getParameterValues("radios");
return kaspomat1;
}



void doPost1 (HttpServletRequest request1, HttpServletResponse response1, Object object,String kaspomat)throws ServletException,IOException {
Kaspomat(request1, response1,kaspomat);
try {
if((kaspomat) != null) {

if(kaspomat.equals("a1")) {

javax.servlet.RequestDispatcher rd = this.getServletContext().getRequestDispatcher("/indexa1.jsp");
rd.forward(request1, response1);



}

if(kaspomat.equals("a10")) {
response1.sendRedirect("http://www.ynet.il");
}

if(kaspomat.equals("a20")) {

response1.sendRedirect("http://www.nrg.il");
}

}
else {
javax.servlet.RequestDispatcher rd = this.getServletContext().getRequestDispatcher("/indexwrong.jsp");
rd.forward(request1, response1);

}
}
catch (Exception e) {
e.printStackTrace();
}

}


}

my problem is why I get null value from the button?

please someone can help me?
Bear Bibeault
Author and ninkuma
Marshal

Joined: Jan 10, 2002
Posts: 61437
    
  67

Please UseCodeTags. As it stands, your code is unreadable.


[Asking smart questions] [Bear's FrontMan] [About Bear] [Books by Bear]
Tim McGuire
Ranch Hand

Joined: Apr 30, 2003
Posts: 820




and the servlet is:

Like Bear Bibeault says, please use code tags. I added them for you so you could see what it looks like.
I would change a few things to make this more readable. For example, don't have an upper case method name. The naming standards are that your method name start with a lower case letter.
then, you are passing around this variable "kaspomat" that is always null. as you call
That further confuses things.
then, the return value from the "Kaspomat" method is never read.
then, the parameter you are looking in "radios" is not the name of any control from the form. On the form, the radio buttons are named "kaspomat"
also, avoid using "l" (lower case L) and "1" (the number "one") in names like you do. In a lot of fonts, these look the same and when looking back over your code that can confuse.
this:


looks like:


but in first one, I used a "one" and in second one I used a lower case L
Rajkumar balakrishnan
Ranch Hand

Joined: May 29, 2008
Posts: 445




Why did you CHECKED all the three check-boxes by default?
alona ariel
Ranch Hand

Joined: Sep 09, 2008
Posts: 36
I WILL TRY AGAIN TO WRITE MY CODE , HOPLY IT WILL BE MORE CLEARLY.

The jsp code is:

1..<%@ page language="java" contentType="text/html; charset=windows-1255"
2.. pageEncoding="windows-1255"%>
3..<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
4..<html>
5..<head>
6..<meta http-equiv="Content-Type" content="text/html; charset=windows-1255">
7.. <title>Insert title here</title>
8--</head>
9--<body>
10--

welcome to our bank



11--<form action=TestUser3 METHOD="post">


12--<input type="radio" name="kaspomat" value="a1" CHECKED>

13--radio button 1
14--

15--

16--<input type="radio" name="kaspomat" value="a10" >

17--radio button 2
18--

19--

20--<input type="radio" name="kaspomat" value="a20" >

21--radio button 3
22--

23--

24--<input type="submit" VALUE="Submit" >

25--

26--


27--td> what your choise </td>


and the servlet is:

1.package alona;

2.import java.io.IOException;

3.import valueObjects.User;


4.* Servlet implementation class TestUser3

5.public class TestUser3 extends HttpServlet {
6.


7. private static final long serialVersionUID = 1L;
8. private Object user;



9. // TODO Auto-generated constructor stub



10. * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
11. public void doGet(HttpServletRequest request, HttpServletResponse response)throws javax.servlet.ServletException,
12. java.io.IOException {
13. // TODO Auto-generated method stub
14. // try {
15. // super.doGet(request, response);
16. // } catch (ServletException e) {
// TODO Auto-generated catch block
17. // e.printStackTrace();
18. // } catch (IOException e) {
// TODO Auto-generated catch block
19. // e.printStackTrace();
20. // doGet( request, response);
}
21.


22.// }

/**
23. * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
24. */
25. protected void doPost(HttpServletRequest request1, HttpServletResponse response1) throws ServletException, IOException {{
26. // TODO Auto-generated method stub

27. // try {
28. // super.doPost(request1, response1);
29. // } catch (ServletException e) {
// TODO Auto-generated catch block
30. // e.printStackTrace();
31. // catch (IOException e) {
// TODO Auto-generated catch block
32. // e.printStackTrace();
33. }

34. // TODO Auto-generated catch block







35. doPost1(request1, response1, null, null);

36. // TODO Auto-generated catch block

37. }






38.
void doPost1 (HttpServletRequest request1, HttpServletResponse response1,String username)throws
39.

ServletException,IOException {
40. String kaspomat1=(String)request1.getParameter("radios");




41.
42. try {
if((request1.getParameterValues("radios")) != null) {
43.
44. if(request1.getParameterValues("radios").equals("a1")) {

45. javax.servlet.RequestDispatcher rd = this.getServletContext().getRequestDispatcher
46. ("/indexa1.jsp");

47. rd.forward(request1, response1);



48. }

49. if(request1.getParameterValues("radios").equals("a10")) {
50. response1.sendRedirect("http://www.ynet.il");
51. }
52.
53. if(request1.getParameterValues("radios").equals("a20")) {

54. response1.sendRedirect("http://www.nrg.il");
55. }

56. }
else {
57. javax.servlet.RequestDispatcher rd = this.getServletContext().getRequestDispatcher("/indexwrong.jsp");
58. rd.forward(request1, response1);

59. }
}
60. catch (Exception e) {
61. e.printStackTrace();
62. }
63.
64. }


65.}
Bear Bibeault
Author and ninkuma
Marshal

Joined: Jan 10, 2002
Posts: 61437
    
  67

Your code is even more unreadable than before!

Please read this: UseCodeTags <-- this is a link, click it!

Then read it again!
adil qureshi
Ranch Hand

Joined: Jul 11, 2008
Posts: 48


See the problem is not with the button but the way you are calling doPost1 here you are comparing with kaspomat but can you just see that in doPost1 you are passing null so it will always be null , actually you have to loop through String[] kaspomat1=request1.getParameterValues("radios"); and then pass the individual array elements so that correct output is processed..


SCJP 1.5,SCWCD 1.5
Tim McGuire
Ranch Hand

Joined: Apr 30, 2003
Posts: 820

alona ariel wrote:I WILL TRY AGAIN TO WRITE MY CODE , HOPLY IT WILL BE MORE CLEAR.




You are missing the idea of code tags. Bear posted a link (http://faq.javaranch.com/java/UseCodeTags). Perhaps you didn't see it as a link, but you must read it.
 
 
subject: getting null value from radio button