كيفية استخدام JNDI للحصول على حبة جلسة جديدة ، في EJB3؟
-
27-09-2019 - |
سؤال
أحاول استخدام JNDI للحصول على حبة جلسة جديدة في Servlet (كمتغير محلي). لي doGet()
الطريقة لديها ما يلي:
Bean bean = (Bean) new InitialContext().lookup("beanName");
لقد حاولت بما في ذلك java:comp/env
لكن جميع محاولاتي أدت إلى تسمية استثناءات.
أحاول ربط الفول في @Stateful
التعليق التوضيحي ، باستخدام تخمينات مختلفة مثل @Stateful(name="beanName")
و @Stateful(mappedName="beanName")
المحلول
ما أحتاجه هو استخدام @EJB
التعليق التوضيحي على servlet على مستوى الفصل ، على النحو التالي:
@EJB(name="beanName", beanInterface = Bean.class)
ثم يمكن أن يحدث البحث في طريقة الخدمة باستخدام الاسم المرتبط بواسطة @EJB
حاشية. ملاحظة:
Bean beanInstance = (Bean) new InitialContext().lookup("java:comp/env/beanName");
ليست هناك حاجة لأي شيء في فئة الفول نفسها ، بخلاف السهل @Stateful
حاشية. ملاحظة.
لا تنتمي إلى StackOverflow