Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Spring @Autowired 
:(
    Опции темы
rds29
Дата 1.4.2011, 13:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 1.4.2011

Репутация: нет
Всего: нет



Я описываю в файле servlet.xml следующую строчку 
Код
 <bean id="beanValidator" class="springmvc.service.BeanValidator"/>

Если я правильно понимаю, то во время исполнения создается объект этого класса, так?
Каким образом можно обратиться и использовать этот объект?
Пробовал вот таким образом. Но объект validator при этом всегда остается со значением Null/
Код
    
@Autowired
private Validator validator 

PM MAIL   Вверх
MisterCleric
Дата 1.4.2011, 14:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1043
Регистрация: 16.2.2006
Где: Харьков, Украина

Репутация: 33
Всего: 38



Привет. А где ты его так используешь?
По-моему если бы ты это сделал в рамках Spring Bean, то получил бы либо instance твоего beanValidator или Exception, что bean с таким типом не определен в SpringContext


--------------------
ПРИШЕЛ, УВИДЕЛ - ПЕРЕПИСАЛ...
PM MAIL ICQ   Вверх
rds29
Дата 1.4.2011, 14:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 1.4.2011

Репутация: нет
Всего: нет



Использую след. образом:
Код

@Service
public class CarManager {

     @Autowired
    private Validator validator;

//поля, методы

public Car createCar(Car c) {

    Car car = new Car();
    car.setId((long) carList.size() + 1);
    car.setBrand(c.getBrand());
    car.setModel(c.getModel());
    car.setPrice(c.getPrice());

        System.out.println( validator);

    carList.add(car);
        
    return car;
}    
}



Вот и в консоль мне выводит null, и соответственно при вызове метода validate NullPointerException.

Пробовал разные способы как получить объект, но он всегда null, хотя если пишу что-то типо:

Код

    LocalValidatorFactoryBean validatorfactory = new LocalValidatorFactoryBean();
  Validator validator =  validatorfactory.getValidator();

То создается не нул объект validatorfactory , а validator все равно получается null


Это сообщение отредактировал(а) rds29 - 1.4.2011, 14:14
PM MAIL   Вверх
Entwickler
Дата 16.5.2011, 18:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 285
Регистрация: 14.4.2007

Репутация: нет
Всего: 2



Во первых, нужно описывать BEAN в application-config.xml или другом конфигурационном файле твоего приложения...

Во вторых ОН не знает что за бин ты вызываешь:
Код

@Autowired
private Validator validator


продекларировал его как:
Код

<bean id="beanValidator" class="springmvc.service.BeanValidator"/>


используй:
Код

@Qualifier("beanValidator")

аннотацию:
Код

@Autowired
@Qualifier("beanValidator")
private Validator validator


тогда он правильно найдёт beanValidator в spring contexte и привяжет reference к validator
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0634 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.