Import shared library(dll)

Salut.
I want to import the GetVolumeInformationW function from the Windows kernel32.dll.
Microsoft says:
Requirements
Client
Requires Windows Vista, Windows XP, Windows 2000 Professional, Windows NT Workstation, Windows Me, Windows 98, or Windows 95.
Server
Requires Windows Server "Longhorn", Windows Server 2003, Windows 2000 Server, or Windows NT Server.
Header
Declared in Winbase.h; include Windows.h.
Library
Use Kernel32.lib.
DLL
Requires Kernel32.dll.
Unicode
Implemented as GetVolumeInformationW (Unicode) and GetVolumeInformationA (ANSI). Note that Unicode support on Windows Me/98/95 requires Microsoft Layer for Unicode.
1- I start the wizard, select "Create VIs for a shared library" then click next
2- Then select C:\WINDOWS\system32\kernel32.dll for the shared library.
3- Then select C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include\WinBase.h for the header file
4- Click next
5- Add C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include to the include path (for Windows.h)
6- Click next...wait
7- Then NI says :
The shared library contains 949 function(s), among which the declarations of 0 function(s) are found in the header file and these function(s) will be imported. The remaining 949 function(s) listed below cannot be imported.
How can i make it work? Is it possible?

Hello,
I just downloaded the SDK and attempted the same operations you
described, with identical results.  I suspect that the problem is
that the WinBase.h header depends on predefined symbols that are not
present by default in our implementation of the DLL importer.  I
haven't spent enough time examining the code to tell you precisely what
these symbols would need to be, but that is where I would focus my
efforts.  According to Microsoft, you may want to try defining
NTDDI_VERSION, as per this document.
Cheers,
Matt Pollock
National Instruments

