Mam Stateful Session Bean (SFSB), który działa jako moduł uwierzytelniania. W SFSB przechowuję bieżącego użytkownika, który jest zalogowany. Ponadto mam kilka fasad (które są bezstanowymi ziarnami sesji (SLSB)), które obsługują pliki JPA/SQL dla moich jednostek. Aby sprawdzić uprawnienia dostępu bieżącego użytkownika, próbuję wywołać SFSB z SLSB. Ale bieżące pole użytkownika zawsze ma wartość "null" po wywołaniu z SLSB. Podczas bezpośredniego wywoływania SFSB, bieżące pole użytkownika jest ustawione poprawnie ... Do wywoływania używam adnotacji @EJB.Java EE 6: Jak nazwać stanową kawę sesyjną z bezpaństwowego ziarna sesji?
Jakieś pomysły na temat problemu? Czy to w jakiś sposób problem kontekstowy? Czy na ogół można wywołać SFSB z SLSB zachowując jego stan?
Wielkie dzięki z góry!
Być może możesz spróbować przekazać referencję do SFSB do swojego SLSB ...Nigdy tego nie próbowałem, ale wygląda na to, że to może zadziałać. – jahroy
Tak, właśnie to próbuję zrobić, używając iniekcji zależności za pomocą adnotacji @EJB. ale to nie działa ... – salocinx
Nie mówiłem o zastrzyku zależności. Miałem na myśli przekazanie SFSB jako parametru metody. Wstrzyknięcie zależności nie ma sensu w tym scenariuszu. Pamiętaj, że SLSB po prostu siedzą w basenie czekając na zgłoszenia serwisowe. Nie mają żadnego stanu i nie mają pojęcia, kto ich wzywa. Po prostu wykonują zadania. – jahroy