2016-09-14 70 views
0

我想在Linux机器上使用ePass 2003令牌签名XML。 在Windows机器上签名是成功的,但它在Linux机器中引发异常。通过ePass 2003令牌在Linux服务器上签名令牌

的异常如下:

Error: A JNI error has occurred, please check your installation and try again 
Exception in thread "main" java.lang.NoClassDefFoundError: org/bouncycastle/cms/CMSException 
    at java.lang.Class.getDeclaredMethods0(Native Method) 
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2701) 
    at java.lang.Class.privateGetMethodRecursive(Class.java:3048) 
    at java.lang.Class.getMethod0(Class.java:3018) 
    at java.lang.Class.getMethod(Class.java:1784) 
    at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:544) 
    at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526) 
Caused by: java.lang.ClassNotFoundException: org.bouncycastle.cms.CMSException 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357) 


Configuration of Linux machine is listed below 

Java : JDK 1.8 update 91 
Token : ePass 2003 


PKCS11_KEYSTORE_TYPE = "PKCS11"; 
DIGITAL_SIGNATURE_ALGORITHM_NAME ="SHA256withRSA"; 
SUN_PKCS11_PROVIDER_CLASS = "sun.security.pkcs11.SunPKCS11"; 
DLL_PATH = "/home/ePass2003-Linux-x64/redist/libcastle.so.1.0.0"; 

请帮助我。

回答

0

它在Window机器上运行良好,但抛出列表。 由于文件夹路径不正确而导致错误。 它不是一个度量问题。 请检查基本的Java代码流。 一些愚蠢的错误已经完成!