@javax.ejb.Stateless
public class EmployeeBean implements EmployeeBeanLocal,EmployeeBenaRemote {
    @PersistenceContext(unitName="EJB_And_JSFPU")
    EntityManager em;

    public List <Employee> list(){
        return em.createQuery("Select e From Employee e").getResultList();
    } 
}

Bu siniftaki list metoduna controller sinifi icinde bir nesne olusturarak ulasamiyorum. EmployeeBeanLocal interfaceinin objesini olusturarak ulaşabiliyorum:

@Local
public interface EmployeeBeanLocal {
    public List <Employee> list();
}

Sebep ne olabilir?

soruldu: 02 Tem '12, 11:49

Serxan's gravatar image

Serxan
51691106107
cevap kabul oranı: 46%

değiştirildi: 02 Tem '12, 15:50

%C3%B6zcanacar's gravatar image

özcanacar ♦♦
17.2k59183183

Soruyu pek anlamadim aslinda. EJB yi zaten sen olusturmuyorsun. O containerin isi.

(05 Tem '12, 08:20) bsceran bsceran's gravatar image

Herseyden önce Bean lerin olusturulmasini Container a birakmak, ve bunlari CDI kullanarak Inject etmek daha dogru olur. Aksi taktirde belli Inteceptorlar devreye girmeyeceginden, beklinen sonucu vermeye bilir. Belli Annotationlar yorumlanmayabilir.

EJB 3.1 le gelen yeniliklerden biri de Interface olmadan SessionBean olusturabiliyor olmak. Bu durumda otamatik olarak Local bir interface olusturulur. Yanilmiyorsam bu otamatik olusturlan Inteface in adi

`_EJB31_Generated_<<Bean name>>__Intf__`

seklinde olmasi gerekiyor.

Sen Bean icin bir local yada remote interface tanimlamadigin sürece, onu

@EJB
//@Inject
EmployeeBean employeeBean;

seklinde direkt Bean adiyla beraber Inject edebilirsin. Ancak eger Local yada Remote bir Interface tanimlarsan, ozaman Inject ederken bu Interface lerden birini kullanman gerekir. Örnegin

@EJB
//@Inject
EmployeeBeanLocal employeeBean;
permanent link

cevaplandı: 05 Tem '12, 10:54

mceliksoy's gravatar image

mceliksoy ♦
6.5k84988
cevap kabul oranı: 25%

@EJB
//@Inject
EmployeeBean bean;

Enjeksiyon yapıyor musun?

permanent link

cevaplandı: 02 Tem '12, 16:24

UsTa's gravatar image

UsTa
2.0k925
cevap kabul oranı: 20%

Cevabınız
toggle preview

powered by BitNami OSQA