У меня есть приложение, основанное на веб-сервисах, в которых присутствуют несколько классов. Некоторые типы классов: abstract
, которые расширены в других классах для определения тела для методов абстрактного класса. Я использовал spring для создания экземпляров классов в контексте xml. Я использовал context:component-scan base-package="com.test.webservices"
, он просматривал все классы @Component
и создавал экземпляр, но не сканировал абстрактный класс.java.lang.InstantiationException с абстрактным классом Использование Conponent-Scan
Теперь мой вопрос здесь в том, что есть решение для сканирования абстрактного класса с использованием компонентного сканирования?
Кодекса как-
@Component
public abstract class HibernateEntityManager{ ... }
@Component
public class HibernateGenericDaoImpl extends HibernateEntityManager{ ... }
В applicationContext.xml У меня есть
<context:component-scan base-package="com.test.webservices"/>
, что сканирование всех классов excepts абстрактных классов.
Исключение: -
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManager' defined in ServletContext resource [/WEB-INF/classes/ApplicationContext/applicationContext.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.test.webservices.utils.HibernateEntityManager]: Is it an abstract class?; nested exception is java.lang.InstantiationException
Приветствую вас, чтобы переполнение стека. Пожалуйста, прочитайте http://stackoverflow.com/help/how-to-ask о том, как задать хороший вопрос. И соответствующим образом измените свой вопрос. По крайней мере, добавьте трассировку стека ... –
Создайте beans только для конкретного подкласса. См. Http://stackoverflow.com/questions/2921899/spring-abstract-class-and-annotations – Waqar