Opened 5 years ago
Closed 4 years ago
#2237 closed enhancement (wontfix)
Petascope - cannot redeploy on tomcat with error gdal-java JNI
Reported by: | Bang Pham Huu | Owned by: | Bang Pham Huu |
---|---|---|---|
Priority: | major | Milestone: | 11.0 |
Component: | petascope | Version: | 9.8 |
Keywords: | Cc: | Dimitar Misev | |
Complexity: | Medium |
Description
Tomcat will need to restart when petascope is redeployed as it has this kind of error
Caused by: java.lang.UnsatisfiedLinkError: 'void org.gdal.gdal.gdalJNI.AllRegister()'
Some information may help:
https://cwiki.apache.org/confluence/display/tomcat/HowTo#HowTo-I'mencounteringclassloaderproblemswhenusingJNIunderTomcat (creating a dummy application to load GDAL JNI and it can be reused by petascope).
Change History (2)
comment:1 by , 4 years ago
comment:2 by , 4 years ago
Resolution: | → wontfix |
---|---|
Status: | assigned → closed |
Note:
See TracTickets
for help on using tickets.
The only possible solution is: it needs a jar in tomcat's lib folder to load gdal-java JNI for any web application which uses it. Otherwise, when deploying a new petascope, tomcat must be restarted (reason: "Tomcat, uses separate class loaders for each of the web application, and it wont allow you load a same native library more than once to JVM via another class loader").
+ Source: https://cwiki.apache.org/confluence/display/tomcat/HowTo#HowTo-I'mencounteringclassloaderproblemswhenusingJNIunderTomcat
+ https://stackoverflow.com/a/40047031