2009-04-16 19 views
8

при попытке запустить мой опарника я получаю исключение:Где находится класс weblogic.jndi.WLInitialContextFactory?

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

Я предполагаю, что это какая-то не хватает библиотеки на пути к классам. Может ли кто-нибудь сказать мне, какой jar-файл отсутствует? Я не могу найти класс weblogic.jndi.WLInitialContextFactory в любом месте ...

Спасибо!

P.S .: У меня уже есть weblogic 10.0 jar included.

ответ

10

Проверьте свой сервер/папку lib /, чтобы найти wliclient.jar.

С Weblogic 12.1.3, вы можете найти его здесь:
${INSTALL_DIR}/inventory/wlserver/server/lib/wlclient.jar

6

Шаг 1:

Перейти к E:\weblogic81\user_projects\domains\mydomain. Затем введите команду Setenv. Как следует

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

Шаг 2:

Weblogic.jar файл необходим вашим клиентским приложением. Он может содержать следующий путь: E:\weblogic81\weblogic81\server\lib\weblogic.jar. поэтому установите путь к этой папке или скопируйте этот файл weblogic.jar в папку приложения, чтобы файл weblogic.jar был доступен для вашего приложения.

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

Шаг 3:

Перейти к домену папку в командной строке, как показано выше, и установите путь к классам. Чтобы не мешать другим классам установки пути к классам, как:

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

Здесь (.) точка представляет набор путь к классам текущего каталога.

Шаг 4:

После набора команд пути CLASSPATH STARTWEBLOGIC выполнения следующим образом:

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

Шаг 5:

Не войти в WebLogic Server. Если вы уже вошли в систему, просто выйдите из системы и напишите следующий код в myeclipse или какой-либо другой среде IDE.

Шаг 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); 
     } 
    } 

} 

Шаг 7:

Выполнить код выше и войти в WebLogic и правая кнопка мыши на myserver>view jndi tree> вы найдете связанную информацию объектов.

2

Проверьте следующий тег в build.xml

имя свойства = "WLS_HOME" значение = "$ {env.WLS_HOME}"

где WLS_HOME = C: \ WebLogic \ WLS \ wlserver если работает на окнах я все пытался запустить простой привет мир программы и продолжал бросать

* пробег:

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

раз я изменил вышеупомянутый тег это в build.xml он отлично работал

1

похоже, что вы смотрите JNDI вне WLS.

Вы должны использовать wlfulclient.jar или если ваша машина имеет установку WLS затем добавить в свой путь к классам проекта: WL_HOME/сервер/Библиотека/weblogic.jar

0

в версии 12с он находится в WebLogic-классах. баночка в вашем Lib каталога:

C: \ wls1213 \ wlserver \ сервер \ Lib

0

Я сталкивался с таким же вопросом, и это теперь исправлено :)

исправить это, чтобы перейти к серверу WebLogic и навигации to /Oracle/Middleware/wlserver_10.3/server/lib/ и exe Симпатичная команда ниже.

Команда: Java -jar wljarbuilder.jar -profile wlfullclient5

Приведенная выше команда создает банку файл со всеми Jar внутри WebLogic сервера/Lib папки и поместите его в клиента Java кода путь сборки Eclipse, и craetes работоспособной JAR и поместите этот файл wlfullclient5.jar в папку server/lib.

Надеюсь, это поможет! Пожалуйста, дайте мне знать, если у вас возникнут проблемы.

0

Добавление wlserver/server/lib/weblogic.jar достаточно. Я проверяю это.