Similar Messages

  • Cannot go to Select Functions to Convert windows for Import Shared library dll

    Hi, 
    As you can see the steps below, i cannot go throgh the Select Function to Convert windows after i click next on Configure Include path steps.
    any idea why is this happening?
    i am using Labview 8.5 and WinXP OS.

    It would help if you provided the DLL and the header file.
    Also, I think the third screenshot was intended to be something else, since it's the step where you specify any additional header files to reference, and not the step where you select what functions to import.

  • Import shared library, edit vi's, arrange menu

    I'm creating a labview interface to a large dll, so I use the Tools->Import->Shared library, and it works GREAT! I have a user library I can call from the palette. So I keep adding to the dll, and now have over 100 function calls. I would like to keep the dll's in a single library, but I am constantly updating them as our drivers change (still under development). So each time I create the library, i need to edit all the connectors, and the palette is getting unwieldy. I've googled and looked through NI-DZ and Lava with no help, so I expect I just need to do a lot of manual cleanup after the import function. But, if i missed something:
    Is there a way to control the Import Shared Library wizard? (command file-like?)
     - define what are inputs and what are outputs? define the terminal patterns and connections?
    How can I modify the palette menu created by the process (sub-menu's, rename items, sort items?)
     - the "Tools->Advanced->Edit Palette Set" seems really akward.
    Any pointers to tutorials or white papers on creating libraries from a large dll?
    Thank You!

    Hi brimcd,
    Concerning editing the connections of the VI generated, when importing the updated DLL and header file, I would imagine that the unchanged bits of the header file would create connections in the same way you had created them for previous versions. As for editing the palettes, you can also access the editor by pinning the specific palette to the block diagram, and then selecting Customize. 
    It seems like you've got a great handle on the process, but in case you want a reference, here's a very complete tutorial on creating wrapper VIs for DLLs using the Wizard. I hope this helps!
    David S.

  • How to build a shared library (dll) of a VI to be called by VC++

    hi All,
    How should I build a shared library ( dll ) using LabVIEW so that the desired output from LabVIEW can be returned to the main program that runs in VC++ ?
    I'm currently working in a project that uses the PXI 1042 & DMM, AWG, FGEN, SCOPE, RFSG, RFSA etc.
    The VC++ programmers dont want the LabVIEW front-end to be visible when called into VC++, in the sense they don't want LV to be another front-end, as the entire software is designed using VC++. It is enough if I simply pass the final values of measurement to them for display purpose.
    So, they've asked me if it is possible in LabVIEW to provide the VIs as dlls instead of exes.
    Since I've seen the feasibility of building a EXE or a DLL in LV, I've replied positively to them.
    In another of my project, I'm using dlls built in VC++ for hardware drive interaction parts in my LabVIEW project.
    Likewise, what are the methodologies that I should follow when building a Dll in LV ?
    I tried with a simple VI, wherein it returns a value of addtion of 2 elements & I passed it thro' the connector pane correctly.
    When I called the same dll in LV itself & configured it correctly by specifying the correct return type & I/O, then also it did not run properly.
    I could not understand what was going.
    So experts pls help me out by some simple examples or related links.
    Regards & Thanks,
    Partha.
    - Partha
    LabVIEW - Wires that catch bugs!

    Here you can find Application Notes and examples:
    http://zone.ni.com/devzone/devzone.nsf/webcategories/98D192CDCCDA21EE86256AB7006BECAF
    Hope this helps!

  • Cannot Import Shared Library

    I get the following errors for various functions.
    1.
    PREF0 PREF1 PICO_STATUS PREF2 PREF3 (ps5000aFlashLed)
    int16_t handle,
    int16_t start
    The following symbols are not defined:
    PICO_STATUS; int16_t;
    Undefined symbols can prevent the wizard from recognizing functions and parameters. To correct this problem, check the header file to determine if you must add preprocessor definitions. Click the Back button to return to the previous page of the wizard to add a preprocessor definitionsl (for example, "NIAPI_stdcall = __stdcall" or "NIAPIDefined = 1").
    The following header file was not found in the specified header file or one of the referenced header files:
    - stdint.h
    To fix, click the Back button to go to the previous page and add the header file path to the Include Paths list.
    2.
    The function cannot be imported into LabVIEW. This might be caused by one of the following problems:
    The function is not declared in the header file but is exported in the library.
    Check the header file to make sure it contains declarations of the function.
    Undefined symbols can prevent the wizard from recognizing functions and parameters. To correct this problem, check the header file to determine if you must add preprocessor definitions. Click the Back button to return to the previous page of the wizard to add a preprocessor definitionsl (for example, "NIAPI_stdcall = __stdcall" or "NIAPIDefined = 1").
    DYNLINK;PREF0;PREF1;PREF2;PREF3;WIN32;_USRDLL;__cplusplus;
    The following header file was not found in the specified header file or one of the referenced header files:
    - stdint.h
    To fix, click the Back button to go to the previous page and add the header file path to the Include Paths list.
    The attachment has the dll and .h file from which I am trying to import functions. As well as a screenshot of the error.
     I would sincerely appreiciate any help.
     

    Hi Lanom,
    My name is George and I work as an Applications Engineer at National Instruments. I’ve been looking into your problem with importing a shared library into LabVIEW.
    For error 1 you are trying to include stdint.h in your header files but you either do not have this file or the wizard cannot find this file. I have included the path to where I found the file below, if you find and add this file to the folder that contains the other header files and add that folder as an included path in the shared library import wizard this error should be fixed.
    C:\Program Files (x86)\National Instruments\CVI2013\include\ansi\stdint.h
    Error 2 is being caused by functions being undefined. You have 2 functions, “ps5000ApplyFix()” and “ps5000aConvertStreamingDataInternal()”, that have not been defined in the same way as your other functions and so cannot be imported. If you define these 2 in the same way you have defined the others this should be fixed. You also appear to have a duplicate of all of your functions included in the .dll that are not defined. If these functions with "-2" are not intentional re-create the .dll file without these functions and this error should be fixed. If these functions are intentional then they will also need to be defined like the others.
    Let me know if this fixes your problem and if you have any more questions with these steps or you have any other problems let me know and I will do my best to help.
    Regards,
    George

  • How to configure Class Loading-Import Shared Library using admin_client

    i am deploying ear using below command through command prompt.its deployed successfully.
    java -jar ../admin_client.jar deployer:oc4j:localhost:23792 oc4jadmin oc4jadmin -deploy -file C:/ex.ear -deploymentName ex -bindAllWebApps
    i have one requirement if i deploy thorugh command prompt. while deploying ear through admin console in Deploy: Deployment Settings-Configure Class Loading-Import Shared Libraries-i checked JAXB then the ear will be deployed successafully.
    i need to incorporate same thing in above command also.i have created shared library and jars are placed in this path.
    C:\Oc4J\j2ee\node1\shared-lib\JAXB\2.0
    but while deploying ear using admin_client.jar command script i need to configure classs loading and import above shared library.how to modify the script?

    Ours is not a Desktop Application, but we want to handle Authentication(Which authenticates the userid and password by making a Tuxedo call) and add the Principal to Subject in session, so that ADF Authorization and securityContext can be used as is,
    but doing this with Custom Authentication Provider in weblogic needs me to have a lot of Tuxedo Service related jars in weblogic/system classpath which i feel is not right thing to do, as the same jars are required in application also, which means i will have the jars in class path twice and i need to deploy the jars to both places everytime there is any change.
    Is there any way by which i can set Authenticated principal to Subject in the created session from within Application?

  • Importing shared variable (DLL) with simple function

    So I'm attempting to use a DLL I was givven to do something simple.
    string input--> DLL --> three string output.
    The .h file defines the function like so:
    struct FunctionName {
    char str1[5];
    char str2[4];
    char str3[2];
    It sems that the wizard is having an issue creating the datatype defined as the struct (which consists of three strings of length (5, 4, and 2).  I've read that sometimes you can go thru the wizard again and create a ctl, but when I did this the function wrapper vi dissapeared form the library it creates...
    I'm by no means a C programmer, and dont really remember much of it from school at all.
    I'm looking into this here: https://decibel.ni.com/content/docs/DOC-9080  thinking the answer might lie somewhere in the "adapt to type" selection (but this only seems available on the functions input?
    Thanks for any advice/suggestions
    -pat

    You've only shown the definition of a structure, not of a function. Can you provide the prototype for the function that uses that structure? Does the function expect three separate strings as parameters, or a struct containing three character arrays?
    If the function expects a struct containing three character arrays, each of fixed length, and the parameter is passed by pointer (this would be normal), then yes, you want to configure the parameter as Adapt to Type. You should create a cluster containing three elements, each of which is itself a cluster. The first of those clusters should contain 5 U8 values, the second 4 U8 values, and the third 2 U8 values. That will match the structure in your example. To get those to strings in LabVIEW, use cluster to array, and then byte array to string. You need to pass the empty cluster into the DLL call; the DLL call fills in the cluster and provides the values on the corresponding output. If you're dealing with C strings you should also know whether they include a terminating null, or if they're simply fixed-size character arrays.
    For more help, please post the entire real header file, and any relevant LabVIEW code.

  • Deleting an Imported Shared Library

    I used the File/Import command to import songs from a folder on my hard drive. Now I cannot delete this. I have removed the files from my drive, but they still show up. I have deleted all references to them in my iTunes library as well, but they still show up. They will not play, however.
    How do I completely remove them from iTunes? Thanks!

    Photos transferred from your computer via the iTunes sync process - selected under the Photos tab for your iPad sync preferences with iTunes are removed from your iPad in the same way - via the iTunes sync process.

  • Why is there no "Tools»Build Application or Shared Library (DLL)" in my labview7.1?

    This is the picture of tools.
    Thank you!

    I can think of 2 options:
    1. You have abridged menus and the option just disappered. This doesn't seem to be the case because it looks like your menu is displayed entirely and if the menu was abridged you should have seen 2 arrows at the bottom of the menu.
    2. The more likely option is that you don't have the application builder installed. The AB only comes with the professional of LV. This is supported by the fact that your tools menu does not include any of the advanced functions.
    The AB can also be found in a seperate CD, so you can either search your CDs for it, buy it from NI or (if it's a small app) upload it and ask that someone build it for you.
    Try to take over the world!

  • Missing header files when importing a shared library with labview 8.6?

    Hi all,
    I want to import a .dll into my .vi program but I am not able to do it...
    I have created the dll  following the ni website tutorial
    http://zone.ni.com/devzone/cda/tut/p/id/3303#toc2
    Once the dll has been created, I have tried to import it with
    Tools-Import-Shared Library(dll)
    After parsing the header file appears an error like this one:
    void __cdecl Zdmt(LVBoolean *stop, double P, char channelName[],
        TD1 *errorIn, TD14 *FFTOptions, TD12 *Calibration, char FileName[],
        int32_t minRecordLength, TD26 *InstrumentHandler, LVRefNum sessionRefArray[],
        LVRefNum *queueIN, TD1 *errorOut, LVBoolean *averagingDone,
        HWAVES LastRecordFetched, TD24 *Impedance, TD17 *ColeColeCluster,
        TD18 *FFTcluster, TD5 *InstrumentHandleOutputCluster, LVRefNum *queueOut,
        int32_t *Acquired, TD6 *FreqTimeInfoCluster, double *averagesCompleted,
        int32_t len);
    The following symbols are not defined:
    LVBoolean; int32_t; LVRefNum;
    Undefined symbols can prevent the wizard from recognizing functions and parameters. To correct this problem, check the header file to determine if you must add predefined symbols. Click the Back button to return to the previous page of the wizard to add a preprocessor definitionsl (for example, "NIAPI_stdcall = __stdcall" or "NIAPIDefined = 1").
    The following header file was not found in the specified header file or one of the referenced header files:
    -  extcode.h
    To fix, click the Back button to go to the previous page and add the header file path to the Include Paths list.
    I have replaced the first line #include "extcode.h" of the dll header file for #include "C:\Program Files\National Instruments\LabVIEW 8.6\cintools\extcode.h" that is the full path where the header file is located. However, new libraries seems to be missed:
    -  stdint.h
    -  MacTypes.h
    Does anybody know what I have to do??
    Any help will be really appreciated,
    Regards,
    Benjamin

    If you use any of the LabVIEW cintools headers, they reference other headers too. The import wizard is written in a way that it simply skips parsing datatypes that can not be resolved due to missing header files.  If your functions you want to import references such datatypes then you get an according error about any include files the wizard could not load, otherwise not. The wizard can not know which of the missing header files is the problem since it obviously doesn't know what would be in those header files.
    The LabVIEW cintools headers are multiplatform, meaning they evaluate various compiler predefined defines to determine which platform they are included in. The import library wizard does not define any specific defines, since it is not really a compiler. So you have to define them. And they get adapted with each new LabVIEW version to support new compilers and compiler versions, so the defines described in the link in the first post do not have to be correct for cintools headers in newer LabVIEW versions.
    All in all writing DLLs that interface to LabVIEW cintools headers should not be done by writing them and then importing them using the wizard but instead you should write the VI and create the Call Library Node, then let LabVIEW create a template C file from the context menu of the Call Library Node and copy that into your C sources and fill in the functions from there.
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • Shared-library in OC4J - load data-sources.xml throws error

    H
    To share common libraries (framework.jar, JAXB jars, axis.jar, log4j, tibco*.jars)
    across application(app1/app2/app3) in the OC4J container.
    Currently all these jars are loaded with common jars separately application, a total 3 common
    footprints of these jars.
    1 - Placed all common jars under $J2EE_HOME/shared-lib folder, updated server.xml in $J2EE_HOME/config.
    2 - Connecting Tibco queues using generic JMS resource adapter (connectors - JCA).
    3 - Connecting to databases using data-sources.xml.
    4 - With following entries in orion-application.xml
    <imported-shared-libraries>
    <import-shared-library name="my.shared.libraries" max-version="1.0"/>
    </imported-shared-libraries> ---> Entry 1
    <connectors path="oc4j-connectors.xml"/> ---> Entry 2
    <data-sources path="data-sources.xml"/> ---> Entry 3
    Getting the following error while deploying the code.
    Error occurred initializing connectors. Exception is: Exception creating Manage
    d DataSource ConnectorPropertySet. Exception: Error setting up resource adapter
    for embedded resource archive inside application 'deployGood1'. ManagedConnecti
    onFactory implementation class 'oracle.oc4j.sql.spi.ManagedConnectionFactoryImpl
    ' cannot be set up: Error setting JavaBean property 'managedDataSourceConfigXML'
    for ManagedConnectionFactory class 'oracle.oc4j.sql.spi.ManagedConnectionFactor
    yImpl for embedded resource archive inside application 'deployGood1'. Exception
    is: java.lang.reflect.InvocationTargetException
    However orion-application.xml
    Option A
    Entry 1 (imported-shared-libraries)
    Entry 2 (connectors)
    Works perfectly fine - however the Service complains of not finding the datasource JNDI
    5 - If all jars are loaded separately with each application
    With following entries in orion-application.xml
    <library path="C:/soft/jar/framework.jar" />
    <library path="C:/soft/jar/log4j-1.2.14.jar" />
    <library path="C:/soft/jar/axis.jar"/>
    <library path="C:/soft/jar/commons-discovery-0.2.jar"/>
    <library path="C:/soft/jar/commons-logging-1.0.4.jar"/>
    <library path="C:/soft/jar/fscontext.jar"/>
    <library path="C:/soft/jar/gjra.jar"/>
    <library path="C:/soft/jar/jax-qname.jar"/>
    <library path="C:/soft/jar/jaxb-api.jar"/>
    <library path="C:/soft/jar/jaxb-impl.jar"/>
    <library path="C:/soft/jar/jaxb-libs.jar"/>
    <library path="C:/soft/jar/jaxb-xjc.jar"/>
    <library path="C:/soft/jar/jaxrpc.jar"/>
    <library path="C:/soft/jar/jmxri.jar"/>
    <library path="C:/soft/jar/jmxtools.jar"/>
    <library path="C:/soft/jar/namespace.jar"/>
    <library path="C:/soft/jar/providerutil.jar"/>
    <library path="C:/soft/jar/relaxngDatatype.jar"/>
    <library path="C:/soft/jar/saaj.jar"/>
    <library path="C:/soft/jar/tibcrypt.jar"/>
    <library path="C:/soft/jar/tibjms.jar"/>
    <library path="C:/soft/jar/tibjmsadmin.jar"/>
    <library path="C:/soft/jar/tibjmsapps.jar"/>
    <library path="C:/soft/jar/tibrvjms.jar"/>
    <library path="C:/soft/jar/wsdl4j-1.5.1.jar"/>
    <library path="C:/soft/jar/wss4j-1.5.2.jar"/>
    <library path="C:/soft/jar/xercesImpl.jar"/>
    <library path="C:/soft/jar/xmlsec-1.4.0.jar"/>
    <library path="C:/soft/jar/xsdlib.jar"/> -------> Entry 1
    <connectors path="oc4j-connectors.xml"/> ---> Entry 2
    <data-sources path="data-sources.xml"/> ---> Entry 3
    This configuration works perfectly fine as expected, but this configuration defeats the
    purpose of shared-library
    Thanks
    sunder

    H
    To share common libraries (framework.jar, JAXB jars, axis.jar, log4j, tibco*.jars)
    across application(app1/app2/app3) in the OC4J container.
    Currently all these jars are loaded with common jars separately application, a total 3 common
    footprints of these jars.
    1 - Placed all common jars under $J2EE_HOME/shared-lib folder, updated server.xml in $J2EE_HOME/config.
    2 - Connecting Tibco queues using generic JMS resource adapter (connectors - JCA).
    3 - Connecting to databases using data-sources.xml.
    4 - With following entries in orion-application.xml
    <imported-shared-libraries>
    <import-shared-library name="my.shared.libraries" max-version="1.0"/>
    </imported-shared-libraries> ---> Entry 1
    <connectors path="oc4j-connectors.xml"/> ---> Entry 2
    <data-sources path="data-sources.xml"/> ---> Entry 3
    Getting the following error while deploying the code.
    Error occurred initializing connectors. Exception is: Exception creating Manage
    d DataSource ConnectorPropertySet. Exception: Error setting up resource adapter
    for embedded resource archive inside application 'deployGood1'. ManagedConnecti
    onFactory implementation class 'oracle.oc4j.sql.spi.ManagedConnectionFactoryImpl
    ' cannot be set up: Error setting JavaBean property 'managedDataSourceConfigXML'
    for ManagedConnectionFactory class 'oracle.oc4j.sql.spi.ManagedConnectionFactor
    yImpl for embedded resource archive inside application 'deployGood1'. Exception
    is: java.lang.reflect.InvocationTargetException
    However orion-application.xml
    Option A
    Entry 1 (imported-shared-libraries)
    Entry 2 (connectors)
    Works perfectly fine - however the Service complains of not finding the datasource JNDI
    5 - If all jars are loaded separately with each application
    With following entries in orion-application.xml
    <library path="C:/soft/jar/framework.jar" />
    <library path="C:/soft/jar/log4j-1.2.14.jar" />
    <library path="C:/soft/jar/axis.jar"/>
    <library path="C:/soft/jar/commons-discovery-0.2.jar"/>
    <library path="C:/soft/jar/commons-logging-1.0.4.jar"/>
    <library path="C:/soft/jar/fscontext.jar"/>
    <library path="C:/soft/jar/gjra.jar"/>
    <library path="C:/soft/jar/jax-qname.jar"/>
    <library path="C:/soft/jar/jaxb-api.jar"/>
    <library path="C:/soft/jar/jaxb-impl.jar"/>
    <library path="C:/soft/jar/jaxb-libs.jar"/>
    <library path="C:/soft/jar/jaxb-xjc.jar"/>
    <library path="C:/soft/jar/jaxrpc.jar"/>
    <library path="C:/soft/jar/jmxri.jar"/>
    <library path="C:/soft/jar/jmxtools.jar"/>
    <library path="C:/soft/jar/namespace.jar"/>
    <library path="C:/soft/jar/providerutil.jar"/>
    <library path="C:/soft/jar/relaxngDatatype.jar"/>
    <library path="C:/soft/jar/saaj.jar"/>
    <library path="C:/soft/jar/tibcrypt.jar"/>
    <library path="C:/soft/jar/tibjms.jar"/>
    <library path="C:/soft/jar/tibjmsadmin.jar"/>
    <library path="C:/soft/jar/tibjmsapps.jar"/>
    <library path="C:/soft/jar/tibrvjms.jar"/>
    <library path="C:/soft/jar/wsdl4j-1.5.1.jar"/>
    <library path="C:/soft/jar/wss4j-1.5.2.jar"/>
    <library path="C:/soft/jar/xercesImpl.jar"/>
    <library path="C:/soft/jar/xmlsec-1.4.0.jar"/>
    <library path="C:/soft/jar/xsdlib.jar"/> -------> Entry 1
    <connectors path="oc4j-connectors.xml"/> ---> Entry 2
    <data-sources path="data-sources.xml"/> ---> Entry 3
    This configuration works perfectly fine as expected, but this configuration defeats the
    purpose of shared-library
    Thanks
    sunder

  • Shared library for  MyFaces Trinidad

    Hello!
    I'm having some trouble trying to create a shared library in OC4J 10.1.3.3.0. My goal is to deploy multiple applications that use MyFaces and Trinidad, but using a shared library that contains every JAR required.
    This is what I've done so far:
    1. I created the directory D:\workspace\oc4j_10.1.3\j2ee\home\shared-lib\sidi\1 and put there every JAR included in MyFaces Trinidad Demo.
    2. Edited server.xml and added the following lines:
    <shared-library name="sidi" version="1">
    <code-source path="*"/>
    </shared-library>
    3.- Edited the orion-application.xml in each application that needs MyFaces Trinidad support and added the following lines:
    <imported-shared-libraries>
    <import-shared-library name="sidi" />
    </imported-shared-libraries>
    When I try to run any application that uses MyFaces Trinidad, I get this error message:
    java.lang.IllegalStateException: No Factories configured for this Application. This happens if the faces-initialization does not work at all - make sure that you properly include all configuration settings necessary for a basic faces application and that all the necessary libs are included. Also check the logging output of your web application and your container for any exceptions!
    If you did that and find nothing, the mistake might be due to the fact that you use some special web-containers which do not support registering context-listeners via TLD files and a context listener is not setup in your web.xml.
    A typical config looks like this;
    <listener> <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
    </listener>
         at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:93)
         at javax.faces.webapp.FacesServlet.init(FacesServlet.java:91)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.HttpApplication.loadServlet(HttpApplication.java:2371)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.HttpApplication.findServlet(HttpApplication.java:4824)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.HttpApplication.findServlet(HttpApplication.java:4748)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.HttpApplication.getRequestDispatcher(HttpApplication.java:2971)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:741)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:221)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
         at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
         at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
         at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
         at java.lang.Thread.run(Thread.java:595)
    If I add that listener to web.xml, the error changes to this:
    9/08/2007 02:37:28 PM org.apache.myfaces.config.FacesConfigurator feedStandardConfig
    INFO: Reading standard config org/apache/myfaces/resource/standard-faces-config.xml
    9/08/2007 02:37:28 PM org.apache.myfaces.config.FacesConfigurator feedClassloaderConfigurations
    INFO: Reading config code-source:/D:/workspace/oc4j_10.1.3/j2ee/home/shared-lib/sidi/1/tomahawk-1.1.6.jar!/META-INF/faces-config.xml
    9/08/2007 02:37:29 PM org.apache.myfaces.config.FacesConfigurator feedClassloaderConfigurations
    INFO: Reading config code-source:/D:/workspace/oc4j_10.1.3/j2ee/home/shared-lib/sidi/1/trinidad-impl-1.0.1.jar!/META-INF/faces-config.xml
    9/08/2007 02:37:31 PM org.apache.myfaces.config.FacesConfigurator feedWebAppConfig
    INFO: Reading config /WEB-INF/faces-config.xml
    9/08/2007 02:37:31 PM org.apache.myfaces.config.FacesConfigurator logMetaInf
    INFO: MyFaces-package : myfaces-api not found.
    9/08/2007 02:37:31 PM org.apache.myfaces.config.FacesConfigurator logMetaInf
    INFO: MyFaces-package : myfaces-impl not found.
    9/08/2007 02:37:31 PM org.apache.myfaces.config.FacesConfigurator logMetaInf
    INFO: MyFaces-package : tomahawk-sandbox not found.
    9/08/2007 02:37:31 PM org.apache.myfaces.config.FacesConfigurator logMetaInf
    INFO: MyFaces-package : tomahawk not found.
    If I place the JARs inside each WEB-INF/lib the applications work, but I'm trying to avoid doing this to have smaller EARs when the applications are packaged for deployment in the production servers.
    What am I doing wrong? Hope you can help me with this.

    Hi Aram,
    The default behaviour of OC4J is to NOT run the listeners provided inside the taglibs. As for java server faces, tomahawk and trinidad use taglibs that rely on the listener configured in the tld file
    You'd need not only to deploy the "shared library", but also, drop the jars in the $OC4J/j2ee/home/taglibs directory
    And, make sure that in your "global-web-application.xml" you have:
    <orion-web-app
    [... whatever ...]
         jsp-cache-tlds="on"
         jsp-taglib-locations="../taglibs"
    >
    that means, the attribute "jsp-taligb-locations is defined for the orion-web-app tag. With that, the listener is going to be loaded, and you'd not need to configure it in the web.xml

  • Where are imported shared libraries defined

    in system-application.xml, the imported-shared-libraries are defined as :
    <imported-shared-libraries>
    <import-shared-library name="oracle.dms"/>
    <import-shared-library name="oracle.jdbc"/>
    and these are used in server.xml like:
    <import-shared-library name="oracle.jdbc"/>
    my questions is where does the imported libraries name and actual jar files defined. for ex. for the name oracle.jdbc, where are the jar libraries location defined?
    I got a problem looks like application server not able to find these jars unless I copy them to the applib folder.
    Thanks

    Additional shared libraries may be configured to override the default shared libaries, including the oracle.jdbc library.
    http://www.oracle.com/technology/tech/java/oc4j/1013/how_to/how-to-swapjdbclib/doc/readme.html

  • Linux Cannot Create Shared Library to call from Labview. Anyone have any ideas?

    Hi there.  A while back i created a shared library (.dll) to call in labview which works great.  Lately i have been using Linux more and more and was hoping to recompile the shared library for use in Linux Labview.  My first go I am getting the following error #error "Unknown Linux platform"   from the platdefines.h.   Evidently it does not like my system.  Using QT creator on linux mint 64 bit.   Anyone have any ideas on how i can get this working?
    thanks so much!

    I have a few version questions: What version of Windows was this DLL orignally created in? What version of LabVIEW are you using? What version of Linux are you using? 
    I think you will also find this previous discussion forum thread useful: http://forums.ni.com/t5/LabVIEW/Calling-DLL-on-LabVIEW-for-Linux/td-p/58322

  • NT DLL to Solaris Shared Library;  C++ Exceptions

    I have written a "plugin" DLL for a third party product that runs on NT. In my plugin I use C++ exception handling and it works wonderfully :-)
    I am now trying to port my plugin so that it will work with the same third party product, but this time running on Solaris.
    I knew I was going to have to port my DLL to Solaris and so made sure I did not use any Win32 specific anything. My code compiles & links fine on Solaris. For the most part it even works correctly.
    The problem I have is that my code is not catching any of the exceptions it is throwing.
    Section 5.14 of the C++ Programming Guide says that for exception handling to work in a shared library, it must be loaded with the RTLD_GLOBAL flag passed to the dlopen() function used to load the shared library.
    Of course since the dlopen() function is in a third party product I have no way of knowing whether this parameter is being passed to the dlopen() function or not .. and more importantly I have no way of forcing it to be so.
    So ultimately I guess the question for the more experienced shared library writers is .. do you just not use C++ exception mechanism because you can not force your shared library to be opened with the proper parameter to dlopen() .. or is there something else I can do to enable C++ exceptions in my shared library.

    All works fine!...
    $ mkdir /tmp/xxx
    $ cat > dllfile.c
    $ cat > dlluser.c
    $ gcc -fPIC -c dllfile.c
    $ gcc -shared -W1,-soname,libdllfile.so.1 -o libdllfile.so dllfile.o
    $ gcc -o prog dlluser.c -ldl
    $ ls -l
    total 56
    -rw-r--r-- 1 xxxxxx users 80 &#1040;&#1087;&#1088; 8 17:04 dllfile.c
    -rw-r--r-- 1 xxxxxx users 908 &#1040;&#1087;&#1088; 8 17:15 dllfile.o
    -rw-r--r-- 1 xxxxxx users 368 &#1040;&#1087;&#1088; 8 17:03 dlluser.c
    -rwxr-xr-x 1 xxxxxx users 5260 &#1040;&#1087;&#1088; 8 17:15 libdllfile.so
    -rwxr-xr-x 1 xxxxxx users 6412 &#1040;&#1087;&#1088; 8 17:16 prog
    $
    $ file *
    dllfile.c:     c program text
    dllfile.o:     ELF 32-bit MSB relocatable SPARC Version 1
    dlluser.c:     c program text
    libdllfile.so:     ELF 32-bit MSB dynamic lib SPARC Version 1, dynamically linked, not stripped
    prog:          ELF 32-bit MSB executable SPARC Version 1, dynamically linked, not stripped
    $
    $ su
    Password:
    # mkdir -p /root/shared_library/
    # cp libdllfile.so /root/shared_library/
    # exit
    $ ./prog
    With the changes
    library loaded
    Inside function
    $

