Il mio programma JSP è impostato per l'esecuzione su Websphere in HP-UX.Caricamento di file * .so in Websphere
Ho alcuni file .jar e un file .so che contiene le classi che il mio programma deve eseguire.
Inserendo i miei file .jar nella cartella \MyProgram\WEB-INF\lib\
, sono riuscito a far funzionare alcuni.
Tuttavia, vedo un UnsatisfiedLinkError
che è causato dal mio file lib.so non riconosciuto.
Uno dei modi che ho trovato era:
In console di gestione, vai a Ambiente -> Shared Biblioteche -> Nuovo
Inserire i percorsi dei file .jar in Classpath, inserire il. quindi la posizione file in Native Biblioteca percorso
In console di gestione, andate su Applicazioni -> Tipi di applicazione -> Applicazioni Enterprise
In MyProgram -> Riferimenti libreria condivisa -> Mappatura libreria condivisa, assegnare la libreria al programma spostandolo da Disponibile a Selezionato.
Ho due domande:
Posso solo ottenere i file .jar e il file .so di lavorare dalla cartella del mio programma
\lib\
invece?Se non riesco, è possibile elencare il percorso di classe e il percorso della libreria nativa dalla cartella dell'applicazione? Qualcosa come caricare la mia application.war con una directory variabile websphere
%MYPROGRAM%\WEB-INF\lib\lib.so
invece di posizionare il file nel server fisico con un percorso assolutoC:\IBM\WebSphere\AppServer\bin\lib.so
?
[EDIT-01] Ulteriori dettagli di seguito:
Error received: "Error 500: java.lang.UnsatisfiedLinkError: com.chrysalisits.crypto.LunaAPI.Initialize()V"
io sto cercando di ottenere Websphere di interfacciarsi con Lunasa HSM per recuperare le chiavi pubbliche/private. Mi hanno fornito: libLunaAPI.sl, libLunaAPI.so, LunaJCASP.jar, LunaJCESP.jar. Da Websphere V8 di IBM -> Riferimenti -> Eccezioni di caricamento classi, indica che ho bisogno del file * .so per HP-UX, così ho fatto quello accordingly. I path set sono percorsi assoluti che ho specificato nella Websphere. Questo riguarda la mia seconda domanda.
La prima domanda è in realtà mi chiedo se posso mettere questi file in myProgram.war e scappare da lì invece di utilizzare WinSCP per accedere al server e caricamento dei file lì per percorsi assoluti riferimenti. Forse specificare che i file sopra menzionati si trovano nel mio programma, in \ WEB-INF \ lib \ invece. Questo perché solo questo mio programma accederà al LunaSA HSM.
** PS. Ho provato entrambi i metodi ma non riesce ancora. sospiro.
Dalla documentazione di WebSphere (almeno fino alla versione 7, non ho guardato oltre), sembra che le Librerie native possano essere caricate solo dal PATH di sistema o da una Libreria condivisa. Ovvero, non dal percorso distribuito di un'applicazione Web individuale. Non credo di aver capito la tua domanda 2. – dbreaux
Ciao dbreaux, sto cercando di ottenere Websphere per recuperare le chiavi da un HSM LunaSA. Sfortunatamente, un UnsatisfiedLinkError continua a dirmi che c'è qualcosa di sbagliato: "Causato da: java.lang.UnsatisfiedLinkError: com.chrysalisits.crypto.LunaAPI.Initialize() V su com.chrysalisits.crypto.LunaAPI.Initialize (Metodo nativo) su com .chrysalisits.crypto.LunaTokenManager. (LunaTokenManager.java:107) su com.chrysalisits.crypto.LunaTokenManager.getInstance (LunaTokenManager.java:62) su com.chrysalisits.cryptox.LunaJCEProvider. (LunaJCEProvider.java:149) a ... " –
Ho effettivamente provato a inserire i file .war e .so nella directory Websphere e collegarli prima di assegnare la libreria al mio programma. L'errore si verifica ancora, non troppo sicuro se è il modo corretto di collegare la libreria al programma. –