Native library loading problem

Hi Folks,
I currently downloaded, and compiled the bDB core using VS 2010 x64 (I run 64 bit win7, and JRE 64 bit). In Eclipse I'm trying to use the native library (setting up the path correctly), however the java is complaining that it cannot find dependencies.
I switched to JE, it works fine, but I'm not sure if JE is as performant as the core version. Anybody had the same problem?
thanks in advance
Edited by: user5493457 on Mar 22, 2011 3:35 AM

Hi,
Please review the building process of the Berkeley DB libraries, to ensure you have correctly built them. Review Building Berkeley DB for Windows, Building the Java API and Java configuration. If you want to build 64-bit libraries, make sure you select x64 as platform configuration in Visual Studio when building.
I assume you are getting a java.lang.UnsatisfiedLinkError exception at runtime. Just to make sure Eclipse correctly finds the native BDB libraries, in your Run Configuration for the project you're trying to run, under Environment, add a new variable, LD_LIBRARY_PATH with a value of something like D:\BerkeleyDB\db-5.1.25\build_windows\x64\Debug (substitute Debug with Release depending on how you built the libraries) -- this is the path to the location of the native BDB libs, libdb51d.dll and libdb_java51d.dll (or libdb51.dll and libdb_java51.dll), so you should change it as appropriate for your system.
Also, for that Run Configuration add a new variable, CLASSPATH with a value of something like D:\BerkeleyDB\db-5.1.25\build_windows\x64\Debug\db.jar;D:\BerkeleyDB\db-5.1.25\build_windows\x64\Debug\classes (this is the path to the Java API classes and the Java API jar file -- db.jar). Make sure that "Append environment to native environment" option is checked, in the Run Configurations screen.
Regards,
Andrei

