Java Naming and Directory Interface

O Java Naming and Directory Interface (JNDI) é uma API para acesso ao serviço de nomes e diretórios, utilizado para pedir ao servidor de aplicações web (Glassfish) um componente EJB.

Para criar uma conexão com o serviço de nomes e diretórios utilizamos a classe java.naming.InitialContext.

No exemplo a seguir, criamos um método getProperties() que configura alguns parâmetros informando de onde iremos utilizar o serviço de nomes e diretórios, depois criamos o método buscaEJB() que ira utilizar o InicialContext para pedir um objeto através de seu nome "br.exemplo.ejb.UsuarioRemote".

package br.exemplo.jndi;

import java.util.Properties;
import javax.naming.InitialContext;
import javax.naming.NamingException;

/**
 * Classe utilizada para demonstrar como localizar 
 * um objeto através do JNDI.
 */
public class ExemploJNDI {
  public static UsuarioRemote buscarEJB() throws Exception {
    try {
      InitialContext ctx = new InitialContext();
      UsuarioRemote usuarioEjb = (UsuarioRemote) 
        ctx.lookup("br.exemplo.ejb.UsuarioRemote");

      return usuarioEjb;
    } catch (NamingException ex) {
      ex.printStackTrace();
      throw new Exception("Não encontrou o EJB");
    }
  }
}

results matching ""

    No results matching ""