Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / warning: [unchecked] unchecked call to....... / 10 сообщений из 10, страница 1 из 1
13.04.2009, 09:42:02
    #35927510
_konstantine_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
warning: [unchecked] unchecked call to.......
Есть сервлет

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
 package  test_cookie;

 import  javax.servlet.*;
 import  javax.servlet.http.*;
 import  java.io.*;
 import  java.util.*;

 public   class  CookieServlet  extends  HttpServlet{

	 private   final  Map books =  new  HashMap();
	 public   void  init(){
	
		books.put("C","01301");
		books.put("C++","01302");
		books.put("Java","01303");
		books.put("VB6","01304");
	}
	
	 protected   void  doPost(HttpServletRequest request, HttpServletResponse response) 
	 throws  ServletException, IOException{
	
		String language = request.getParameter("language");
		String isbn = books.get(language).toString();
		Cookie cookie =  new  Cookie(language, isbn);
		
		response.addCookie(cookie);
		response.setContentType("text/html");
		PrintWriter out = response.getWriter();

		out.println("<?xml version = \"1.0\"?>");
		out.println("<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 			     Strict//EN\"\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">");
	
		out.println("<html xmlns = \"http://www.w3.org/1999/xhtml\">");
	
		//заголовок документа
		out.println("<head>");
		out.println("<title> Welcome to Cookies </title>");
		out.println("</head>");
				
		out.println("<body>");	
		out.println("<p> Welcome to Cookies! You select "+language+" </p>");
		out.println("<p>< a href = "+" \"/my_web_project/servlets/CookieSelectLanguage.html\">"+ 
		"Click here to choose another language</a></p>");
		out.println("<p> <a href = \"/my_web_project/test_cookie\">"+
		"Click here to get book recommendattione</a></p>");
		out.println("</body>");
		
		out.println("</html>");
		out.close();
	}
	
	 protected   void  doGet(HttpServletRequest request, HttpServletResponse response) 
	 throws  ServletException, IOException{
		
		Cookie cookies[] = request.getCookies();
		response.setContentType("text/html");
		
		PrintWriter out = response.getWriter();
		
		out.println("<?xml version = \"1.0\"?>");
		out.println("<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 			     Strict//EN\"\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">");
	
		out.println("<html xmlns = \"http://www.w3.org/1999/xhtml\">");
	
		//заголовок документа
		out.println("<head>");
		out.println("<title> Recommendations </title>");
		out.println("</head>");
				
		out.println("<body>");	
		
		 if ((cookies !=  null ) && (cookies.length !=  0 )){
			
			out.println("<h1> Recommendations</h1>");
			out.println("<p>");
			
			 for ( int  i =  0 ; i < cookies.length; i++){
				
				out.println(cookies[i].getName()+ "How to Program. ISBN#: "+ cookies[i].getValue()+"<br/>");
			}
			out.println("</p>");
		} else {
			
			out.println("<h1> No Recommendations</h1>");
			out.println("<p>You did not select a language.</p>");
			out.println("<p>Cookie did not found!</p>");
		}
		out.println("</body>");
		out.println("</html>");	
		out.close();	
	}
}


получаю в результате компиляции

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
CookieServlet.java: 13 : warning: [unchecked] unchecked call to put(K,V) as a memb
er of the raw type java.util.Map
                books.put("C","01301");
                         ^
CookieServlet.java: 14 : warning: [unchecked] unchecked call to put(K,V) as a memb
er of the raw type java.util.Map
                books.put("C++","01302");
                         ^
CookieServlet.java: 15 : warning: [unchecked] unchecked call to put(K,V) as a memb
er of the raw type java.util.Map
                books.put("Java","01303");
                         ^
CookieServlet.java: 16 : warning: [unchecked] unchecked call to put(K,V) as a memb
er of the raw type java.util.Map
                books.put("VB6","01304");
                         ^
CookieServlet.java: 8 : warning: [serial] serializable  class  test_cookie.CookieSer
vlet has no definition of serialVersionUID
 public   class  CookieServlet  extends  HttpServlet{

что это значит?
...
Рейтинг: 0 / 0
13.04.2009, 10:18:13
    #35927605
Alexey Tomin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
warning: [unchecked] unchecked call to.......
_konstantine_Есть сервлет

Код: plaintext
1.
2.
3.
4.
	 private   final  Map books =  new  HashMap();
...
		books.put("C","01301");
...
получаю в результате компиляции
Код: plaintext
1.
2.
3.
4.
5.
CookieServlet.java: 13 : warning: [unchecked] unchecked call to put(K,V) as a memb
er of the raw type java.util.Map
                books.put("C","01301");
                         ^
...
что это значит?

Это значит, что уже несколько лет в java есть generic-типы и писать надо так (если я правильно понял, то хранится в map'е):
Код: plaintext
1.
	 private   final  Map<String, String> books =  new  HashMap<String, String>();
...
Рейтинг: 0 / 0
13.04.2009, 12:38:20
    #35928040
_konstantine_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
warning: [unchecked] unchecked call to.......
А это что ?
Код: plaintext
1.
2.
3.
CookieServlet.java: 8 : warning: [serial] serializable  class  test_cookie.CookieSer
vlet has no definition of serialVersionUID
 public   class  CookieServlet  extends  HttpServlet{
...
Рейтинг: 0 / 0
13.04.2009, 12:45:46
    #35928066
Alexey Tomin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
warning: [unchecked] unchecked call to.......
_konstantine_А это что ?
Код: plaintext
1.
2.
3.
CookieServlet.java: 8 : warning: [serial] serializable  class  test_cookie.CookieSer
vlet has no definition of serialVersionUID
 public   class  CookieServlet  extends  HttpServlet{


Купите уже книжку. Хватит глупые вопросы задавать.
...
Рейтинг: 0 / 0
14.04.2009, 07:08:36
    #35929455
_konstantine_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
warning: [unchecked] unchecked call to.......
для всех кто так же как и я ведется денег на книжку и не так умен и просветлен как Alexey Tomin

Последнее сообщение об ошибке значит что надо

Код: plaintext
1.
2.
3.
4.
5.
6.
   try { 
   books.put("C","01301");
   books.put("C++","01302");
   books.put("Java","01303");
   books.put("VB6","01304");
  } catch (....){}

добавить перехват исключения
...
Рейтинг: 0 / 0
14.04.2009, 08:08:51
    #35929489
The_ShadoW
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
warning: [unchecked] unchecked call to.......
_konstantine_Последнее сообщение об ошибке значит что надо
а) Это не сообщение об ошибке;
б) Нет, не значит;
в) Купите уже-таки книжку;
г) ???????
д) PROFIT!
...
Рейтинг: 0 / 0
14.04.2009, 08:19:45
    #35929498
Penkov Vladimir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
warning: [unchecked] unchecked call to.......
"The_ShadoW" <nospam@sql.ru>;
а) Это не сообщение об ошибке;
б) Нет, не значит;
в) Купите уже-таки книжку;
г) ???????
д) PROFIT!
плюсадин
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
15.04.2009, 08:48:10
    #35932118
