BACK-END APPS: JNDI & EJB EĞİTİMİ

JNDI ve EJB ile kurumsal servis katmanı yaz

JNDI arama, Stateless/Stateful/Singleton EJB, container-managed transaction, TimerService, güvenlik ve uzaktan EJB çağrısı.

JNDI ve EJB ile Back-end Uygulamalar eğitimi 2 günlük uygulamalı programda jndi kavramları, i̇sim alanları, kaynak yapılandırma, güvenlik ve sorun giderme gibi konuları kapsar. InitialContext ile kaynakları arayıp bağlayabilirsiniz.

2 gün Orta Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

JNDI, EJB türleri, transaction ve zamanlayıcılar

Bu eğitim, kurumsal Java back-end uygulamalarının iki temel taşı olan JNDI ve EJB'yi işler. JNDI ile isim bağlama ve arama, InitialContext, java:comp/env, java:global/java:app/java:module isim alanları, DataSource ve JMS kaynaklarının JNDI üzerinden kullanımı ele alınır. EJB tarafında Stateless, Stateful ve Singleton session bean'ler, Local/Remote arayüz, @EJB ve @Inject, yaşam döngüsü geri çağırmaları, container-managed transaction ve TransactionAttribute, @RolesAllowed güvenliği, interceptor, @Asynchronous, TimerService ve uzaktan EJB çağrısı WildFly üzerinde uygulanır.

Süre ve Format

2 Gün. Her gün dört modül; katılımcılar jndi konusundan başlayıp ejb konusuyla tamamlar.

Seviye

Orta Seviye — JNDI ile isimlendirme servisi, EJB türleri, transaction, zamanlayıcı ve uzaktan çağırma.

Öğrenme Metodu

WildFly üzerinde örnek bir bankacılık/envanter servisi EJB olarak geliştirilir; JNDI isimleri sunucu konsolu ve loglardan doğrulanır.

Neden Bu Eğitim?

🧭JNDI Bilgisi

Kaynakların isimle bulunma mantığını ve ad alanlarını net kavrarsınız.

🏢EJB Servisleri

Transaction ve güvenliği container'a bırakarak iş mantığına odaklanırsınız.

📞Uzaktan Çağrı

Uygulamalar arası EJB çağrısını yapılandırır ve test edersiniz.

Anahtar Konular

jndiejbjava ee ejbstateless beanjndi lookupwildfly ejbcontainer managed transactiontimerservicejakarta enterprise beansremote ejb
“Doğru isim bulunur; doğru bean, doğru transaction ile çalışır.”

Ön Koşullar

Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri

1
Java Temeli

Nesne yönelimli programlama ve koleksiyonlar konusunda orta düzey Java bilgisi beklenir.

2
Web ve HTTP

Servlet, REST ve istemci-sunucu mimarisi kavramlarına aşinalık faydalıdır.

3
Uygulama Sunucusu

WildFly, Payara veya Open Liberty gibi bir Jakarta EE sunucusu kurulabilecek ortam gerekir.

4
Araçlar

Maven ve IDE ile çok modüllü proje yönetimi deneyimi yararlıdır.

Eğitim İçeriği

Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.

Günün hedefiKatılımcı, JNDI ile kaynak arar, bağlar ve uygulama sunucusundaki kaynakları doğru isimlerle kullanır.
Modül 1
JNDI Kavramları
  • Naming ve directory servis mantığı
  • InitialContext ve Context arayüzü
  • bind, rebind, lookup, unbind
  • NamingException yönetimi
  • JNDI SPI: LDAP, DNS, RMI sağlayıcıları
  • Java SE'de basit JNDI örneği
Modül 2
İsim Alanları
  • java:comp/env ve ortam girdileri
  • java:global, java:app, java:module
  • java:jboss/... sunucuya özgü isimler
  • resource-ref ve env-entry
  • @Resource ile enjeksiyon
  • Lookup ile enjeksiyon karşılaştırması