Maybe you are looking for

  • Just updated to ios 5 and now my computer can not find iphone or ipad

    after I updated my iphone 4 and both of my ipad 2s to ios 5 and my computer no longer finds them. They used to show up as devices with removable storage, but now they dont show up anymore. does anyone have a fix for this? any help would be appreciate

  • Help---Can't install HP p1005

    hi everyone, i bought a hp laser p1005 today,but i got a problem when i installed the software. it said the software installed successfully,but i cannt launch the "hp LaserJet Firmware Download Utility.app", and cannt find the printer at all,what's t

  • My iMac, running Lion, freezes.

    I just got a brand new, 2011 21.5 inch iMac, installed Lion, and whenever I play a video, usually youtube, my iMac wil sometimes freeze. It froze on me four times already, and when it freezes, the only thing I can do is move the mouse cursor. I can't

  • Help! Light gray magnified apple logo then goes black and dies.

    Hi, Whenever I start up my macbook pro a lighter than usual gray screen pops up with a magnified apple logo and spinning wheel, it then proceeds to go to a black screen and stays there. I tried starting it up in single user mode and running fsck but

  • Xserve-RAID Password

    I recently bought and Xserve RAID on ebay. It has never been used except that the owner and started the process of naming and adding a password. He has since forgotten the password and I cannot get into set up the RAID. Is there any way to re format