Similar Messages

  • Problem :  Native Library already loaded in another classloader

    I created a shared library HaspKeyAPI.dll by using JNI and add path to Java class library. I need to call native functions in my servletAction class to check some information in a key. Sometimes not always, I met �java.lang.UnsatisfiedLinkError: Native Library C:\eclipse\workspace\HaspKey\SharedLib\HaspKeyAPI.dll already loaded in another classloader� problem. I have to restart tomcat server then to restart my web app.
    Does anyone know how to fix it?
    Thank you in advance!
    ////////////////////////////////////my native function class, a singleton class////////////////////////////////
    package haspkey.api;
    import java.util.Collection;
    import java.util.Vector;
    import haspkey.HardwareSecurityKey;
    Public class HaspKeyAPI {
    Public static final int KEYEXIST = 1;
    //A Singleton Class
    private static HaspKeyAPI haspKeyAPI;
    private HaspKeyAPI()
    public static HaspKeyAPI getSingletonObject()
    if ( haspKeyAPI== null)
    haspKeyAPI = new HaspKeyAPI();          
    return haspKeyAPI;
    public Object clone()
         throws CloneNotSupportedException
    throw new CloneNotSupportedException();
    /**********use native functions to call hasp C API***********/
    public native int keyPresent(int password1, int password2);
    public native int getId(int password1, int password2);
    public native void readBlock(int startMemoryLocation, int size,
    byte[] block, int password1, int password2);
    public native void writeBlock(int startMemoryLocation,int size, byte[] block, int password1,
    int password2);
    public native boolean decodeData(int size, byte[] block, int password1,
    int password2);
    public native boolean encodeData(int size, byte[] block, int password1,
    int password2);
    static {
    System.loadLibrary("HaspKeyAPI");
    private int getPrivMachineSpeed(boolean decrypt, int pass1, int pass2, String MLOCRTypeCode){
    byte[] block = new byte[8];
    int privMachineSpeed = 0;
    boolean isNumeric = true;;
    readKeyMemory(40,8,block, decrypt, pass1, pass2);
    if(block.length!=8){
    return -1;
    }else{
    String s = new String(block);
    for(int n=0; n<3; n++){
    if(s.charAt(n)<48 || s.charAt(n)>57){
    isNumeric = false;
    if(isNumeric){
    privMachineSpeed = Integer.parseInt(s.substring(0,3));
    return privMachineSpeed;
    public HardwareSecurityKey getHardwareSecurityKey(boolean decrypt, int pass1, int pass2, String AuthorizationCodes,String MLOCRTypeCode){
    HardwareSecurityKey key = new HardwareSecurityKey();
    if(keyPresent(pass1,pass2)==KEYEXIST){
    key.setPrivKeyID(getId(pass1, pass2));
    key.setPrivMachineSpeed(getPrivMachineSpeed(true, pass1,pass2, MLOCRTypeCode));
    }else{
    return null;
    /////////////////////////////// a class include some static final information to call the native function///////////////
    import com.bowebellhowell.haspkey.api.HaspKeyAPI;
    import com.bowebellhowell.winsort.vo.haspkey.HardwareSecurityKey;
    public class HaspKey{
    public static final String MLOCRTypeCode ="mmmmmmmmmmmmmmm";
    public static final String AuthorizationCodes = "bbbbbbbbbbbbbbbb";
    public static final int p1 = 0;
    public static final int p2 = 0;
    public static HardwareSecurityKey getHardwareSecurityKey(){
    HaspKeyAPI key = HaspKeyAPI.getSingletonObject();
    return key.getHardwareSecurityKey(true,p1,p2,AuthorizationCodes,MLOCRTypeCode);
    /////////////////////////////////// a servlet to call native function///////////////////////////////////
    public class LogonAction extends Action {
         public ActionForward execute(
              ActionMapping mapping,
              ActionForm form,
              HttpServletRequest request,
              HttpServletResponse response)
              throws Exception {
              int n = HaspKey.isKeyPresent();
              if(n!=1){
              if(n==2){
              message = "KeyDriverNotMatch";          
              }else if(n==3){
              message = "KeyOldModel";
              }else if(n==4){
              message = "KeyPasswordNotMatch";
              }else if(n==-1){
              message = "keyNotExist";
              request.getSession().setAttribute("message",message);
    java.lang.UnsatisfiedLinkError: Native Library C:\eclipse\workspace\HaspKey\SharedLib\HaspKeyAPI.dll already loaded in another classloader
    at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1551)
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1511)
    at java.lang.Runtime.loadLibrary0(Runtime.java:788)
    at java.lang.System.loadLibrary(System.java:834)
    at haspkey.api.HaspKeyAPI.<clinit>(HaspKeyAPI.java:76)
    at util.HaspKey.isKeyPresent(HaspKey.java:35)
    at LogonAction (LogonAction .java:65)

    Hi EveryBody:
    i working in 2 servlets, these servlets import a login.jar library and login.jar call to Login.dll (a native Library)
    then. when i start second servlet i have this message
    java.lang.UnsatisfiedLinkError: Native Library dllLogin.dll already loaded in another classloader
    i read about class loader and i know about a only one load for native library but i don't know how resolve this exception because both servlets need dllLogin.dll to validate the user
    please anybody knows how or have any idea?
    Kind Regards
    Edson
    --sorry i know. my english is very bad                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • Problem with loading native library in java version "1.5.0_05"

    My application uses a native coded drawing. With java version 1.4.xx it was working just fine but with java 1.5.xx it gives the following error at the time of loading native library:
    java.lang.UnsatisfiedLinkError: /home/abyzov/tmp/friend32-1.6.02/libfriend.so:
    /home/abyzov/tmp/friend32-1.6.02/libfriend.so: undefined symbol: XtWindowToWidget
    I assumed that java loads all necessary X-libraries at start up but it seems to be not true for version 1.5.xx. Does anybody now about this kind of problems? Should I report it as a bug?

    I have this exact same problem. I developed an application all along using 1.4.2_08 to be exact no problems. I was forced to switch to 1.5.0_06, now when I try to run the app I get:
    java.lang.UnsatisfiedLinkError: <path to library>/libcomlib.so: <path to library>/libcomlib.so: undefined symbol: yp_get_default_domain
    I have tried compiling it in both 1.4.2_8 and 1.5.0_06 and it compiles perfectly but when I run with 1.5.0_06 it messes up.
    If you found the problem with this or anyone else has any advice please let me know.

  • Problems with loading native library/missing methods: no ttJdbcCS1121

    Hi guys,
    Im getting this problem in glassfish 2.1, but in glassfish 3 or in tomcat, i dont get this problem. (Windows)
    Any thoughts?
    java.sql.SQLException: Problems with loading native library/missing methods: no ttJdbcCS1121 in java.library.path
    at com.timesten.jdbc.JdbcOdbcConnection.connect(JdbcOdbcConnection.java:1750)
    at com.timesten.jdbc.TimesTenDriver.connect(TimesTenDriver.java:305)
    at com.timesten.jdbc.TimesTenDriver.connect(TimesTenDriver.java:161)
    at java.sql.DriverManager.getConnection(DriverManager.java:525)
    at java.sql.DriverManager.getConnection(DriverManager.java:193)
    at com.summitinvt.mdaq.db.handler.DBConnector.getConnection(DBConnector.java:108)
    at com.summitinvt.mdaq.db.handler.DBConnector.initiateConnection(DBConnector.java:101)
    at com.summitinvt.mdaq.db.handler.DBConnector.<init>(DBConnector.java:34)
    at com.summitinvt.mdaq.db.handler.DBConnector.<init>(DBConnector.java:14)
    at com.summitinvt.mdaq.db.handler.DBConnector$DBConnectorUtil.<clinit>(DBConnector.java:24)
    at com.summitinvt.mdaq.db.handler.DBConnector.getInstance(DBConnector.java:28)
    at com.summitinvt.mdaq.rats.server.CommunicatorImpl.getPnLByCurrency(CommunicatorImpl.java:1074)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:592)
    at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:562)
    at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:207)
    at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:243)
    at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
    at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:427)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:315)
    at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:287)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:218)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
    at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
    at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:98)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:222)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:587)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1093)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:166)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:587)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1093)
    at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:291)
    at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:666)
    at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:597)
    at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:872)
    at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
    at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
    at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
    at com.sun.enterprise.web.portunif.PortUnificationPipeline$PUTask.doTask(PortUnificationPipeline.java:382)
    at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:264)
    at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
    regards
    John

    A similar problem was reported before on this Forum - see
    Re: not able create connection to timesten
    checking the Release Notes I can see 11.2.1.8.0 has been tested against Glassfish 3 but I
    can't see any mention about Glassfish 2 in the v7 or v11 Release Notes (albeit only on a quick
    search).
    In my full install on XP, ttJdbcCS1121.dll is in C:\TimesTen\tt1121_32\bin

  • Problems with loading native library/missing methods:no ttJdbcCS in java.li

    Iam facing one problem while connecting the timesten client to the server The SQL Exception which Iam getting is pasted below:-
    Problems with loading native library/missing methods: no ttJdbcCS in java.library.path
    I am working with MAC OS X 10.7.2 and my timesten client version is 11.2.1.0
    I have also changed the Java Preferences from 64-bit to 32-bit but still whenever i tried to connect with the SQL Developer it gives me the above error.

    I just tried this out. My environment is OS X 10.7.4, Timesten (32-bit) client 11.2.1.9.0, SQL Developer 3.1.07, Oracle Java 1.7.0_04.
    The key things you need to be sure to do (in a terminal window) are:
    1. Be sure to . in the TimesTen environment script <tt_install_dir>/bin/ttenv.sh to set the full TT environment.
    2. Change directory to SQLDeveloper.app/Contents/Resources/sqldeveloper
    3. Run 'sh sqldeveloper.sh -J-d32'
    and all should be fine.
    Note that if you are using Java7 as I am then there is a step 1a. Change the CLASSPATH environment variable to specify ttjdbc6.jar not ttjdbc5.jar. For some reason running the app directly from Finder does not work even if you add -J-d32 into the sqldeveloper launch script. I'm still looking into that.
    Chris

  • Problems with loading native library missing methods ttJdbc1122.dll

    Problems with loading native library/missing methods: C:\TimesTen\tt1122_64\bin\ttJdbc1122.dll: Can't load AMD 64-bit .dll on a IA 32-bit platform
    Hi,
    I have installed TimesTen 11.2.2 64-bit version on 64-bit windows 7.
    I have TimesTen 7 64-bit as well installed on my machice
    When trying to connect to TimesTen (Direct connection) using jdbc from eclipse, I get the following error "Problems with loading native library/missing methods: C:\TimesTen\tt1122_64\bin\ttJdbc1122.dll: Can't load AMD 64-bit .dll on a IA 32-bit platform".
    The JDK version is 1.6.25 - 64 bit version.
    Please help me resolving this error.
    Thanks in Advance,
    Balamurugan

    Are you using SQL Developer?
    There is or used to be a restriction of only being able to using 32 bit. A suggestion might be to try the 32 bit client.

  • Error ocurred during initialization of VM. Unable to load native library...

    Hi,
    I´m trying to install Oracle 9i on a PC with Suse 9.2.
    when I put the first CD it comes with this error:
    Initializing Java Virtual Machine from /tmp/OraInstall2006-05-04_11-13-11PM/jre/bin/java. Please wait...
    Error occurred during initialization of VM
    Unable to load native library: /tmp/OraInstall2006-05-04_11-13-11PM/jre/lib/i386/libjava.so: symbol __libc_wait, version GLIBC_2.0 not defined in file libc.so.6 with link time reference
    I´ve seen that there was a similar issue in 2004 and I´ve trying to do what it says but it didn´t work this time.
    Unable to load native library:
    Could everyone help me to install Oracle??? I´ve been trying it for a few days and doesn´t work.
    Regards,

    I had same problems long time ago. Ok, I try to remember.
    First I read the recommandation. You need a special GLIBC-Library to support the JAVA 1.1.8 runtime environment.
    Some of the Oracle9i tools are compiled with gcc 2.95 compiler.
    You may need ”gcc_old for SLES9” for linking of those tools.
    gcc_old-2.95.3-175.2.i586.rpm is included in SLES 9 SP2 CD1
    For Suse you can obtain a package called orarun. You will get further support for installing, starting and stopping ORACLE. Please look at http://ftp.novell.com/partners/oracle/docs/9205_sles9_install.pdf.
    Good luck.

  • Error: native library oljdbc40.dll already loaded in another classloader

    Hi, we're using Oracle 8iLite in combination with Tomcat (on WinNT4.0) to run servlets accessing our OLite db. We use a deployed db (Deployment tool: PolUtil.exe) and pure JDBC connections.
    When starting tomcat, the servlet is automatically initialized (exactly once!). It comes to the point, where a database connection is to be established. At this point, we get the following error message:
    Native Library E:\MyServer\DB\BIN\oljdbc40.dll already loaded in another classloader
    The strange thing is, that this error only occurs on some machines. There are no other java apps running.
    Where does this error come from, and how can someone avoid this seemingly arbitrary error?
    Thanks in advance for your time, Holger
    null

    You are having some problems with that Oracle Driver and Orion.
    Do you have any JSP at your Installation that work with Oracle?
    Orion needs to know where that Diver is located is that Driver in
    some package that is in Orion's Class Path?

  • Weblogic 8.1.6 Unable to load native library: libjvm.so

    hi,
    i have installed weblogic 8.1 SP6 on my box and when im trying to deploy new application i get errors comaplining about some java libraries.
    when i link them to the /usr/lib directory it's working but it's not a solution couse i need also weblogic 9.2 server running on that box.
    i tried to export LD_LIBRARY_PATH with path to the jdk142 that was installed with weblogic server by myself but also without any success.
    i checked commEnv.sh file and found that path to java libraries are not set properly. added those paths to the LD_LIBRARY_PATH but after running WLS when i try to echo ${LD_LIBRARY_PATH} i get no results.
    maybe someone had such problems, and knows how to resolv them.
    my system is Debian Linux/stable
    WL_HOME=/home/bea/bea/weblogic81
    JAVA_HOME=/home/bea/bea/jdk142_11
    added to commEnv.sh:
    LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/${JAVA_HOME}/jre/lib:${JAVA_HOME}/jre/lib/i386:${JAVA_HOME}/jre/lib/i386/server:${JAVA_HOME}/jre/lib/i386/client
    thanks
    below is a log for this error:
    CUT HERE
    <Error> <HTTP> <brain> <blsBepi> <ExecuteThread: '14' for queue: 'weblogic.kernel.Default'>
    weblogic.servlet.jsp.CompilationException: Compilation of /home/bea/bepi/blsBepiDomain/blsBepi/.wlnotdelete/extract/blsBepi_bepi
    Unable to load native library: libjvm.so: cannot open shared object file: No such file or directory
    at weblogic.servlet.jsp.JspStub.compilePage(JspStub.java:478)
    at weblogic.servlet.jsp.JspStub.prepareServlet(JspStub.java:246)
    at weblogic.servlet.jsp.JspStub.prepareServlet(JspStub.java:196)
    at weblogic.servlet.internal.ServletStubImpl.getServlet(ServletStubImpl.java:598)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:406)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:526)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:348)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7047)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
    at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
    at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
    Caused by: java.io.IOException: Compiler failed executable.exec
    at weblogic.utils.compiler.CompilerInvoker.compileMaybeExit(CompilerInvoker.java:470)
    at weblogic.utils.compiler.CompilerInvoker.compile(CompilerInvoker.java:328)
    at weblogic.utils.compiler.CompilerInvoker.compile(CompilerInvoker.java:336)
    at weblogic.utils.compiler.CompilerInvoker.compile(CompilerInvoker.java:321)
    at weblogic.servlet.jsp.JspStub.compilePage(JspStub.java:451)
    ... 13 more
    -- CUT HERE --
    PS. sorry for my english and is this post is not in the place where it sould be ;-)

    SOLUTION:
    set the absolute path to javac in General Section of the configuration
    make sure that you j2sdk1.4.2 is accessible by all uids that managed servers are running at.
    if that wont help try to put your J2SDK in /usr/local/java.
    and reconfigure your administration server.
    i hope that will help you all that have same problems. cheers ;-)

  • Native Library ocijdbc8.dll already loaded in another classloader

    Hi,
    help me please!
    I have Platform: Win2000/Orion/JSP + Oracle 8.1.7
    and while using this testdb.jsp file
    (simple select from some table and print result)
    i get error:
    java.lang.UnsatisfiedLinkError: Native Library C:\oracle\ora81\bin\ocijdbc8.dll already loaded in another classloader
    testdb.jsp
    <%@ page import="java.util.*" %>
    <%@ page import="java.sql.*" %>
    <%
    String user = "sa";
    String password = "dbo";
    String jdbcClass = "oracle.jdbc.driver.OracleDriver";
    String jdbcURL = "jdbc:oracle:oci8:@DB02";
    Connection conn = null;
    PreparedStatement pstmt = null;
    Statement stmt = null;
    ResultSet rs = null;
    try
    Properties props = new Properties();
    props.put("user", user);
    props.put("password", password);
    Driver myDriver = (Driver) Class.forName(jdbcClass).newInstance();
    conn = myDriver.connect(jdbcURL, props);
    catch (Exception e)
    e.printStackTrace(response.getWriter());
    try
    stmt = conn.createStatement();
    rs = stmt.executeQuery("select * from fxqs_users");
    while(rs.next())
    out.print("User: " + rs.getString("LOGIN") + "<hr size=1>");
    rs.close();
    stmt.close();
    catch(Exception e)
    e.printStackTrace(response.getWriter());
    %>
    Error:
    500 Internal Server Error
    java.lang.UnsatisfiedLinkError: Native Library C:\oracle\ora81\bin\ocijdbc8.dll already loaded in another classloader
    at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1346)
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1306)
    at java.lang.Runtime.loadLibrary0(Runtime.java:749)
    at java.lang.System.loadLibrary(System.java:820)
    at oracle.jdbc.oci8.OCIDBAccess.logon(OCIDBAccess.java:228)
    at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:249)
    at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:365)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:260)
    at /fxqs/admin/index.jsp._jspService(/fxqs/admin/index.jsp.java:222) (JSP page line 185)
    at com.orionserver[Orion/1.5.2 (build 10460)].http.OrionHttpJspPage.service(Unknown Source)
    at com.evermind[Orion/1.5.2 (build 10460)]._ah._rad(Unknown Source)
    at com.evermind[Orion/1.5.2 (build 10460)].server.http.JSPServlet.service(Unknown Source)
    at com.evermind[Orion/1.5.2 (build 10460)]._cxb._abe(Unknown Source)
    at com.evermind[Orion/1.5.2 (build 10460)]._cxb._uec(Unknown Source)
    at com.evermind[Orion/1.5.2 (build 10460)]._io._twc(Unknown Source)
    at com.evermind[Orion/1.5.2 (build 10460)]._io._gc(Unknown Source)
    at com.evermind[Orion/1.5.2 (build 10460)]._if.run(Unknown Source)
    have you any solutions?

    You are having some problems with that Oracle Driver and Orion.
    Do you have any JSP at your Installation that work with Oracle?
    Orion needs to know where that Diver is located is that Driver in
    some package that is in Orion's Class Path?

  • Unable to load native library on HP-UX

    Hi All,
    I am using a third party java library on 64 bit HP-UX, which in turn uses some native libraries. However, when I use that 3rd party java lib in my java app, I always get an UnsatisfiedLinkError, indicating that it cannot locate the native library.
    The name of this native library is "libjcryptoki.sl". The 3rd party lib correctly calls System.loadLibrary("jcryptoki") internally, and libjcryptoki.sl file name is present in SHLIB_PATH, LD_LIBRARY_PATH.
    Also, according to HP-UX JNI documentation, all JNI shared libs MUST begin with "lib" and should be of type "sl", which is satisfied here in this case.
    Anybody has any idea as to what could be missing?

    AUTOMATON wrote:
    Anybody has any idea as to what could be missing?Presumably you get the error from the loadLibrary() call and not after it. If not then the following is pointless...
    No idea why but you can try System.load() instead providing a full and explicit path and file name.
    Now if that works it means that the name is wrong somehow with loadLibrary() (maybe a VM problem, maybe a library name problem.)
    If it doesn't work then that would suggest that something is wrong with the library itself. Could be a large number of things.

  • Loading a 32-bit native library on a 64-bit JVM environment

    Hello
    I have a 3rd party 32-bit native library (abc.so). I am creating a JVM from my 64-bit C code (myC.c). Within this JVM i try to load the 32-bit abc.so
    I get the following run-time error
    Exception in thread "main" java.lang.UnsatisfiedLinkError: abc.so: ld.so.1: myC: fatal: abc.so: wrong ELF class: ELFCLASS32
    at java.lang.ClassLoader$NativeLibrary.load(Native Method)
    at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1480)
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1404)
    at java.lang.Runtime.loadLibrary0(Runtime.java:772)
    at java.lang.System.loadLibrary(System.java:832)
    When I try to load the same abc.so using a wrapper Java code(instead of myC.c) by running it with java -d32, it works ok.
    Do we have any option that we can set while creating a JVM from C, with which we can allow it to load 32-bit native libraries?
    Moreover do we have a list of all the options that can be set in the JavaVMInitArgs?
    I am using Java 1.4, as 1.3 doesn't support 64-bit JVM.
    regards
    Rahul

    Hi,
    I was also having a problem under 64 bit, Now I am certain that if ur Java code makes a call to the DLL, make sure that DLL is compiled under 64 bit compiler and not 32 bit compiler. This is the mistake I made and the JVM was throwing unsatisfied link error. Now this DLL (compiled under 64 bit) could call a 32 bit dll, I dont think that should be a problem.
    Hope it helps.
    Subu

  • Executing native library under Java - shell script problem

    I am running a Java application on the command line bash shell. I have a few JAR files in the directory and a few native libraries. When I run the application using the command line, all works fine. This is the command I use:
    java -classpath MyGame.jar:log4j-1.2.16.jar:jme/jme-colladabinding.jar:jme-audio.jar:jme-awt.jar:jme-collada.jar:jme-editors.jar:jme-effects.jar:jme-font.jar:jme-gamestates.jar:jme-model.jar:jme-ogrexml.jar:jme-scene.jar:jme-swt.jar:jme-terrain.jar:jme.jar:jogl/gluegen-rt.jar:jogl/jogl.jar:jorbis/jorbis-0.0.17.jar:junit/junit-4.1.jar:lwjgl/jinput.jar:lwjgl/lwjgl.jar:lwjgl/lwjgl_util.jar:lwjgl/lwjgl_util_applet.jar:swt/windows/swt.jar:jbullet/jbullet-jme.jar:jbullet/asm-all-3.1.jar:jbullet/jbullet.jar:jbullet/stack-alloc.jar:jbullet/vecmath.jar:trove-2.1.0.jar:sceneMonitor/jmejtree_jme2.jar:sceneMonitor/propertytable.jar:sceneMonitor/scenemonitor_jme2.jar:sceneMonitor/sm_properties_jme2.jar -Djava.library.path="lwjgl/native/linux" -Xmx1024m -Xms768m -ea com.mygame.MainThis works fine and the application starts up as expected. LWJGL native library is loaded in and works fine as expected.
    The problem occurs when I try to run this command via the shell using a shell script. Here is my script:
    #!/bin/bash
    # Set the minimum and maximum heap sizes
    MINIMUM_HEAP_SIZE=768m
    MAXIMUM_HEAP_SIZE=1024m
    if [ "$MYAPP_JAVA_HOME" = "" ] ; then
        MYAPP_JAVA_HOME=$JAVA_HOME
    fi
    _JAVA_EXEC="java"
    if [ "$MYAPP_JAVA_HOME" != "" ] ; then
        _TMP="$MYAPP_JAVA_HOME/bin/java"
        if [ -f "$_TMP" ] ; then
            if [ -x "$_TMP" ] ; then
                _JAVA_EXEC="$_TMP"
            else
                echo "Warning: $_TMP is not executable"
            fi
        else
            echo "Warning: $_TMP does not exist"
        fi
    fi
    if ! which "$_JAVA_EXEC" >/dev/null ; then
        echo "Error: No Java environment found"
        exit 1
    fi
    _MYAPP_CLASSPATH="MyGame.jar:log4j-1.2.16.jar:jme/jme-colladabinding.jar:jme-audio.jar:jme-awt.jar:jme-collada.jar:jme-editors.jar:jme-effects.jar:jme-font.jar:jme-gamestates.jar:jme-model.jar:jme-ogrexml.jar:jme-scene.jar:jme-swt.jar:jme-terrain.jar:jme.jar:jogl/gluegen-rt.jar:jogl/jogl.jar:jorbis/jorbis-0.0.17.jar:junit/junit-4.1.jar:lwjgl/jinput.jar:lwjgl/lwjgl.jar:lwjgl/lwjgl_util.jar:lwjgl/lwjgl_util_applet.jar:swt/windows/swt.jar:jbullet/jbullet-jme.jar:jbullet/asm-all-3.1.jar:jbullet/jbullet.jar:jbullet/stack-alloc.jar:jbullet/vecmath.jar:trove-2.1.0.jar:sceneMonitor/jmejtree_jme2.jar:sceneMonitor/propertytable.jar:sceneMonitor/scenemonitor_jme2.jar:sceneMonitor/sm_properties_jme2.jar"
    _VM_PROPERTIES="-Djava.library.path=\'lwjgl/native/linux\'"
    _MYAPP_MAIN_CLASS="com.mygame.Main"
    $_JAVA_EXEC -classpath $_MYAPP_CLASSPATH $_VM_PROPERTIES -Xmx${MAXIMUM_HEAP_SIZE} -Xms${MINIMUM_HEAP_SIZE} -ea $_MYAPP_MAIN_CLASSThe shell script is in the same directory as the JAR files (the same directory where I ran the Java command above). When I execute the shell script ( sh MyGame.sh ), I get the UnsatisfiedLinkError message:
        14-Feb-2011 19:46:28 com.wcg.game.DefaultUncaughtExceptionHandler uncaughtException
        SEVERE: Main game loop broken by uncaught exception
        java.lang.UnsatisfiedLinkError: no lwjgl in java.library.path
           at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1734)
           at java.lang.Runtime.loadLibrary0(Runtime.java:823)
           at java.lang.System.loadLibrary(System.java:1028)
           at org.lwjgl.Sys$1.run(Sys.java:73)
           at java.security.AccessController.doPrivileged(Native Method)
           at org.lwjgl.Sys.doLoadLibrary(Sys.java:66)
           at org.lwjgl.Sys.loadLibrary(Sys.java:82)
           at org.lwjgl.Sys.<clinit>(Sys.java:99)
           at org.lwjgl.opengl.Display.<clinit>(Display.java:130)
           at com.jme.system.lwjgl.LWJGLDisplaySystem.setTitle(LWJGLDisplaySystem.java:118)
           at com.wcg.game.WcgStandardGame.initSystem(WcgStandardGame.java:287)
           at com.wcg.game.WcgStandardGame.run(WcgStandardGame.java:185)
           at java.lang.Thread.run(Thread.java:662)I don't understand what I am doing wrong. I am executing the exact same command via a shell script and it is not working. Any ideas, solutions, most welcome.
    I am running Linux Mint Debian 201012, Linux mint 2.6.32-5-amd64 #1 SMP Thu Nov 25 18:02:11 UTC 2010 x86_64 GNU/Linux. JDK is 1.6.0_22 64-bit. I have 64-bit .so files in the correct place too.
    Thanks
    Riz

    Thanks for the replies guys/gals.
    I have modified the script and echoed my command that should be running under the shell script, it is:
    java -classpath WcgFramework.jar:WcgPocSwordplay.jar:log4j-1.2.16.jar:jme/jme-colladabinding.jar:jme-audio.jar:jme-awt.jar:jme-collada.jar:jme-editors.jar:jme-effects.jar:jme-font.jar:jme-gamestates.jar:jme-model.jar:jme-ogrexml.jar:jme-scene.jar:jme-swt.jar:jme-terrain.jar:jme.jar:jogl/gluegen-rt.jar:jogl/jogl.jar:jorbis/jorbis-0.0.17.jar:junit/junit-4.1.jar:lwjgl/jinput.jar:lwjgl/lwjgl.jar:lwjgl/lwjgl_util.jar:lwjgl/lwjgl_util_applet.jar:swt/windows/swt.jar:jbullet/jbullet-jme.jar:jbullet/asm-all-3.1.jar:jbullet/jbullet.jar:jbullet/stack-alloc.jar:jbullet/vecmath.jar:trove-2.1.0.jar:sceneMonitor/jmejtree_jme2.jar:sceneMonitor/propertytable.jar:sceneMonitor/scenemonitor_jme2.jar:sceneMonitor/sm_properties_jme2.jar -Djava.library.path="lwjgl/native/linux" -Xmx1024m -Xms768m -ea com.mygame.MainI am more confident that now the shell script should be fine (I am a shell script noob) because this very command if I copy from terminal and paste into the terminal, runs the application no problem at all. But I am amazed that it is still not working. I must be doing something obviously wrong. :-(
    I used the code as suggested:
    _VM_PROPERTIES='-Djava.library.path="lwjgl/native/linux"'I am stumped!? :-(
    Thanks for help.

  • Unsatisfied LinkError exception loading native library : njni10

    I am trying to create the oracle listener by running ./netmgr when I recieve the following error message:
    Unsatisfied LinkError exception loading native library : njni10
    Exception in thread "main" java.lang.UnsatisfiedLinkError: jniGetOracleHome
    at oracle.net.common.NetGetEnv.jniGetOracleHome(Native Method)
    at oracle.net.common.NetGetEnv.getOracleHome(Unknown Source)
    at oracle.net.mgr.container.NetUtils.getImageDirectory(Unknown Source)
    at oracle.net.mgr.container.NetApplication.init(Unknown Source)
    at.oracle.sysman.emSDK.client.appContainer.WebApplication.launch(WebApplication.java:3346)
    at.oracle.sysman.emSDK.client.appContainer.WebApplication.main(WebApplication.java:3327)
    We are using Redhat v4 and Oracle 10g
    Any help would be greatly appreciated.
    MAny Thanks

    Hi,
    I am trying to create the oracle listener by running ./netmgr when I recieve the following error message:Do you start netmgr as oracle user and after setting all the relevant environment variables?
    Can you find libnjni10.so file?
    Please see if (Note: 301621.1 - Problem: Running EMCA Fails With 'java.lang.UnsatisfiedLinkError' on AIX When $LIBPATH Is Set Incorrectly) helps.
    Regards,
    Hussein

  • Libsapjco3.so - native library already loaded in another classloader

    During the work with sap-connector i get the messages "/usr/lib64/libsapjco3.so - native library already loaded in another classloader"".
    How can I solve it? Because after that I must restart Weblogic to make sap-connector work correctly again.

    you need to set the env varibale LD_LIBRARY_PATH, try to find out where you can set it in weblogic server .
    Thanks
    Suren

Maybe you are looking for