Warning: [unchecked] unchecked call to put (K, V) как член исходного типа java.util.Hashtable localParams.put(name, values);

У меня есть 2 предупреждения: - Первое:

HELPDESKGESTION2\src\java\glpi\filter\LoginFilter.java:289: warning: [unchecked] unchecked call to put(K,V) as a member of the raw type java.util.Hashtable
                    localParams.put(key, value);
                                   ^

- второе:

HELPDESKGESTION2\src\java\glpi\filter\LoginFilter.java:292: warning: [unchecked] unchecked call to put(K,V) as a member of the raw type java.util.Hashtable
            localParams.put(name, values);
                           ^

Код ho генерирует эти предупреждения:

public void setParameter(String name, String []values) {
    if (debug) System.out.println("LoginFilter::setParameter(" + name + "=" + values + ")" + " localParams = "+ localParams);

    if (localParams == null) {
    localParams = new Hashtable();
    // Copy the parameters from the underlying request.
    Map wrappedParams = getRequest().getParameterMap();
    Set keySet = wrappedParams.keySet();
    for (Iterator it = keySet.iterator(); it.hasNext(); ) {
        Object key = it.next();
        Object value = wrappedParams.get(key);
        localParams.put(key, value);
    }
    }
    localParams.put(name, values);
}

Ответ 1

Заменить:

localParams = new Hashtable();

С

localParams = new Hashtable<String,String>();

Я предполагаю, что у вас есть глобальная переменная, такая как:

private Hashtable localParams;

Заменить это следующим образом:

private Hashtable<String,String> localParams;

Если вы внесете изменения, я предположил, что предупреждения исчезнут, но вам также придется заменить весь свой объект на String;