2009-04-16 15 views
8

al intentar ejecutar mi archivo jar me sale una excepción:¿Dónde está la clase weblogic.jndi.WLInitialContextFactory?

javax.naming.NoInitialContextException: Cannot instantiate class: weblogic.jndi.WLInitialContextFactory 
[Root exception is java.lang.ClassNotFoundException: weblogic.jndi.WLInitialContextFactory] 

supongo que esto es una especie de falta biblioteca en la ruta de clase. ¿Alguien puede decirme qué archivo jar falta? No puedo encontrar la clase weblogic.jndi.WLInitialContextFactory en cualquier lugar ...

¡Gracias!

P.S .: Ya tengo weblogic 10.0 jar incluido.

Respuesta

10

Compruebe su carpeta server/lib/para encontrar wliclient.jar.

Con Weblogic 12.1.3, se puede encontrar aquí:
${INSTALL_DIR}/inventory/wlserver/server/lib/wlclient.jar

0

El producto está envasado en el interior de la weblogic.jar virtud de su servidor/lib.

6

Paso 1:

Ir a E:\weblogic81\user_projects\domains\mydomain. Luego escriba Setenv comando. En la siguiente manera

E:\weblogic81\user_projects\domains\mydomain>setenv 

Paso 2:

Weblogic.jar archivo es necesario por la aplicación cliente. Puede contener en la siguiente ruta E:\weblogic81\weblogic81\server\lib\weblogic.jar. así que configure el classpath para esta carpeta o copie este archivo weblogic.jar en su carpeta de aplicaciones para que el archivo weblogic.jar esté disponible primero para su aplicación.

E:\weblogic81\user_projects\domains\mydomain>set CLASSPATH=%CLASSPATH%;E:\weblogic81\weblogic81\server\lib;. 

Paso 3:

Ir al dominio carpeta en la línea de comandos como se muestra arriba y establece la ruta de clases. Para no molestar a otras rutas de clases establecido como ruta de clases:

set CLASSPATH=%CLASSPATH%;E:\weblogic81\weblogic81\server\lib;. 

Aquí (.) representa el conjunto de puntos de ruta de clases directorio actual.

Paso 4:

Después de establecer la ruta de clases de ejecución STARTWEBLOGIC de comandos de la siguiente manera:

E:\weblogic81\user_projects\domains\mydomain>STARTWEBLOGIC 

Paso 5:

no inicien sesión con el Servidor WebLogic. Si ya está conectado, simplemente cierre la sesión y escriba el siguiente código en myeclipse o en algún otro IDE.

Paso 6:

package directory.service; 
import java.util.*; 
import weblogic.jndi.*; 
import java.io.FileInputStream; 
import javax.naming.*; 
public class GetInitContext { 

    /** 
    * @param args 
    */ 

    public static void main(String[] args) { 


     try{ 
     weblogic.jndi.Environment env=new weblogic.jndi.Environment(); 
    weblogic.jndi.Environment environment = new weblogic.jndi.Environment(); 
     environment.setInitialContextFactory(
      weblogic.jndi.Environment.DEFAULT_INITIAL_CONTEXT_FACTORY); 
     env.setProviderUrl("t3://localhost:7001"); 
     env.setSecurityPrincipal("agni"); 
     env.setSecurityCredentials("agnidevam"); 
     Context context=env.getInitialContext(); 
     System.out.println("got the initial context for weblogic server---> "+context); 
     context.createSubcontext("sone"); 
     context.bind("agni one",new Integer(10)); 
     context.createSubcontext("sone/sctwo"); 
     context.bind("agni two",new Integer(20)); 
     context.createSubcontext("sone/sctwo/scthree"); 
     context.bind("agni three",new Integer(30)); 
     System.out.println("subcontex object created please check in admin server for more details"); 

     } 
     catch(Exception e){ 
      System.out.println("file inputstream exception ---> "+e); 
     } 
    } 

} 

Paso 7:

ejecutar el código de arriba y regístrese para weblogic y haga clic derecho en myserver>view jndi tree> a encontrar la información de los objetos ligada.

2

Compruebe la siguiente etiqueta en su build.xml

nombre de propiedad = valor "WLS_HOME" = "$ {} env.WLS_HOME"

donde WLS_HOME = c: \ WebLogic \ wls \ wlserver si está funcionando en las ventanas seguí tratando de ejecutar un programa simple hola mundo y siguió arrojando

* ejecución:

[echo] Executing client class 
[java] javax.naming.NoInitialContextException: Cannot instantiate class: weblogic.jndi.WLInitialContextFactory [Root exception is java.lang.ClassNotFoundException: weblogic.jndi.WLInitialContextFactory]* 

una vez que cambió la etiqueta se mencionó anteriormente, en el build.xml funcionó bien

1

parece que estás haciendo una búsqueda JNDI fuera de WLS.

Es necesario utilizar wlfulclient.jar o si su equipo dispone de una instalación WLS a continuación, añadir a su proyecto de ruta de clases: WL_HOME/server/lib/weblogic.jar

0

en la versión 12c que se encuentra en WebLogic-clases. jar en el directorio lib:

C: \ wls1213 \ wlserver \ servidor \ lib

0

que se enfrentó al mismo problema y ha resuelto ahora :)

la solución está, para ir al servidor WebLogic y navegar a /Oracle/Middleware/wlserver_10.3/server/lib/ y exe lindo el siguiente comando.

de comando: java-jar wljarbuilder.jar -profile wlfullclient5

El comando anterior crea un archivo JAR con el servidor WebLogic en el interior de todo el frasco de la carpeta/lib y lo coloca en su ruta de compilación de código java cliente Eclipse y craetes ejecutable JAR y coloca este archivo wlfullclient5.jar en la carpeta servidor/lib también.

Espero que esto ayude! Amablemente avíseme si tiene algún problema.

0

Agregar wlserver/server/lib/weblogic.jar es suficiente. Lo pruebo