_konstantine_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
warning: [unchecked] unchecked call to.......
Согласен это не сообщение об ошибке
Это ПРЕДУПРЕЖДЕНИЕ))
...
Рейтинг: 0 / 0
15.04.2009, 09:20:12
    #35932166
carper
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
warning: [unchecked] unchecked call to.......
_konstantine_А это что ?
Код: plaintext
1.
2.
3.
CookieServlet.java: 8 : warning: [serial] serializable  class  test_cookie.CookieSer
vlet has no definition of serialVersionUID
 public   class  CookieServlet  extends  HttpServlet{


1. Вопрос вовсе не глупый, хотя бы потому, что не имеет однозначного решения.

2. Вот мнение SUN:
If a serializable class does not explicitly declare a serialVersionUID,
then the serialization runtime will calculate a default serialVersionUID
value for that class based on various aspects of the class, as described
in the Java(TM) Object Serialization Specification. However, it is
strongly recommended that all serializable classes explicitly declare
serialVersionUID values, since the default serialVersionUID computation
is highly sensitive to class details that may vary depending on compiler
implementations, and can thus result in unexpected
InvalidClassExceptions during deserialization. Therefore, to guarantee a
consistent serialVersionUID value across different java compiler
implementations, a serializable class must declare an explicit
serialVersionUID value.

3. Весь фокус в том, что несмотря на это, никто не сделал генерацию таких переменных только где-то внутри виртуальной машины единственным выходом (кстати, алгоритм расчета такой величины, насколько я помню, весьма прост, но и его полезность несколько сомнительна), в том, что иногда таки классы меняются, а вот умники, которые соглашаются фигачить -1L этого обычно не учитывают (ну хорошо, всегда уверены, что они не забудут сменить номер версии - лично я в этом сильно сомневаюсь) и получается, что нужный InvalidClassExceptions не отбрасывается и десериализация может проходить без exceptions, но при этом быть совершенно неверной.

В общем, есть аргументы и за и против. Поэтому я такой warning считаю довольно неоднозначным и его пользу сомнительной, но лично сам скорее соглашусь с мнением SUN, просто учтя, что я выбрал не единственно верное решение, а меньшее из двух зол.


4. Так, на всякий случай, если вы применили сказали, что класс реализует Serializable и даже сгенерировали serialVersionUID, это еще не значит, что класс действительно можно использовать в RMI.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
11.05.2013, 20:06:01
    #38253869
webdes27
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
warning: [unchecked] unchecked call to.......
Попробуй перед методом поставить так:
Код: sql
1.
@SuppressWarnings("unchecked")
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / warning: [unchecked] unchecked call to....... / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]