ok, now i m sure where is the problem,  It happens when this line happens
// Call the static initializer for Xerces.
/*        
    XMLPlatformUtils::Initialize();

and launch this exception:

Exception UnsatisfiedLinkError al inicializar el servlet Controlador:
/home/alonso/curro/XalanC_Engine/dist/Debug/GNU-Linux-x86/LibXalanC_Engine.so:
/home/alonso/curro/XalanC_Engine/dist/Debug/GNU-Linux-x86/LibXalanC_Engine.so:
undefined symbol: _ZN11xercesc_2_76XMLUni22fgXercescDefaultLocaleE

its the firts exception that its launched!

im using xerces-c++ 2.7.0 and xalan-c 1.10 on ubuntu 2.6.20 with jdk 1.6.04

pls help!!





logancillo wrote:
> 
> hi everybody,
> 
> can anybody explain me what is the significant of this error?:
> 
> Exception UnsatisfiedLinkError al inicializar el servlet Controlador:
> /home/alonso/curro/XalanC_Engine/dist/Debug/GNU-Linux-x86/libXalanC_Engine.so:
> /home/alonso/curro/XalanC_Engine/dist/Debug/GNU-Linux-x86/libXalanC_Engine.so:
>  
> undefined symbol: _ZN11xalanc_1_1014XalanDOMString7s_emptyE
> 
> it happens when i try to load the .so and google doesnt know anything.
> 
> the java class with native method:
> 
> package es.yell.frontlite.mvc.View;
> 
> //import java.io.ByteArrayOutputStream;
> 
> /**
>  *
>  * @author alonso
>  */
> public class RenderizarVistaXalanC {
>     
>     
>     //public native ByteArrayOutputStream renderView(String xml,
> javax.xml.transform.Transformer transletXSL); 
>     public native void renderView(String xml, String xsl);
> }
> 
> the header file generated via javah
> 
> /* DO NOT EDIT THIS FILE - it is machine generated */
> #include <jni.h>
> /* Header for class es_yell_frontlite_mvc_View_RenderizarVistaXalanC */
> 
> #ifndef _Included_es_yell_frontlite_mvc_View_RenderizarVistaXalanC
> #define _Included_es_yell_frontlite_mvc_View_RenderizarVistaXalanC
> #ifdef __cplusplus
> extern "C" {
> #endif
> /*
>  * Class:     es_yell_frontlite_mvc_View_RenderizarVistaXalanC
>  * Method:    renderView
>  * Signature: (Ljava/lang/String;Ljava/lang/String;)V
>  */
> JNIEXPORT void JNICALL
> Java_es_yell_frontlite_mvc_View_RenderizarVistaXalanC_renderView
>   (JNIEnv *env, jobject obj, jstring xml, jstring xsl);
> 
> #ifdef __cplusplus
> }
> #endif
> #endif
> 
> the implementation c file:
> 
> #include "../../es_yell_frontlite_mvc_View_RenderizarVistaXalanC.h"
> #include <xalanc/Include/PlatformDefinitions.hpp>
> #if defined(XALAN_CLASSIC_IOSTREAMS)
> #include <iostream.h>
> #include <strstream.h>
> #include <fstream.h>
> #else
> #include <iostream>
> #include <strstream>
> #include <fstream>
> #endif
> #include <xercesc/util/PlatformUtils.hpp>
> #include <xalanc/XalanTransformer/XalanTransformer.hpp>
> 
> 
> JNIEXPORT void JNICALL
> Java_es_yell_frontlite_mvc_View_RenderizarVistaXalanC_renderView
>   (JNIEnv *env, jobject obj, jstring xml, jstring xsl) {
>     
>     jboolean blnIsCopy;
> 
>     XALAN_USING_STD(cerr)
>     XALAN_USING_STD(cout)
>     XALAN_USING_STD(endl)
>     XALAN_USING_STD(istrstream)
>     XALAN_USING_STD(ofstream)
>     XALAN_USING_STD(ostrstream)
>             
>     #if defined(XALAN_STRICT_ANSI_HEADERS)
>       using std::strlen;
>     #endif
>     
>     XALAN_USING_XERCES(XMLPlatformUtils)
> 
>     XALAN_USING_XALAN(XalanTransformer)
> 
>     // Call the static initializer for Xerces.
>     XMLPlatformUtils::Initialize();
> 
>     // Initialize Xalan.
>     XalanTransformer::initialize();
>     
>     // Create a XalanTransformer.
>     XalanTransformer theXalanTransformer;
>     
>     const char* const  theInputXmlDocument
> =env->GetStringUTFChars(xml,&blnIsCopy);
>     
>     printf("xml: %s\n",theInputXmlDocument);
>     
>     const char* const theInputXslDocument =
> env->GetStringUTFChars(xsl,&blnIsCopy);
>     
>     printf("xml: %s\n",theInputXslDocument);
>     
>     // Our input streams...
>     istrstream        theXMLStream(theInputXmlDocument,
> strlen(theInputXmlDocument));
>     istrstream        theXSLStream(theInputXslDocument,
> strlen(theInputXslDocument));
> 
>     XALAN_USING_XALAN(XalanDOMString)
>     XALAN_USING_XALAN(XSLTInputSource)
> 
>     XSLTInputSource           inputSource(&theXSLStream);
> 
>     inputSource.setSystemId(XalanDOMString("foo").c_str());
> 
>                               // Do the transform.
>     int theResult = theXalanTransformer.transform(&theXMLStream,
> inputSource, cout);
>     
>     if(theResult != 0)
>     {
>         cerr << "StreamTransform Error: \n" <<
> theXalanTransformer.getLastError()
>       << endl
>       << endl;
>     }
>     
>     // Terminate Xalan...
>     XalanTransformer::terminate();
> 
>     // Terminate Xerces...
>     XMLPlatformUtils::Terminate();
> 
>     // Clean up the ICU, if it's integrated...
>     XalanTransformer::ICUCleanUp();
> }
> 
> i already tried to load the .so setting LD_LIBRARY_PATH like this:
> 
> [EMAIL PROTECTED]:~$ export
> LD_LIBRARY_PATH=/home/alonso/curro/XalanC_Engine/dist/Debug/GNU-Linux-x86/
> [EMAIL PROTECTED]:~$ echo $LD_LIBRARY_PATH
> /home/alonso/curro/XalanC_Engine/dist/Debug/GNU-Linux-x86/
> 
> where /home/alonso/curro/XalanC_Engine/dist/Debug/GNU-Linux-x86/ is a
> directory which contains the .so
> 
> [EMAIL PROTECTED]:~$ cd $LD_LIBRARY_PATH
> [EMAIL PROTECTED]:~/curro/XalanC_Engine/dist/Debug/GNU-Linux-x86$ ls
> libXalanC_Engine.so
> 
> this is how i try to load the .so file giving me UnsatisfiedLinkError
> System.load("/home/alonso/curro/XalanC_Engine/dist/Debug/GNU-Linux-x86/libXalanC_Engine.so");
> 
> if i try to load the .so like this:
> Exception UnsatisfiedLinkError al inicializar el servlet Controlador:
> Expecting an absolute path of the library: libXalanC_Engine
> this is the output when i did System.out.println("java.library.path:" +
> System.getProperty("java.library.path"));
>  
> java.library.path:/usr/java/jdk1.6.0_04/jre/lib/i386/client:/usr/java/jdk1.6.0_04/jre/lib/i386:/usr/java/jdk1.6.0_04/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib
> 
> 
> i think this is the problem but i m not sure, pls help me!
> 
> 
> Alonso
> 

-- 
View this message in context: 
http://www.nabble.com/problems-loading-library-tp15203564p15206571.html
Sent from the Xalan - C - Users mailing list archive at Nabble.com.

Reply via email to