Modül 3
Kaynak Yapılandırma
  • DataSource tanımı ve JNDI adı
  • WildFly standalone.xml/CLI ile kaynak ekleme
  • JMS bağlantı fabrikası ve kuyruk JNDI adı
  • Mail Session ve URL kaynakları
  • Özel JNDI nesnesi (ObjectFactory)
  • Ortama göre yapılandırma farkı
Modül 4
Güvenlik ve Sorun Giderme
  • Uzaktan JNDI ve güvenlik riskleri
  • JNDI injection zafiyeti (Log4Shell bağlantısı)
  • Lookup yetkilendirmesi
  • JNDI ağacını görüntüleme (konsol, jndi-view)
  • Sık hatalar: NameNotFoundException
  • Test ortamında mock JNDI
Günün hedefiKatılımcı, EJB türlerini doğru kullanır; transaction, güvenlik ve zamanlayıcıları container yönetimiyle uygular.
Modül 1
Session Bean Türleri
  • @Stateless: havuz ve durumsuz servis
  • @Stateful: istemci başına durum ve pasivasyon
  • @Singleton, @Startup ve eşzamanlılık
  • Yaşam döngüsü: @PostConstruct, @PreDestroy
  • No-interface view ve Local arayüz
  • EJB ve CDI bean seçimi
Modül 2
Transaction Yönetimi
  • Container-managed transaction (CMT)
  • TransactionAttribute: REQUIRED, REQUIRES_NEW, MANDATORY
  • SessionContext.setRollbackOnly
  • Uygulama ve sistem istisnası farkı
  • Bean-managed transaction (UserTransaction)
  • Transaction yayılımı ve iç içe çağrılar
Modül 3
Güvenlik, Interceptor ve Async
  • @RolesAllowed, @PermitAll, @DenyAll
  • @RunAs ve çağıran kimliği
  • Interceptor ve @AroundInvoke
  • @Asynchronous ve Future<V>
  • @Schedule ve TimerService
  • Singleton için @Lock(READ/WRITE)
Modül 4
Uzaktan EJB
  • @Remote arayüz ve ejb-client
  • JNDI ile uzak lookup (ejb:/...)
  • WildFly Elytron istemci yapılandırması
  • Serileştirme ve DTO gereksinimi
  • Uzaktan çağrı performansı
  • EJB yerine REST/gRPC alternatifleri

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
JNDI Arama

InitialContext ile kaynakları arayıp bağlayabilirsiniz.

🧠
Ad Alanları

java:comp/env ve java:global gibi ad alanlarını doğru kullanabilirsiniz.

⚙️
Kaynak Ayarı

DataSource ve JMS kaynaklarını sunucuda tanımlayıp JNDI ile kullanabilirsiniz.

🔍
JNDI Güvenliği

JNDI injection riskini ve korunma yollarını açıklayabilirsiniz.

🛠️
EJB Türleri

Stateless, Stateful ve Singleton bean'leri doğru senaryoda seçebilirsiniz.

📈
Transaction

TransactionAttribute ile CMT davranışını yönetebilirsiniz.

🧩
Güvenlik ve Zaman

@RolesAllowed ve TimerService ile yetki ve zamanlama yapabilirsiniz.

🚀
Uzaktan Çağrı

EJB'yi uzak istemciden güvenli biçimde çağırabilirsiniz.

Kimler İçin Uygundur?

  • Java temellerini bilen
  • kurumsal uygulama sunucusunda servis katmanı geliştirmek isteyen back-end geliştiricileri için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Java temellerini bilen, kurumsal uygulama sunucusunda servis katmanı geliştirmek isteyen back-end geliştiricileri için uygundur.
