У меня есть параметризованный абстрактный класс с одним параметризованного конструктору:почему я не могу вводить ребенок боб класс не боб абстрактного родительского класса
public abstract class BasicEntidadController<T extends Entidad> implements Serializable {
public BasicEntidadController(EntidadBean<T> entidadSessionBean) {....}
// other methods
}
и классом ребенка распространив его:
@SessionScoped
@Named
public class TiendaController extends BasicEntidadController<Tienda> implements Serializable {...}
и WELD сообщает об ошибке говорит мне, что "BasicEntidadController" не proxyable ....
org.jboss.weld.exceptions.UnproxyableResolutionException: WELD-001435 Normal scoped bean class org.wgualla.sandbox.entity.BasicEntidadController is not proxyable because it has no no-args constructor - Managed Bean [class org.wgualla.sandbox.tienda.TiendaController] with qualifiers [@Any @Default @Named].
Почему WELD является пытаясь создать прокси этого абстрактного/не-bean-класса ???
Должен ли я делать все классы, в дереве наследования, прокси-файлы, если я хочу использовать/использовать в EL expresion только последний ребенок в дереве?
Заранее спасибо.
Сообщений об исключении упоминания - * Управляемый компонент [класс org.wgualla.sandbox.tienda.TiendaController] * и жалоба - * не имеет конструктора no-args *. Может быть, сообщение не так прямо, но попробуйте добавить конструктор no-arg. –
Да, спасибо. Это простой способ. Я мог бы знать, почему сварка пытается создать прокси-сервер, если этот класс является абстрактным и никогда не будет вызван. – wgualla
, потому что все, что подходит для инъекций, должно соответствовать требованиям. Это одна из тех проблем, связанных с CDI и управляемыми бобами. –