Problems with java.library.path

Hi.
I'm having trouble with the java.library.path setting. Ok, this is the scenario:
My app is inside a JAR. What I need is to load a native library, and for user convenience I'm putting some common locations manually in java.library.path. Like this:
          // append custom path for the native libraries
          String libraryPath = System.getProperty("java.library.path");
          String sep = System.getProperty("path.separator");
          libraryPath = "." + sep + "libs" + sep + "native" + sep + libraryPath;
          System.setProperty("java.library.path", libraryPath);
          System.out.println(libraryPath);Pretty easy, right? (This is the first thing in my main method). Ok, so I've put the native libraries in the same dir than my JAR. I just do 'java -jar myjar.jar' and my app spits this:
.:libs:native:/usr/java/jdk1.5.0_06/jre/lib/i386/client:/usr/java/jdk1.5.0_06/jre/lib/i386:/usr/java/jdk1.5.0_06/jre/../lib/i386so my hack is working but... voila! I get UnsatisfiedLinkError.
What is really annoying and has me out of my mind is the fact that if I run my app as:
java -Djava.library.path=. -jar myapp.jarit works! If I do this my app prints:
.:libs:native:.and everything works as expected. What the ff$�(�&$ is going on here??
Please, help me I'm desperate.
Thanks

this one drove me batty for a while too.
once the library path is set, that's it, playing with it has no effect.
my solution involved a new instance the VM, something along the lines of:
String[] C = new String[] { "bash", "-c", "java -Djava.library.path="+libraryPath };
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec( C );
int eVal = proc.waitFor();
System.exit( eVal );
or cmd/command in C[0], /c in C[1] for a M$ system.
the err and out streams are available using proc.getErrorStream() and proc.getInputStream() as well.

Similar Messages

  • Error with System.loadLibrary(...) with java.library.path set

    I'm trying to get my feet wet with JavaMonkeyEngine using netbeans (on Windows XP SP3, Java 1.6).
    When I try to run a simple example program, I'm getting
    Exception in thread "main" java.lang.UnsatisfiedLinkError: no lwjgl.dll in java.library.path
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1709)
    My runtime arguments include: -Djava.library.path="../../../../../projectSupport/jME2/lib/lib/lwjgl/native/windows/:etc
    I'm pretty sure that the path is correct, because I tried the following code:
    String [] dirs = System.getProperties().getProperty("java.library.path").split(":");
    for(int i = 0; i < dirs.length; i++ ){
    String path = dirs[i] + java.io.File.separatorChar + "lwjgl.dll";
    if( (new java.io.File(path)).exists()) {
    System.out.println("found in dir " + dirs);
    path = (new java.io.File(path)).getAbsolutePath();
    System.load(path);
    System.out.println("was able to load library manually");
    and the System.load method was reached and didn't throw an exception.
    However, the below call does throw an exception.
    System.loadLibrary("lwjgl.dll");
    Presumably, I shouldn't need to put the dlls into my Path (otherwise whats the purpose of the -D argument).
    I would appreciate some brilliant illuminating thought about now, something like "you forgot the magical snafu parameter" or such.
    Thanks in advance.
    Eric.

    My runtime arguments include:
    -Djava.library.path="../../../../../projectSupport/jME2/lib/lib/lwjgl/native/windows/:{code}So, you're on a Windows OS, and looking for a Windows DLL?
    I'm pretty sure that the path is correct, because I tried the following code:
    {code}String [] dirs = System.getProperties().getProperty("java.library.path").split(":");{code}So, you're specifying a path using the UNIX separator ':', instead of the Windows one ';'?
    Your test code has the knowledge to parse a LINUX-like path, but the Windows VM doesn't have this knowledge (I admit the misleading part is that the VM generally accepts '/' as a file separator (instead of the Windows-standard '\' one), but doesn't recognize the ':' separator). Try using ';' to separate multiple pathes in your command line:
    {code}-Djava.library.path="../../../../../projectSupport/jME2/lib/lib/lwjgl/native/windows/;<noticeTheSeparators>;...    J.
    Edited by: jduprez on Jan 12, 2010 1:39 PM                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • No ocijdbc8 in java.library.path (with Netscape under Tomcat)

    Hello,
    my problem is the following: I must use the OCI-Driver of the Oracle-Client 8.1.7 because I use special PL/SQL-functions.
    I get the error message:
    java.lang.UnsatisfiedLinkError: no ocijdbc8 in java.library.path
    when I try to start my servlet within netscape. Before this I'm starting the tomcat servlet engine and make the following path known to tomcat:
    java.library.path=/usr/lib:/lib:/share/ams/oracle/ora817-SunOS-5.7/lib:/share/ams/oracle/ora817-SunOS-5.7/jdbc/lib:/share/ams/oracle/ora817-SunOS-5.7/lib64
    In this line are the necessary paths to find the libocijdbc8.so library.
    Why does the servlet still have problems to find the driver? In addition, I set my java.library.path within the servlet itself.
    Do you know where is the crux of the matter?
    Thank you,
    Christian Schmidbauer

    Hello:
    libocijdbc9.so exists in the LD_LIBRARY_PATH. Tried
    linking/copying classes12.zip from $TOMCAT_HOME/common/lib to $TOMCAT_HOME/webapps/APP_NAME/WEB-INF/lib causes the error:
    java.lang.UnsatisfiedLinkError: /usr/apps/oracle/product/9.2.0/lib/libocijdbc9.so: ld.so.1: /usr/j2se/bin/java: fatal: /usr/apps/oracle/product/9.2.0/lib/libocijdbc9.so: wrong ELF class: ELFCLASS64
    when the CATALINA_OPTS has -d32 and
    -Djava.library.path=$ORACLE_HOME/lib(tried giving them as JAVA_OPTS in catalina.sh as well)
    Thanks!

  • No ocijdbc8 in java.library.path (with Servlet under Tomcat)

    Hello,
    my problem is the following: I must use the OCI-Driver of the
    Oracle-Client 8.1.7 because I use special PL/SQL-functions.
    I get the error message:
    java.lang.UnsatisfiedLinkError: no ocijdbc8 in java.library.path
    when I try to start my servlet within netscape. Before this I'm
    starting the tomcat servlet engine and make the following
    path known to tomcat:
    java.library.path=/usr/lib:/lib:/share/ams/oracle/ora817-SunOS-5.7/lib:/share/ams/oracle/ora817-SunOS-5.7/jdbc/lib:/share/ams/oracle/ora817-SunOS-5.7/lib64
    In this line are the necessary paths to find the libocijdbc8.so
    library.
    Why does the servlet still have problems to find the driver?
    In addition, I set my java.library.path within the servlet itself.
    Do you know where is the crux of the matter?
    Thank you,
    Christian Schmidbauer

    I'm not sure if this will help, but check to make sure your LD_LIBRARY_PATH environment variable is set (before starting Tomcat). I think this tells the Oracle classes where to find the .so files.

  • Starting JVM from C++ via JNI with specified java.library.path switch...

    Please how i can pass java.library.path switch to JVM during JVM creating in C++...????

    Check out this tutorial: http://java.sun.com/j2se/1.4.2/docs/guide/jni/jni-12.html
    Do a search for the word 'Djava.library.path'
    fitz

  • Problem with Java Stack- dev_w2 log mentioned.

    Hi everyone, I have a problem with Java Stack, I could not connect to XI home page,
    I am unable to login to j2ee engine using visual Administrator.
    Please go through the log below. And help me out to resolve this issue and let me know what could be the problem.
    trc file: "dev_w2", trc level: 1, release: "640"
    ACTIVE TRACE LEVEL           1
    ACTIVE TRACE COMPONENTS      all, M

    B  create_con (con_name=R/3)
    B  Loading DB library 'C:\usr\sap\SXI\SYS\exe\run\dboraslib.dll' ...
    B  Library 'C:\usr\sap\SXI\SYS\exe\run\dboraslib.dll' loaded
    B  Version of 'C:\usr\sap\SXI\SYS\exe\run\dboraslib.dll' is "640.00", patchlevel (0.39)
    B  New connection 0 created
    M systemid   560 (PC with Windows NT)
    M relno      6400
    M patchlevel 0
    M patchno    43
    M intno      20020600
    M make:      multithreaded, Unicode
    M pid        4140
    M
    M  ***LOG Q0Q=> tskh_init, WPStart (Workproc 2 4140) [dpxxdisp.c   1160]
    I  MtxInit: -2 0 0
    M  DpSysAdmExtCreate: ABAP is active
    M  DpSysAdmExtCreate: JAVA is not active
    M  DpShMCreate: sizeof(wp_adm)          13160     (1316)
    M  DpShMCreate: sizeof(tm_adm)          2780232     (13832)
    M  DpShMCreate: sizeof(wp_ca_adm)          24000     (80)
    M  DpShMCreate: sizeof(appc_ca_adm)     8000     (80)
    M  DpShMCreate: sizeof(comm_adm)          290000     (580)
    M  DpShMCreate: sizeof(vmc_adm)          0     (372)
    M  DpShMCreate: sizeof(wall_adm)          (38456/34360/64/184)
    M  DpShMCreate: SHM_DP_ADM_KEY          (addr: 060A0040, size: 3195320)
    M  DpShMCreate: allocated sys_adm at 060A0040
    M  DpShMCreate: allocated wp_adm at 060A1B58
    M  DpShMCreate: allocated tm_adm_list at 060A4EC0
    M  DpShMCreate: allocated tm_adm at 060A4EE8
    M  DpShMCreate: allocated wp_ca_adm at 0634BB30
    M  DpShMCreate: allocated appc_ca_adm at 063518F0
    M  DpShMCreate: allocated comm_adm_list at 06353830
    M  DpShMCreate: allocated comm_adm at 06353848
    M  DpShMCreate: allocated vmc_adm_list at 0639A518
    M  DpShMCreate: system runs without vmc_adm
    M  DpShMCreate: allocated ca_info at 0639A540
    M  DpShMCreate: allocated wall_adm at 0639A548
    X  EmInit: MmSetImplementation( 2 ).
    X  <ES> client 2 initializing ....
    X  <ES> InitFreeList
    X  Using implementation flat
    M  <EsNT> Memory Reset disabled as NT default
    X  ES initialized.

    M  calling db_connect ...
    C  Got ORACLE_HOME=c:\oracle\ora92 from environment
    C  Client NLS settings: AMERICAN_AMERICA.UTF8
    C  Logon as OPS$-user to get SAPSXI's password
    C  Connecting as /@SXI on connection 0 ...
    C  Attaching to DB Server SXI (con_hdl=0,svchp=04494404,svrhp=04495074)

    C  Starting user session (con_hdl=0,svchp=04494404,srvhp=04495074,usrhp=0449D8AC)

    C  Now I'm connected to ORACLE
    C  Got SAPSXI's password from OPS$-user
    C  Disconnecting from connection 0 ...
    C  Closing user session (con_hdl=0,svchp=04494404,usrhp=0449D8AC)
    C  Now I'm disconnected from ORACLE
    C  Connecting as SAPSXI/<pwd>@SXI on connection 0 ...
    C  Starting user session (con_hdl=0,svchp=04494404,srvhp=04495074,usrhp=0449D8AC)
    C  Now I'm connected to ORACLE
    C  Database NLS settings: AMERICAN_AMERICA.UTF8
    C  Database instance sxi is running on STARXI with ORACLE version 9.2.0.5.0 since 20081020
    B  Connection 0 opened
    B  Wp  Hdl ConName          ConId     ConState     TX  PRM RCT TIM MAX OPT Date     Time   DBHost         
    B  000 000 R/3              000000000 ACTIVE       NO  YES NO  000 255 255 20081020 123752 STARXI         
    M  db_connect o.k.
    I  MtxInit: 2 0 0
    M  SHM_PRES_BUF               (addr: 08230040, size: 4400128)
    M  SHM_ROLL_AREA          (addr: 62E40040, size: 77594624)
    M  SHM_PAGING_AREA          (addr: 08670040, size: 39845888)
    M  SHM_ROLL_ADM               (addr: 0AC80040, size: 775412)
    M  SHM_PAGING_ADM          (addr: 0AD40040, size: 525344)
    M  ThCreateNoBuffer          allocated 540152 bytes for 1000 entries at 0ADD0040
    M  ThCreateNoBuffer          index size: 3000 elems
    M  ThCreateVBAdm          allocated 12160 bytes (50 server) at 0AE60040
    X  EmInit: MmSetImplementation( 2 ).
    X  <ES> client 2 initializing ....
    X  Using implementation flat
    X  ES initialized.

    B  db_con_shm_ini:  WP_ID = 2, WP_CNT = 10
    B  dbtbxbuf: Buffer TABL  (addr: 103D00C8, size: 30000128, end: 1206C4C8)
    B  dbtbxbuf: Profile: max_objects = 5000, displace = 1, reorg = 1
    B  dbtbxbuf: request_unit = 2000, sync_reload = 5, inval_reload = 5
    B  dbtbxbuf: protect_shm = 0, force_checks = 0
    B  dbtbxbuf: tsize_retry = 14302848
    B  ***LOG BB0=> buffer TABL       started with length 30000128   bytes [dbtbxbuf#7 @ 15714] [dbtbxbuf1571 4]
    B  dbtbxbuf: Buffer TABLP (addr: 0E4000C8, size: 10240000, end: 0EDC40C8)
    B  dbtbxbuf: Profile: max_objects = 500, displace = 1, reorg = 1
    B  dbtbxbuf: request_unit = 2000, sync_reload = 5, inval_reload = 5
    B  dbtbxbuf: protect_shm = 0, force_checks = 0
    B  dbtbxbuf: tsize_retry = 5046656
    B  ***LOG BB0=> buffer TABLP      started with length 10240000   bytes [dbtbxbuf#7 @ 15714] [dbtbxbuf1571 4]
    B  dbtbxbuf: Reading TBX statistics:
    B  dbtbxbuf: 41 object entries precreated
    B  Layout of EIBUF buffer shared memory:
    B  0: 1 * 4 = 4
    B  1: 1 * 344 = 344
    B  2: 10 * 20 = 200
    B  3: 4001 * 48 = 192048
    B  4: 2000 * 232 = 464000
    B  5: 4001 * 4 = 16004
    B  6: 1 * 200 = 200
    B  7: 65 * 4 = 260
    B  8: 13754 * 256 = 3521024
    B  Tracing = 0, Shm Protection = 0, Force checks = 0
    B  dbexpbuf: Buffer EIBUF (addr: 0EDE00D0, size: 4194304, end: 0F1E00D0)
    B  ***LOG BB0=> buffer EIBUF      started with length 4096k      bytes [dbexpbuf#5 @ 2322] [dbexpbuf2322 ]
    B  Layout of ESM   buffer shared memory:
    B  0: 1 * 4 = 4
    B  1: 1 * 344 = 344
    B  2: 10 * 20 = 200
    B  3: 4001 * 48 = 192048
    B  4: 2000 * 232 = 464000
    B  5: 4001 * 4 = 16004
    B  6: 1 * 200 = 200
    B  7: 65 * 4 = 260
    B  8: 13754 * 256 = 3521024
    B  Tracing = 0, Shm Protection = 0, Force checks = 0
    B  dbexpbuf: Buffer ESM   (addr: 0F1F00D0, size: 4194304, end: 0F5F00D0)
    B  ***LOG BB0=> buffer ESM        started with length 4096k      bytes [dbexpbuf#5 @ 2322] [dbexpbuf2322 ]
    B  Layout of CUA   buffer shared memory:
    B  0: 1 * 4 = 4
    B  1: 1 * 344 = 344
    B  2: 10 * 20 = 200
    B  3: 3001 * 48 = 144048
    B  4: 1500 * 232 = 348000
    B  5: 3001 * 4 = 12004
    B  6: 1 * 200 = 200
    B  7: 193 * 4 = 772
    B  8: 5012 * 512 = 2566144
    B  Tracing = 0, Shm Protection = 0, Force checks = 0
    B  dbexpbuf: Buffer CUA   (addr: 0F6000D0, size: 3072000, end: 0F8EE0D0)
    B  ***LOG BB0=> buffer CUA        started with length 3000k      bytes [dbexpbuf#5 @ 2322] [dbexpbuf2322 ]
    B  Layout of OTR   buffer shared memory:
    B  0: 1 * 4 = 4
    B  1: 1 * 344 = 344
    B  2: 10 * 20 = 200
    B  3: 4001 * 48 = 192048
    B  4: 2000 * 232 = 464000
    B  5: 4001 * 4 = 16004
    B  6: 1 * 200 = 200
    B  7: 81 * 4 = 324
    B  8: 13754 * 256 = 3521024
    B  Tracing = 0, Shm Protection = 0, Force checks = 0
    B  dbexpbuf: Buffer OTR   (addr: 0F8F00D0, size: 4194304, end: 0FCF00D0)
    B  ***LOG BB0=> buffer OTR        started with length 4096k      bytes [dbexpbuf#5 @ 2322] [dbexpbuf2322 ]
    B  ***LOG BB0=> buffer CALE       started with length 500000     bytes [dbcalbuf#1 @ 2206] [dbcalbuf2206 ]
    B  dbtran INFO (init_connection '<DEFAULT>' [ORACLE:640.00]):
    B   max_blocking_factor =  15,  max_in_blocking_factor      =   5,
    B   min_blocking_factor =  10,  min_in_blocking_factor      =   5,
    B   prefer_union_all    =   0,  prefer_union_for_select_all =   0,
    B   prefer_fix_blocking =   0,  prefer_in_itab_opt          =   1,
    B   convert AVG         =   0,  alias table FUPD            =   0,
    B   escape_as_literal   =   1,  opt GE LE to BETWEEN        =   0,
    B   select *            =0x0f,  character encoding          = STD / <none>:-,
    B   use_hints           = abap->1, dbif->0x1, upto->2147483647, rule_in->0,
    B                         rule_fae->0, concat_fae->0, concat_fae_or->0

    M  PfHIndInitialize: memory=<0AEEC488>, header=<0AEEC488>, records=<0AEEC4D0>
    M  SecAudit(init_sel_info): init of SCSA completed: 02 slots used
    M  ***LOG AV6=> 02& [rsauwr1.c    1619]
    M  SsfSapSecin: automatic application server initialization for SAPSECULIB
    N  SsfSapSecin: Looking for PSE in database
    N  SsfPseLoad: started...(path=C:\usr\sap\SXI\DVEBMGS00\sec, AS=starxi, instanceid=00)

    N  SsfPseLoad: Downloading file C:\usr\sap\SXI\DVEBMGS00\sec\SAPSYS.pse (client:    , key: SYSPSE, len: 1078)
    N  SsfPseLoad: ended (1 of 1 sucessfully loaded, 1 checked...
    N  MskiCreateLogonTicketCache: Logon Ticket cache created in shared memory.
    N  MskiCreateLogonTicketCache: Logon Ticket cache pointer registered in shared memory.
    M  rdisp/reinitialize_code_page -> 0
    M  icm/accept_remote_trace_level -> 0
    M  rdisp/no_hooks_for_sqlbreak -> 0

    S  *** init spool environment
    S  initialize debug system
    T  Stack direction is downwards.
    T  debug control: prepare exclude for printer trace
    T  new memory block 121963B0
    S  spool kernel/ddic check: Ok
    S  using table TSP02FX for frontend printing
    S  1 spool work process(es) found
    S  frontend print via spool service enabled
    S  printer list size is 150
    S  printer type list size is 50
    S  queue size (profile)   = 300
    S  hostspool list size = 3000
    S  option list size is 30
    S      intervals: query=50, rescan=1800, global=300 info=120
    S      processing queue enabled
    S  creating spool memory service RSPO-RCLOCKS at 0FEB00A8
    S  doing lock recovery
    S  setting server cache root
    S  using server cache size 100 (prof=100)
    S  creating spool memory service RSPO-SERVERCACHE at 0FEB0370
    S    using messages for server info
    S  size of spec char cache entry: 297028 bytes (timeout 100 sec)
    S  size of open spool request entry: 2132 bytes
    S  immediate print option for implicitely closed spool requests is disabled


    A  -PXA--
    A  PXA INITIALIZATION
    A  PXA: Fragment Size too small: 73 MB, reducing # of fragments
    A  System page size: 4kb, admin_size: 5032kb.
    A  PXA allocated (address 67850040, size 150000K)
    A  System name
    A  ORACLE...........................SXI........20081004121019.....................................
    A  is used for RFC security.
    A  Sharedbuffer token: 41534050...33 (len: 111)====== 2b61c190857e36a8681ef39a...
    A  abap/pxa = shared protect gen_remote
    A  PXA INITIALIZATION FINISHED
    A  -PXA--

    A  ABAP ShmAdm initialized (addr=579F4000 leng=20955136 end=58DF0000)
    A  >> Shm MMADM area (addr=57E69DF0 leng=126176 end=57E88AD0)
    A  >> Shm MMDAT area (addr=57E89000 leng=16150528 end=58DF0000)
    A  RFC rfc/signon_error_log = -1
    A  RFC rfc/dump_connection_info = 0
    A  RFC rfc/dump_client_info = 0
    A  RFC rfc/cp_convert/ignore_error = 1
    A  RFC rfc/cp_convert/conversion_char = 23
    A  RFC rfc/wan_compress/threshold = 251
    A  RFC rfc/recorder_pcs not set, use defaule value: 2
    A  RFC rfc/delta_trc_level not set, use default value: 0
    A  RFC rfc/no_uuid_check not set, use default value: 0
    A  RFC Method> initialize RemObjDriver for ABAP Objects
    A  Hotpackage version: 9
    M  ThrCreateShObjects          allocated 10568 bytes at 0FFD0040
    M  ThVBStartUp: restart pending update requests

    M  ThVBAutoStart: update-auto-delete
    N  SsfSapSecin: putenv(SECUDIR=C:\usr\sap\SXI\DVEBMGS00\sec): ok
    N  SsfSapSecin: PSE C:\usr\sap\SXI\DVEBMGS00\sec\SAPSYS.pse found!

    N  =================================================
    N  === SSF INITIALIZATION:
    N  ===...SSF Security Toolkit name SAPSECULIB .
    N  ===...SSF trace level is 0 .
    N  ===...SSF library is C:\usr\sap\SXI\SYS\exe\run\sapsecu.dll .
    N  ===...SSF hash algorithm is SHA1 .
    N  ===...SSF symmetric encryption algorithm is DES-CBC .
    N  ===...sucessfully completed.
    N  =================================================
    N  MskiInitLogonTicketCacheHandle: Logon Ticket cache pointer retrieved from shared memory.
    N  MskiInitLogonTicketCacheHandle: Workprocess runs with Logon Ticket cache.
    W  =================================================
    W  === ipl_Init() called
    W    ITS Plugin: Path dw_gui
    W    ITS Plugin: Description ITS Plugin - ITS rendering DLL
    W    ITS Plugin: sizeof(SAP_UC) 2
    W    ITS Plugin: Release: 640, [6400.0.43.20020600]
    W    ITS Plugin: Int.version, [31]
    W    ITS Plugin: Feature set: [3]
    W    ===... Calling itsp_Init in external dll ===>
    W  === ipl_Init() returns 0, ITSPE_OK: OK
    W  =================================================
    M  MBUF info for hooks: MS component UP
    M  ThSetEnqName: set enqname by profile
    M  ThISetEnqname: enq name = >starxi_SXI_00                           <

    E  *************** EnqId_EN_ActionAtMsUpHook ***************
    E  Hook on upcoming Ms (with EnqSrv), get auth EnqId and check it locally
    E  Enqueue Info: enque/disable_replication = 2
    E  Enqueue Info: replication disabled


    E  *************** ObjShMem_CheckAuthoritativeEnqId ***************
    E  Checking authoritative EnqId from EnqSrv into ObjShMem
    E  ObjShMem_CheckAuthoritativeEnqId: ObjShMem ...
    E  EnqId.EnqTabCreaTime    = -999
    E  EnqId.RandomNumber      = -999
    E  ReqOrd.TimeInSecs       = -999
    E  ReqOrd.ReqNumberThisSec = -999
    E  ObjShMem_CheckAuthoritativeEnqId: ObjShMem ...
    E  EnqId.EnqTabCreaTime    = -999
    E  EnqId.RandomNumber      = -999
    E  ReqOrd.TimeInSecs       = -999
    E  ReqOrd.ReqNumberThisSec = -999
    E  ObjShMem_CheckAuthoritativeEnqId: EnqId is initial in ShMem
    E  ObjShMem_CheckAuthoritativeEnqId: Overwrite incoming auth EnqId, continue
    E  EnqId inscribed into initial ObjShMem: (ObjShMem_CheckAuthoritativeEnqId)
    E  -SHMEM--
    E  EnqId:          EnqTabCreaTime/RandomNumber    = 20.10.2008 12:38:10  1224486490 / 4140
    E  ReqOrd at Srv:  TimeInSecs/ReqNumberThisSec    = 20.10.2008 12:38:11  1224486491 / 1
    E  ReqOrd at Cli:  TimeInSecs/ReqNumberThisSec    = 20.10.2008 12:38:11  1224486491 / 1
    E  Status:         STATUS_OK
    E  -
    M  ThActivateServer: state = STARTING
    L  Begin of BtcSysStartRaise
    L  Raise event SAP_SYSTEM_START with parameter <starxi_SXI_00       >
    L  End of BtcSysStartRaise

    I  MPI<c>9#3 Peak buffer usage: 5 (@ 64 KB)

    M  *** WARNING => ThCheckReqInfo: req_info & DP_CANT_HANDLE_REQ
    M  return number range rc 12
    M  *** WARNING => ThNoGet: get from object (cli/obj/subobj/range = 000/ALAUTOUID /      /01) returned rc 12

    S  server @>SSRV:starxi_SXI_00@< appears or changes (state 1)
    B  table logging switched off for all clients

    S  server @>SSRV:starxi_SXI_00@< appears or changes (state 1)

    M  hostaddrlist return 0

    M  hostaddrlist return 0

    M  hostaddrlist return 0
    M  hostaddrlist return 0
    M  hostaddrlist return 0
    Regards,
    Varun.

    You probably made the same mistake as I did and added the tables manually to the "sample" database instead of the "sun-appserv-samples" database.
    marc

  • Migration 10.1.2 - 10.1.3, error:: no ocijdbc10 in java.library.path

    Hi,
    I'm using Jdev 10.1.3, and my problem is the following one:
    In my connection definition, that ORACLE_JDBC_TYPE is oci8 and when i try to conenct to BD, it occurs:
    java.lang.UnsatisfiedLinkError: no ocijdbc10 in java.library.path
    I've Oracle Client 9i and 8i, i've used each of them, but it doesn'nt work
    I've drivers,jar, dll of client 10, becuase i supposse that it is that application need,
    and i copy them in jdbc/lib of Oracle client(8i and 9i) and in jDev 10.1.3, but it doesn`t work.
    The files are :
    jars:: classes12.jar and ojdbc14.jar
    dll ::oci.dll,ocijdbc10.dll, ociw32.dll,orannzsbb10.dll,oraocci10.dll and oraociei10.dll
    Is there other path else where i should copy this jars,dllls?
    Could we help me?
    Thanks.

    I am not familiar with Mac OS, but there are two things I can think of that you can check:
    - This is trivial, and you probably did that: ist libocijdbc10.dylib in /usr/local/oracle/instantclient10_1 ?
    - Could it be that Java is 32-bit and libocijdbc10.dylib is 64-bit or vice versa?
    Yours,
    Laurenz Albe

  • JavaFX - problem with civil library (FMJ)

    Hi,
    I'm using the library com.lti.civil (from FMJ) for a desktop application that uses video capture. At integration with JavaFX it gives me an error:
    com.lti.civil.CaptureException: java.lang.UnsatisfiedLinkError: no
    civil in java.library.path
    at
    com.lti.civil.impl.jni.NativeCaptureSystemFactory.createCaptureSystem(Nativ eCaptureSystemFactory.java: 24).
    In a simple Java application the code works. In both of the applications the library is included.
    I have tested it on Windows 7 both on 32 and 64 bits and the same error appears.
    Do you have any ideas?

    I'm suffering the same problem under netbeans but works ok if I launch from command line, I created a java class:
    public static void main(String [] args) throws ClassNotFoundException, InstantiationException, IllegalAccessException
    Class.forName("javafxapplication1.Main").newInstance();
    And class the Main class to create the Stage in the init method, then make a run.bat with:
    set JAVAFX_HOME=c:\Archivos de programa\JavaFX\javafx-sdk1.2
    java -Djava.ext.dirs=JavaFXApplication1\dist;lti-civil-20070920-1721;"%JAVAFX_HOME%\lib\Desktop";"%JAVAFX_HOME%\lib\Shared" -Djava.library.path=lti-civil-20070920-1721\native\win32-x86 javafxapplication1.TextFX
    Just give a try, and I'm trying to solve netbeans problem...

  • Oracle Calendar - UnsatisfiedLinkError: no csdkjni in java.library.path

    Hi, all.
    I deployed my test calendar application developed using Jdeveloper 10.1.3.0 (on Windows XP) to the Oracle 10.1.3. AS on a linux server, but the CalendarServer in on another installation (Collaboration Suite 10.1.2) on the same linux server.
    When I try to executed the code that calls the calendar server I get this error:
    500 Internal Server Error
    javax.faces.el.EvaluationException: java.lang.UnsatisfiedLinkError: no csdkjni in java.library.path
    I set the LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib:$ORACLE_HOME/ocal/lib on the collaboration suite 10.1.2 installation.
    When I try to run the code on my Jdeveloper I get the same error:
    java.lang.UnsatisfiedLinkError: no csdkjni in java.library.path
    In my windows machine I create a folder where I put the dll's and jar files that came from the collaboration suite windows installation, but I get always the same error
    This is the code:
    try
    Api.init("calendar.ini", "calendar.log");
    catch(Api.StatusException e)
    System.out.println("init returned status'" + e.getMessage() + "'");
    System.exit (1);
    Is my approach correct? Because if i'm developing on Windows and I need dll's files to connect to the calendar server on linux, but when I deploy the application to the linux server those dll's are useless and cannot be used. So am I missing something here? Do I need anything else to get this to work?
    Best Regards,
    Rui

    1. Use 1 and only 1 of classes12.zip and ojbc14.jar; they have different versions of the same classes in them.
    2. The Oracle OCI driver for JDBC uses .dll files or .so files from the Oracle client installation (as well as Oracle network configuration files, I think); most people use the thin driver instead to avoid this problem.
    To use the thin driver, change your url, see here for details:
    http://www.oracle.com/technology/tech/java/sqlj_jdbc/htdocs/jdbc_faq.htm#05_00
    To stay with the OCI driver (not recommended), you need to have the appropriate Oracle client installation (or at least get the dlls or sos), and I think set additional environment variables, such as ORACLE_HOME and possibly LD_LIBRARY_PATH. I don't do this myself, so I can't give much more advice.

  • No ocijdbc9 in java.library.path

    I am running an app against Oracle 8.17 with an OCI connection using ocijdbc8.dll. The web server is Tomcat 3.2.3. The app has no problem connecting to the database.
    If I run against Tomcat 4 I get the error
    java.lang.UnsatisfiedLinkError: no ocijdbc9 in java.library.path
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
    at java.lang.Runtime.loadLibrary0(Runtime.java:749)
    at java.lang.System.loadLibrary(System.java:820)
    at oracle.jdbc.oci8.OCIDBAccess.logon(OCIDBAccess.java:294)
    at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:307)
    at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:442)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:321)
    at java.sql.DriverManager.getConnection(DriverManager.java:517)
    I do not have Oracle 9i installed so don't know why it is trying to use ocijdbc9.
    When I switch back to Tomcat 3 there is no problem.
    The Classpath has the Classes12.zip for Oracle 8.1.7
    Can anybody shed any light on this??

    What is the platform this product is running on? Is LD_LIBRARY_PATH (through wrapper.env) or java.library.path set in jserv.properties?

  • Java.lang.UnsatisfiedLinkError: no ocijdbc8 in java.library.path

    hi,
    i am trying to connect to an oracle 8.1.7 database from my application running on tomcat 4.0.3 / jdk1.4 /windows nt.
    using the thin jdbc-driver (classes12.zip) everything works fine.
    when i try using the oci8-driver, i get an error-message saying:
    java.lang.UnsatisfiedLinkError: no ocijdbc8 in java.library.path
    i have the oracle-client installed on my machine.
    the ocijdbc8.dll can be found in D:\server\oracla81\bin
    the environment-variables PATH, CLASSPATH, LD_LIBRARY_PATH (i'm not sure if this has any meaning on nt) all point to this directory.
    i start tomcat using the following option: -Djava.library.path="D:\server\oracla81\bin"
    my application can see this variable:
    System.out.println("java.library.path: "+System.getProperty("java.library.path"));
    prints out the correct value.
    then i try to load the library by myself:
    try {
    System.loadLibrary("ocijdbc8");
    System.out.println("Successfully Loaded");
    } catch(Exception e) {
    System.out.println("LD_LIBRARY_PATH is not properly set");
    e.printStackTrace();
    everything works fine! the library is loaded!
    finally i try to connect to the database and the application throws the mentioned exception:
    lang.UnsatisfiedLinkError: no ocijdbc8 in java.library.path
         at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1410)
         at java.lang.Runtime.loadLibrary0(Runtime.java:772)
         at java.lang.System.loadLibrary(System.java:832)
         at oracle.jdbc.oci8.OCIDBAccess.logon(OCIDBAccess.java:228)
         at oracle.jdbc.driver.OracleConnection.(OracleConnection.java:249)
         at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:365)
         at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:260)
    any help would be appreciated.
    thanx in advance,
    frank.
    [email protected]

    It is probably JDK 1.4 that causes the problem. I was able to get strange errors with that version of the JDK with code that worked fine using 1.31.

  • Error "no ocijdbc11 in java.library.path" in SQL Developer 4

    Hi!
    I have just installed the latest version of Oracle 12c and the latest SQL Developer (4.0.0.12). I have also JDK 7u25 installed. I run everything on Windows 7 64bit. When I create a local connection in SQL Developer and test or try to connect I get the error: no ocijdbc11 in java.library.path
    If I try the exact same thing in SQL Developer 3.2.2 (the one bundled with the latest Oracle 12c) it works fine. In both versions of SQL Developer I have done no configuration and all the settings are the defaults.
    I have read all the posts that relate to this error message, but they are all based on older versions or other platforms.
    Is there a problem in the default configuration of SQL Developer 4 or a compatibility problem with Oracle 12c? Any ideas of how to fix this?
    When I compare the properties of the two versions of SQL Developer I see that most of them are identical, but the java.library.path points to the sqldeveloper/bin directory in v4 and to the sqldeveloper root folder in v3. I don't know if that is significant.
    Also the setting "Use OCI/Thick Driver"  under "Database: Advanced" is unchecked, so it seems strange that it tries to use it anyway.
    /nikos

    Nikos:
    You should search that ocijdbc11 is installed in a path similar to C:\Oracle32bit\product\11.2.0\client32bit\bin and that this path (or C:\Oracle32bit\product\11.2.0\client32bit) is in your java.library.path.
    If you click on Help|About and the Extensions tab you will see a list of some of these.
    Click on the Export button and copy the contents to a file or clipboard.  Open the file (or Ctrl/V) in an editor and search for java.library.path.  This is the list of ;-separated folders that SQL looks in. Ensure that this list includes the one where your ocijdbc11 was found.
    HTH

  • No ocijdbc11 in java.library.path

    Good day,
    I am trying to set up SQL Developer to use TAF; I am frequently getting the error in this subject and am pulling my hair out trying to get to the bottom of it.
    My environment:
    freshly downloaded Instant Client 11.2.0.3
    Full Oracle Client 11.2.0.2
    Freshly upgraded SQL Developer (3.2.20.09)
    Client: Windows 7
    Server: Grid/RAC 11.2.0.3 running on Solaris 10
    For starters, I have attempted to follow the wise advice of Gary and Turloch in the following threads:
    https://forums.oracle.com/thread/2342919
    https://forums.oracle.com/thread/2319271
    I have tried both the Thick and Thin clients. I am not exactly sure what to do next. Any ideas?
    Thanks for your time and attention,

    Hi Charles,
    You definitely need OCI to use TAF.
    If you go to the Help -> About -> Properties tab and scroll down to the name java.library.path, you should see its value is a construction that includes your Windows Path variable.  The Path variable should include a reference to the bin directory of the Oracle client software where the ocijdbc11.dll lives.  If it's missing, then that could be the problem.
    Otherwise, reading through some old forum posts, it seems that error can also occur when SQL Developer has difficulty locating the tnsnames.ora file. The recommendation is to specify the location via Tools -> Preferences -> Database -> Advanced -> Tnsnames Directory. However, this case is applicable when Connection Type = TNS, and I assume you must be using Connection Type = Advanced with a Custom JDBC URL.  If ocijdbc11.dll is on the Path, you should have the option of using either TNS or the Custom JDBC URL.
    If Path is correct, I am not sure if it is absolutely necessary to set the ORACLE_HOME variable and enable the OCI/Thick driver preference, but it probably could not hurt.
    Hope this helps,
    Gary

  • Wrong java.library.path in Netbeans?

    I write some java code and call native method with JNI, it does not work under netbeas, but work well in terminal. I try use System.out.println(System.getProperty("java.library.path")); to know what's wrong, i get two different output:
    netbeans: /usr/lib/jvm/java-1.5.0-sun-1.5.0.06/jre/lib/i386/client:/usr/lib/jvm/java-1.5.0-sun-1.5.0.06/jre/lib/i386:
    /usr/lib/jvm/java-1.5.0-sun-1.5.0.06/jre/../lib/i386terminal:
    /usr/lib/jvm/java-1.5.0-sun-1.5.0.06/jre/lib/i386/client:/usr/lib/jvm/java-1.5.0-sun-1.5.0.06/jre/lib/i386:
    /usr/lib/jvm/java-1.5.0-sun-1.5.0.06/jre/../lib/i386:/home/ray/Projects/swmse/ext:Yes, the "/home/ray/Projects/swmse/ext" is my defined LD_LIBRARY_PATH, but why cannot Netbeans find it?
    Anybody know this? Thank you!
    My environment JDK 1.5.0.06 + Netbeans 5.5 + Kubuntu 6.06

    I've had a similar problem (or the same). At last my mistake was give "bad" names to my libraries.
    Note the importance of the java line:
    System.loadLibrary("nameiwant");
    when compiling your .c program it will be:
    ..... -o libnameiwant.so .... ( i.e. "lib"+"nameiwant"+".so" )

  • ERROR on AIX - no library weblogicoci36 (libweblogicoci36.a or .so) in java.library.path

    I have WLS 5.1 SP10 running successfully on all platforms (Solaris,
    HP-UX, NT/2000 and AIX). On AIX, I am unable to communicate with the
    Oracle instance. The error I am receiving is the well-known "no
    library weblogicoci36 (libweblogicoci36.a or .so) in
    java.library.path". The actual command and output are:
    [undertaker]/apps/weblogic2/weblogic/bin/oci816_8$ java utils.dbping
    ORACLE weblogic weblogic
    Error encountered:
    java.sql.SQLException: System.loadLibrary threw
    java.lang.UnsatisfiedLinkError
    with the message 'no library weblogicoci36 (libweblogicoci36.a or
    .so) in java.library.path'.
    at weblogic.jdbcbase.oci.Driver.connect(Driver.java:116)
    at java.sql.DriverManager.getConnection(DriverManager.java:459)
    at java.sql.DriverManager.getConnection(DriverManager.java:108)
    at utils.dbping.main(dbping.java:156)
    I have followed the BEA recommended resolution steps, and the problem
    persists. While I have seen many posts about this problem on Solaris,
    NT and even HP-UX, I have not been seen posts with AIX as the
    platform. Any insight into why the problem is occuring is greatly
    appreciated. Here is the enviroment:
    1. AIX 4.3.3
    2. WLS 510 SP10
    3. Oracle 8.1.6
    ============= Setting Environment ================
    WL_HOME=/apps/weblogic2/weblogic
    JAVA_HOME=/usr/java_dev2
    CLIENT_CLASSES=/apps/weblogic2/weblogic/myserver/clientclasses
    SERVER_CLASSES=/apps/weblogic2/weblogic/myserver/serverclasses
    SERVLET_CLASSES=/apps/weblogic2/weblogic/myserver/servletclasses
    PATH=/usr/java_dev2/jre/sh:/usr/java_dev2/sh:/usr/bin:/etc:/usr/sbin:/usr/ucb:/usr/bin/X11:/sbin:/usr/local/bin:/usr/bin:/etc:/usr/sbin:/usr/ucb:/usr/bin/X11:/sbin:/apps/oracle/product/8.1.6/bin:/usr/local/bin:/usr/ucb
    CLASSPATH=/usr/java_dev2/lib/tools.jar:/apps/weblogic2/weblogic/license:/apps/weblogic2/weblogic/lib/weblogic510sp10.jar:/apps/weblogic2/weblogic/classes:/apps/weblogic2/weblogic/lib/weblogicaux.jar:/apps/weblogic2/weblogic/lib/aix/oci816_8:/apps/oracle/product/8.1.6/bin:/apps/oracle/product/8.1.6/lib:/apps/weblogic2/weblogic/bin/oci816_8:/apps/weblogic2/weblogic/myserver/clientclasses:/apps/weblo
    ic2/weblogic/myserver/serverclasses
    LIBPATH=/apps/weblogic2/weblogic/lib/aix:/apps/weblogic2/weblogic/lib/aix/oci816_8:/apps/oracle/product/8.1.6/lib
    Regards,
    Jeffrey Overton

    We have "worked around" this problem. We switched to the Oracle thin
    client driver and resolved the problem. We are still working with BEA
    Technical Support on this issue. I'll post updates as we get more
    information.
    [email protected] (Jeffrey Overton) wrote in message news:<[email protected]>...
    "Tom Gross" <[email protected]> wrote in message news:<[email protected]>...
    I haven't tried 5.1 on AIX, but I know in 6.0 there is an error in startWebLogic.sh
    specific to AIX: it exports "LIB_PATH" when it should say "LIBPATH". I just checked
    in the 5.1 script and it appears to have the same error. You need to change the
    name "LIB_PATH" to "LIBPATH". This error is fixed in 6.1 so we can be sure there
    is at least one other person on the planet who is trying to use Weblogic on AIX.
    :-)Tom,
    Thanks for the help. Unfortunately, I cannot find a reference to
    LIB_PATH in setEnv.sh or startWebLogic.sh. At this point, we are
    pursuing the possibility that the IBM JDK 1.2.2 introduced some
    incompatibilities. From the "IBM AIX Developer Kit, Java TM2
    Technology Edition, Version 1.2.2 README":
    "Because of incompatibility between the IBM AIX Developer Kit, Java
    TM2 Technology Edition, Version 1.2.2"..."JNI executable programs,
    including third-party software packages and those built for previous
    Java software releases on AIX, that were built without this binder
    option are NOT compatible with the JVM in this
    release"..."Compatibility of an executable program can be verified
    using dump -ov The stdout output will show the modtype to be "UR"..."A
    script file (convertJNI) is shipped in the directory
    /usr/java_dev2/sdk/sh. This script will help you to convert the
    modtype to UR in the optional header of your JNI executable programs
    without having to recompile the code."
    Out of the hundreds of potential files, which need to be converted?
    Based on additional information obtained by running in verbose mode,
    we were able to gather the following:
    java.sql.SQLException: System.loadLibrary threw
    java.lang.UnsatisfiedLinkError
    with the message '/apps/weblogic2/weblogic/lib/aix/oci816_8/libweblogicoci36.a:
    0509-130 Symbol resolution failed
    for /apps/oracle/product/8.1.6/lib/libclntsh.a(shr.o) because:
    0509-136 Symbol JNI_CreateJavaVM (number 253) is not
    exported from
    dependent module /usr/java_dev2/jre/bin/libjava.a.
    0509-136 Symbol JNI_GetDefaultJavaVMInitArgs (number 254) is
    not exported from
    dependent module /usr/java_dev2/jre/bin/libjava.a.
    0509-136 Symbol dlsym (number 255) is not exported from
    dependent module /usr/j'.
    at weblogic.jdbcbase.oci.Driver.connect(Driver.java:116)
    at java.sql.DriverManager.getConnection(DriverManager.java:459)
    at java.sql.DriverManager.getConnection(DriverManager.java:108)
    at utils.dbping.main(dbping.java:156)
    We performed the dump -ov on each and each reported a modtype of RE
    instead of UR.
    We backed up libclntsh.a and libweblogicoci36.so, converted one at a
    time, and ran the dbping after each. No such luck. Any ideas on how
    we can find the JNI needle in the haystack?
    Regards,
    Jeffrey Overton

Maybe you are looking for