Я позволю своему коду говорить за меня, во-первых, вот мой root-context.xml:
<context:component-scan base-package="it.trew.prove" />
<bean id="usersDao" class="it.trew.prove.model.dao.UsersDao" />
<bean id="usersService" class="it.trew.prove.server.services.UsersServiceImpl" />
Некоторые из моих пользователей dao:
public class UsersDao extends ObjectifyDao<User> {
protected UsersDao(Class<User> clazz) {
super(User.class);
}
static {
ObjectifyService.register(User.class);
}
}
И мои пользователислужба (реализация):
public class UsersServiceImpl implements UsersService {
private final UsersDao usersDao;
@Autowired
public UsersServiceImpl(UsersDao usersDao) {
this.usersDao = usersDao;
}
@Override
public List<User> listUsers() {
return usersDao.list();
}
@Override
public void saveUser(User user) {
usersDao.add(user);
}
}
Теперь мой журнал:
AVVERTENZA: вложено в org.springframework.beans.factory.UnsatisfiedDependencyException: Ошибка при создании компонента с именем 'usersController'определено в файле [/home/fabio/stsworkspace/TestGAE/target/TestGAE-1.0-SNAPSHOT/WEB-INF/classes/it/trew/prove/web/UsersController.class]: неудовлетворенная зависимость, выраженная через аргумент конструктора с индексом 0 изтип [it.trew.prove.server.services.UsersService]:: Ошибка создания компонента с именем 'usersService', определенным в ресурсе ServletContext [/WEB-INF/spring/root-context.xml]: Неудовлетворенная зависимость, выраженная через аргумент конструктора синдекс 0 типа [it.trew.prove.model.dao.UsersDao]:: Ошибка создания бина с именем 'usersDao', определенным в ресурсе ServletContext [/WEB-INF/spring/root-context.xml]: создание объекта бинасветодиод;вложенным исключением является org.springframework.beans.BeanInstantiationException: не удалось создать экземпляр класса бина [it.trew.prove.model.dao.UsersDao]: не найден конструктор по умолчанию;вложенным исключением является java.security.PrivilegedActionException: java.lang.NoSuchMethodException: it.trew.prove.model.dao.UsersDao. ();вложенное исключение - org.springframework.beans.factory.BeanCreationException: ошибка при создании bean-компонента с именем 'usersDao', определенным в ресурсе ServletContext [/WEB-INF/spring/root-context.xml]: сбой при создании экземпляра bean;вложенным исключением является org.springframework.beans.BeanInstantiationException: не удалось создать экземпляр класса бина [it.trew.prove.model.dao.UsersDao]: не найден конструктор по умолчанию;вложенным исключением является java.security.PrivilegedActionException: java.lang.NoSuchMethodException: it.trew.prove.model.dao.UsersDao. ();вложенное исключение - org.springframework.beans.factory.UnsatisfiedDependencyException: ошибка создания бина с именем 'usersService', определенным в ресурсе ServletContext [/WEB-INF/spring/root-context.xml]: несогласованная зависимость, выраженная через аргумент конструктора с индексом 0 ofтип [it.trew.prove.model.dao.UsersDao]:: Ошибка создания бина с именем 'usersDao', определенным в ресурсе ServletContext [/WEB-INF/spring/root-context.xml]: сбой при создании экземпляра бина;вложенным исключением является org.springframework.beans.BeanInstantiationException: не удалось создать экземпляр класса бина [it.trew.prove.model.dao.UsersDao]: не найден конструктор по умолчанию;вложенным исключением является java.security.PrivilegedActionException: java.lang.NoSuchMethodException: it.trew.prove.model.dao.UsersDao. ();вложенное исключение - org.springframework.beans.factory.BeanCreationException: ошибка при создании bean-компонента с именем 'usersDao', определенным в ресурсе ServletContext [/WEB-INF/spring/root-context.xml]: сбой при создании экземпляра bean;вложенным исключением является org.springframework.beans.BeanInstantiationException: не удалось создать экземпляр класса бина [it.trew.prove.model.dao.UsersDao]: не найден конструктор по умолчанию;вложенным исключением является java.security.PrivilegedActionException: java.lang.NoSuchMethodException: it.trew.prove.model.dao.UsersDao. (): java.lang.NoSuchMethodException: it.trew.prove.model.dao.UsersDao ().
Итак ... по вашему честному мнению, как я могу изменить свой код, чтобы он работал правильно?
- Извините за столь многословный:) -