In JBoss, qual è la sequenza della fase di distribuzione ? Qual è l'ordine di oggetti istanziati e disponibili per l'uso? Considerando un'applicazione aziendale (* .ear), ispezionando tutto registro di distribuzione (server.log) la fase di distribuzione si presenta come:JBoss EAP 6.x comprendere la fase di implementazione - ResourceAdapters, EJB, jar, war
- Tutti librerie vedono schierate - file .class vengono caricati e disponibili;
- Tutti i moduli * .jar sono distribuiti - i file di classe sono caricati e disponibili;
- Se alcuni * .jar è un vaso EJB, attraverso i file di configurazione o annotazioni, si crea l'albero JNDI (Ex ejb-jar.xml.);
- Se alcuni * .jar hanno una configurazione di file persistence.xml, vengono caricate tutte le entità e il collegamento alle origini dati;
- Tutti * .war moduli iniziano la fase di schieramento;
- Attraverso i file di configurazione (web.xml), ascoltatori e root di contesto sono caricati ed eventualmente aspetti di sicurezza.
- Orecchio distribuito correttamente.
Domande:
- Che dire dei moduli adattatori di risorse, il PersistenceContext e EJB Pool?
- Quando viene trovato un persistence.xml, viene avviata una connessione all'origine dati e quindi al pool DB?
- Poiché l'origine dati (DB) è configurata in
standalone.xml
odomain.xml
, quando si verifica la prima connessione al pool di DB? Quando iniettare PersistenceContext e utilizzare EntityManager? - Quando il pool EJB è caricato e disponibile per l'uso?
- È corretto dire che durante la distribuzione del bean EJB, la struttura JNDI viene creata e quindi disponibile?
- Quando viene rilevato un EJB, viene caricato all'interno del pool (come riferimento per iniettare/cercare)?
Quando un modulo .war viene distribuito e pronta, anche se la piena implementazione del .ear non è ancora completata, eventualmente servlet o ascoltatore vengono avviati dal contenitore.
- Cosa succede se alcuni di questi oggetti (ascoltatore, servlet) tenta di utilizzare EJB o PersistenceContext o altri oggetti? Questi oggetti sono disponibili?
- È possibile avere un problema di deadlock e bloccare il thread/fase di distribuzione?
Grazie per le informazioni e i link utili. Ti meriti la bontà. Ho modificato la mia domanda e aggiunto altre domande relative alla fase di distribuzione e al modo in cui il contenitore gestisce le risorse. – StarsSky