Domanda

Vorrei impostare alcuni parametri di sola lettura (ad esempio un host e porta del registro RMI) a un'applicazione Java EE distribuita su un server GlassFish. Il solito posto dove fare questo sarebbe il descrittore di implementazione, ma il mio problema è che è confezionato nell'orecchio, quindi non posso modificarlo senza cambiare l'orecchio.

Ho bisogno di qualcosa di simile per impostare le risorse JDBC e JMS, ma molto più semplici. Potrei inserire i dati di configurazione in una tabella di database ma sembra essere eccessiva. Potrei usare l'adattatore di risorse file, ma sarebbe meglio se potessi modificare la configurazione nella console di amministrazione GlassFish.

C'è un modo standard per farlo? Come testare le tue applicazioni quando dipendono da nodi esterni con cui devono comunicare? Dove devo mettere questi parametri e come posso accedervi?

La mia migliore ipotesi era di definire risorse JNDI esterne, ma allora dove metto i dati?

Aggiornamento: questo è quello che stavo pensando a:

Come posso Conservare i parametri di configurazione Java EE al di fuori di un orecchio o di una guerra?

Quindi la domanda è: Come faccio a farlo in Glassfish ?

È stato utile?

Soluzione

Dopo alcune ore di googling ho trovato la risposta!Non è banale, ma fortunatamente molto facile.Ecco:

http://www.mendby.com/glassfish/custom-resource-work-wen-looking-it-up-but-not-with-injection.html

Creare una risorsa personalizzata sulla console di amministrazione e aggiungi una proprietà denominata "valore" .In questo modo:

alt testo http://img231.imageshack.us/img231/8237/jndicustomeResource.png

Quindi accedere a questo nome / valore è davvero facile da EJB:

try {
     InitialContext ic = new InitialContext();
     String value = (String) ic.lookup("MyCustomResource");
     System.out.println("MyCustomResource = " + value);
} catch (NamingException e) {
     e.printStackTrace();
}
.

Quale stampe

.

Info: mycustomresource= un grande abbraccio da mycustomresource!

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top