抽象 EJB とその 2 つのサブクラスがあります。私の管理対象 Bean では、抽象型のフィールドが必要であり、サブクラスのいずれかのインスタンスを使用してページに渡されるパラメーターに応じて初期化します。インジェクションを使用してこれを行う方法はないと思います。古き良きJNDIルックアップを使用する必要があります...または、インジェクションを使用できるように再設計する方法がありますか?
リビジョンEJB 抽象を定義できないと思いますが、状況は変わりません。AbstractEJB が抽象的でなくても、そのサブクラスのみをインスタンス化したい。
@Stateless
public abstract class AbstractEJB {
public abstract void method1();
}
@Stateless
public class Implementation1 extends AbstractEJB () {
public void method1() { ... }
}
@Stateless
public class Implementation2 extends AbstractEJB () {
public void method1() { ... }
}
@ManagedBean
public class MyManagedBean {
@EJB
AbstractEJB myEJB; //has to be initialized with either Implementation1 or Implementation2 instance
}