Utilizza bind WebSphere per definire nomi JNDI MDB (message-driven bean)

Il descrittore basato sui messaggi configura la destinazione per il listener di messaggi. Un riferimento destinazione del messaggio è un nome logico utilizzato per individuare un bean enterprise in un modulo EJB che funge da destinazione del messaggio. I riferimenti di destinazione messaggio esistono solo in J2EE 1.4 e nelle successive risorse utente come ad esempio:

Se più riferimenti destinazioni messaggio vengono associati a un singolo collegamento destinazione messaggio, durante la distribuzione viene raccolto un unico nome JNDI per un bean enterprise che viene associato al collegamento della destinazione messaggio e, subito dopo, su tutti i riferimenti alle destinazioni messaggi collegati. Durante il runtime, i riferimenti alla destinazione messaggio vengono collegati alle destinazioni del messaggio gestite nell'ambiente operativo di destinazione. Se un riferimento alla destinazione del messaggio ed un MDB sono collegati dalla stessa destinazione messaggio, entrambi il riferimento ed il bean devono avere lo stesso nome JNDI di destinazione. Quando entrambi hanno lo stesso nome, solo il nome JNDI di destinazione per l'MDB (message-driven bean) viene raccolto e applicato al corrispondente riferimento di destinazione del messaggio. Se un distributore sceglie di generare bind predefiniti quando si installa l'applicazione, la procedura guidata di installazione assegna nomi JNDI ai seguenti riferimenti di destinazione del messaggio incompleti.
Se un riferimento di destinazione del messaggio ha un < message - destination - link>, il nome JNDI è impostato su ejs/message-destination-linkName . Altrimenti, il nome JNDI è impostato su eis/message-destination-refName .

Questa regola rileva i nomi JNDI di destinazione degli MDB (message-driven bean). Una correzione automatica copierà il nome JNDI di destinazione dal file weblogic-ejb-jar.xml al file WebSphere(R ) Application Server di Application Server. La correzione automatica, tuttavia, non imposta il nome JNDI di ActivationSpec né migra le proprietà di configurazione dell'attivazione in ejb-jar.xml.

Soluzione manuale per Liberty


Soluzioni manuali per WebSphere tradizionali

Lo sviluppatore di un'applicazione può creare le definizioni bind nei file ibm-xxx-bnd.xml per i moduli EJB 3.0 e Web 2.5 e nei file ibm-xxx-bnd.xmi per i moduli che esistevano prima di Java(R) Platform, Enterprise Edition (Java EE) 5. Lo sviluppatore dell'applicazione può creare i file utilizzando uno strumento come un IBM(R) Rational(R) developer tool o per i moduli EJB 3.0 o Web 2.5, utilizzando un editor XML o un editor di testo. Lo sviluppatore quindi fornisce un'applicazione enterprise (file .ear) completa di bind ad un assembler o distributore dell'applicazione. Nell'assemblaggio delle applicazioni, l'assemblatore non modifica i bind. Analogamente, quando si installa l'applicazione su un server supportato da WebSphere Application Server, lo sviluppatore non modifica o sovrascrive i bind o genera bind predefiniti a meno che non siano necessarie modifiche ai bind per la riuscita della distribuzione dell'applicazione.

Per apportare le modifiche richieste nei bean Rational Application Developer for EJB 2.1, completare le seguenti operazioni:
  1. Avviare lo strumento di assemblaggio Rational Application Developer.
  2. Aprire il progetto EJB coretto.
  3. Fare doppio clic sul descrittore di distribuzione
  4. Fare clic sul bean basato sui messaggi corretto.
  5. Scorrere verso il basso la sezione di bind WebSphere.
  6. Selezionare la casella di spunta JCA Adaptor ed immettere il nome JNDI ActivationSpec.


Per apportare le modifiche richieste nella console di gestione per i bean EJB 2.0, completare le azioni riportate di seguito: Rational Application Developer Versione 7.0 non supporta l'impostazione delle specifiche di attivazione EJB 2.1 per i bean EJB 2.0. È possibile impostare le specifiche di attivazione EJB 2.1 solo per i bean EJB 2.1.
  1. Impostare la specifica di attivazione per MDB utilizzando la console di gestione quando si distribuisce l'applicazione su WebSphere Application Server.
  2. Esportare il file EAR per l'applicazione dalla console di gestione.
  3. Copiare il descrittore di distribuzione dal file EAR nel progetto in modo che abbia la corretta specifica di attivazione.

Definire i bind durante l'assemblaggio dell'applicazione.

Un assemblatore di applicazioni può definire dei bind nelle annotazioni o nei descrittori di distribuzione di un'applicazione. I moduli Java EE 5 contengono annotazioni nel codice sorgente. Per dichiarare un'annotazione, l'assemblatore dell'applicazione antepone il carattere @ ad una parola chiave. I bind per i moduli precedenti alla versione Java EE 5 sono specificati nella sezione WebSphere Bindings dell'editor del descrittore di distribuzione. La modifica dei descrittori di distribuzione potrebbe modificare le definizioni dei vincoli nei file di bindings creati durante lo sviluppo di un'applicazione. Dopo aver definito i bind, l'assemblatore dà l'applicazione ad un distributore. Quando si installa l'applicazione su un server supportato da WebSphere Application Server, il distributore non modifica o sovrascrive i bind o genera bind predefiniti a meno che non siano necessarie modifiche ai bind per distribuire l'applicazione.


Definire i bind durante l'installazione dell'applicazione

Un distributore di applicazioni o un amministratore di server può modificare i collegamenti durante l'installazione dell'applicazione su un server supportato da WebSphere Application Server utilizzando la console di gestione. Le nuove definizioni del bind possono essere specificate sulle pagine dell'installazione guidata.
Inoltre, un distributore o un amministratore può selezionare la generazione di bind predefiniti durante l'installazione dell'applicazione. Scegliendo di generare bind predefiniti durante l'installazione dell'applicazione si richiede al prodotto di completare i bind nell'applicazione utilizzando i valori predefiniti. I bind esistenti non vengono modificati.
Limitazione: non è possibile definire o sovrascrivere i bind durante l'installazione dell'applicazione per i client dell'applicazione. È necessario definire i binding per i moduli client dell'applicazione durante l'assemblaggio e memorizzare i bindings nel file nel file dei bindings.


Definire i bind durante la configurazione di un'installazione dell'applicazione

Una volta installata un'applicazione su un server supportato da WebSphere Application Server, un distributore dell'applicazione o un amministratore del server può modificare i bind modificando i valori nelle pagine della console di gestione come ad esempio quelli a cui si accede dalla pagina delle impostazioni per l'applicazione enterprise.