2013-09-16 3 views
0

У меня большая проблема, и я не знаю, была ли проблема в моей ошибке IDE, Ваадин или я делаю что-то действительно не так. Eclipse не находит некоторые методы, когда я пытаюсь их использовать (но они присутствуют при перечислении методов для объекта после добавления точки)Eclipse не находит некоторые объявленные методы (в библиотеках Vaadin)

Я могу привести пример, но есть больше (могу дать больше, если это необходимо):

Я хочу установить конвертер в ComboBox. Есть два способа для этого:

public void setConverter(java.lang.Class<?> datamodelType) 

public void setConverter(Converter<T,?> converter) 

Я хочу использовать второй, так что я это сделать:

myCombobox.setConverter(new Converter<User, Integer>(){ 

    // Some interface methods 

}); 

Но Eclipse, задает имя метода в красный цвет, и когда я парить я получаю это :

The method setConverter(Class<?>) in the type AbstractField<Object> is not applicable for the arguments (new Converter<User,Integer>(){}) 

Как будто он не знает, что существует другой способ. Когда я иду проверять класс, метод, конечно, существует, так как Eclipse указан первым.

Я действительно не знаю, почему это происходит, я ценю любую подсказку или мысль.

Большое спасибо

+0

Вы используете правильный интерфейс 'Конвертер '? то есть. 'com.vaadin.data.util.converter.Converter' –

ответ

1

ComboBox расширяет AbstractField<Object> так T для ComboBox является Object.

Поскольку параметры типового типа не могут быть заменены подклассами (если не указано), вы должны будете предоставить этот метод Converter<Object, ?> или он не соответствует сигнатуре метода.

myCombobox.setConverter(new Converter<Object, Integer>() { 
    // ... cast to `User` if you like 
}); 
+0

Спасибо, что сделал это, но я до сих пор не могу понять другую большую проблему. У меня есть это: calendar.setHandler (new EventClickHandler() { \t @Override общественного недействительными eventClick (EventClick событие) { \t // TODO автоматическая генерация метод заглушки \t } }); Это говорит мне использовать другой метод, и на этот раз не было никаких дженериков ... Думаю, мне придется открыть для него новый поток. Благодаря! – enkara

Смежные вопросы