Como validar paso de parametros genericos en metodo recursivo

Tengo el sigueinte codigo:

 
Como ven simplemente lo que hace es recorrer los container recursivamente y en cada container busca un JList especificado por su nombre, si lo consigue asigna un ListModel de tipo generico usando el metodo setModel() correspondiente, al compilar lanza el siguiente warning:

 

Pos supuesto puedo deshabilitar el warning quitando el -Xlint pero la pregunta es porque no se valida correctamente en este caso si el parametro esta declarado como un generico y el setModel en su definicion es public void setModel(ListModel model) ?? Alguien podria darme luz en este asunto ???

Gracias

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de Cid

Debido a que utilizaste un

Debido a que utilizaste un genérico con uso de comodín (<?>) esto quiere decir que esta a la espectativa de lo que reciba como resultado (lo que sea, siempre y cuando sea objeto lo tomará   hasta un  ), y en la definición de la API de esa Clase utiliza la letra "E" que se usa pra elementos específicos y no "?" que se usa para comodines.

Imagen de ezamudio

? extends Object

Creo que debes poner