E 'possibile utilizzare HornetQ i fagioli senza JNDI (anche se è dietro alcuni astrazione) ...?

StackOverflow https://stackoverflow.com/questions/4559838

Domanda

Il mio problema originale è un tentativo di scoprire e incorporare HornetQ con un minimo di dipendenze.

Un elemento che vorrei evitare è la necessità di JNDI. Credo che dovrebbe essere possibile individuare tutti gli oggetti direttamente, piuttosto che fare la cosa localizzatore jndi.

Io non sono un fan di JNDI perché sembra di essere come un secchio globale di merda, in cui si ha la necessità di tenere traccia dei nomi, assicurarsi essi non conflitto w / altre cose e così via, molte cose che sembrano male quando si ricorda che astrazioni buoni fanno un minimo pubblico indispensabile.

A proposito questo non è un rant solo un'osservazione di carattere generale ...

È stato utile?

Soluzione

Ho trovato una risposta alla mia q durante la navigazione gli esempi particolarmente EmbeddedExample.java che dice "sì" Si può non ha bisogno di JNDI ..

 // Step 1. Create the Configuration, and set the properties accordingly
     Configuration configuration = new ConfigurationImpl();
     configuration.setPersistenceEnabled(false);
     configuration.setSecurityEnabled(false);
     configuration.getAcceptorConfigurations().add(new TransportConfiguration(InVMAcceptorFactory.class.getName()));

     // Step 2. Create and start the server
     HornetQServer server = HornetQServers.newHornetQServer(configuration);
     server.start();

     // Step 3. As we are not using a JNDI environment we instantiate the objects directly
     ClientSessionFactory sf = HornetQClient.createClientSessionFactory(new TransportConfiguration(InVMConnectorFactory.class.getName()));

     // Step 4. Create a core queue
     ClientSession coreSession = sf.createSession(false, false, false);
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top