EJB hâlâ güncel mi?
Evet, Jakarta EE'de varlığını sürdürür; yeni projelerde CDI ile birlikte kullanılır. Eğitimde EJB ile CDI arasındaki seçim ölçütleri de ele alınır.
JNDI injection nedir?
Güvenilmeyen girdiyle lookup yapıldığında uzaktan kod çalıştırmaya yol açabilen zafiyettir; eğitimde güvenli lookup ve önlemler gösterilir.
Eğitim için hangi ön bilgi ve ortam gerekir?
Nesne yönelimli programlama ve koleksiyonlar konusunda orta düzey Java bilgisi beklenir. Servlet, REST ve istemci-sunucu mimarisi kavramlarına aşinalık faydalıdır. WildFly, Payara veya Open Liberty gibi bir Jakarta EE sunucusu kurulabilecek ortam gerekir.
Eğitim sonunda sertifika verilir mi?
Eğitimi tamamlayan katılımcılara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir. 2 günlük program boyunca uygulama çalışmalarının tamamlanması beklenir.

Sertifikalandırma

Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.

Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.

Örnek Sertifika d Digital Vizyon AKADEMİ KATILIM SERTİFİKASI Bu sertifika [Katılımcı Adı Soyadı] adlı katılımcının aşağıdaki eğitim programını başarıyla tamamladığını belgeler. Back-end Apps: JNDI & EJB Eğitimi Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre2 gün
SeviyeOrta Seviye
FormatOnline / Yüz Yüze / Hibrit
Sertifika✓ Var
Hemen Bilgi Al
İlgili Eğitimler

Bu Eğitimle Birlikte Tercih Edilenler

Java ve JVMJava Persistence API: Getting Started With JPA & Hibernate Eğitimi
Yazılım Geliştirme Eğitimleri

Java Persistence API: Getting Started With JPA & Hibernate Eğitimi

2 günBaşlangıçOnline / Yüz Yüze / Hibrit

Java Persistence API: Getting Started With JPA & Hibernate eğitimi: jPA ve Hibernate ile ilk çalışan uygulama. Uygulamalı 2 gün, DVA Katılım ve Başarı Sertifika

Detayları Gör →
Java ve JVMJava Persistence API: Mapping & Configuring Relationships Eğitimi
Yazılım Geliştirme Eğitimleri

Java Persistence API: Mapping & Configuring Relationships Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

Java Persistence API: Mapping & Configuring Relationships eğitimi: tek yönlü ve çift yönlü ilişki tasarımı. Uygulamalı 2 gün, DVA Katılım ve Başarı Sertifikası.

Detayları Gör →
Java ve JVMJava Programming: Arithmetic & Logical Operations Eğitimi
Yazılım Geliştirme Eğitimleri

Java Programming: Arithmetic & Logical Operations Eğitimi

2 günBaşlangıçOnline / Yüz Yüze / Hibrit

Java Programming: Arithmetic & Logical Operations eğitimi: java ifadeleri ve operatörlerinin kuralları. Uygulamalı 2 gün, DVA Katılım ve Başarı Sertifikası.

Detayları Gör →
Java ve JVMJava Programming: Conditional Evaluation Eğitimi
Yazılım Geliştirme Eğitimleri

Java Programming: Conditional Evaluation Eğitimi

2 günBaşlangıçOnline / Yüz Yüze / Hibrit

Java Programming: Conditional Evaluation eğitimi: koşullu değerlendirme ve karar akışı. 2 gün uygulamalı program, Digital Vizyon Akademi Katılım ve Başarı Serti

Detayları Gör →
Java ve JVMJava Programming: Iterative Evaluation Eğitimi
Yazılım Geliştirme Eğitimleri

Java Programming: Iterative Evaluation Eğitimi

2 günBaşlangıçOnline / Yüz Yüze / Hibrit

Java Programming: Iterative Evaluation eğitimi: yinelemeli yapılar ve döngü tasarımı. 2 gün uygulamalı program, Digital Vizyon Akademi Katılım ve Başarı Sertifi

Detayları Gör →
+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn