Hirdetés

Új hozzászólás Aktív témák

  • robisz
    senior tag

    Szia Robi


    A hibauzenetbol arra kovetkeztetek, hogy valamiert tobbszor is
    betoltodik az osztaly amiben betoltod a dll-t.
    Tomcat-et hasznalsz? Nezd at figyelmesen, milyen jar-okat tettel be,
    egyik osztalyod se legyen benn ket peldanyban.


    Leellenôríztem: minden osztály csak egy példányban van benn.
    Amit észrevettem a második getInstance függvény híváskor hal ki.
    Ez egy static függvénye a mynativefuncs.dll wrapper osztálynak.
    static Imynativefuncswrapper mynativefuncswrapper::getInstance()
    És valamiért nem látja az elôbb betöltött osztályt. Ezért betolja megint, s persze meghívja a dll betöltést:
    static {
    System.loadLibrary(''mynativefuncs'');
    }
    és a dll-t már látja hogy be van töltve :(((

    Hááát... nagyon úgy tünik, hogy két különböző ClassLoader
    is betölti az osztályodat. Ez pedig akkor szokott előfordulni,
    ha a Tomcat valamiért két példányban látja... pl. ha benn van
    a tomcat lib könyvtárában és a war fájlban is.

    Próbálj meg valami hasonló kiíratást a static blokkodban:

    static {
    System.out.println(Osztalynev.class.getClassLoader());
    System.loadLibrary(''mynativefuncs'');
    }


    Nezd meg mit ir ki az elso es a masodik betolteskor, ebbol talan
    lehet kovetkeztetni valamire. :F

Új hozzászólás Aktív témák