小编ali*_*sal的帖子

iaik pkcs#11 包装器和 java.lang.NoSuchMethodError

我试图从运行iaik PKCS#11包装简单的示例代码(1.3版,最新的ATM),但得到NoSuchMethodErrorpkcs11Module.initialize电话。

Module pkcs11Module = Module.getInstance("siecap11");
pkcs11Module.initialize(null); 
Slot[] slots = pkcs11Module.getSlotList(Module.SlotRequirement.TOKEN_PRESENT);
for (Slot s: slots) {
    System.out.println(s.getSlotID());
}
pkcs11Module.finalize(null);
Run Code Online (Sandbox Code Playgroud)

异常堆栈跟踪如下

java.lang.NoSuchMethodError:     iaik.pkcs.pkcs11.wrapper.PKCS11.C_Initialize(Ljava/lang/Object;Z)V
at iaik.pkcs.pkcs11.Module.initialize(Module.java:308)
at test.pkcs11.Pkcs11Service.listSlotsWithTokens(Pkcs11Service.java:98)
at test.pkcs11.TestPkcs11Service.testListSlots(TestPkcs11Service.java:35)
Run Code Online (Sandbox Code Playgroud)

类似的代码在 Linux 上运行良好,所以我猜 pkcs11wrapper.dll 有问题。

pkcs11wrapper.dll并且siecap11.dll都在c\windows\system32目录中并且都是 32 位模块。

我尝试了不同的 pkcs#11 提供程序、调试和发布版本的 pkcs11wrapper,但结果是一样的。

pkcs11wrapper.dll 的调试版本生成以下输出:

11/26/13 21:30:50   CALL: entering (in Java_iaik_pkcs_pkcs11_wrapper_PKCS11Implementation_initializeLibrary)
11/26/13 21:30:50   CALL: exiting  (in Java_iaik_pkcs_pkcs11_wrapper_PKCS11Implementation_initializeLibrary)
11/26/13 21:30:50   CALL: entering (in Java_iaik_pkcs_pkcs11_wrapper_PKCS11Implementation_connect)
11/26/13 21:30:50   INFO: connect to PKCS#11 module: siecap11 ...  (in Java_iaik_pkcs_pkcs11_wrapper_PKCS11Implementation_connect) …
Run Code Online (Sandbox Code Playgroud)

java nosuchmethoderror pkcs#11 iaik-jce

1
推荐指数
1
解决办法
5088
查看次数

标签 统计

iaik-jce ×1

java ×1

nosuchmethoderror ×1

pkcs#11 ×1