FULL PRODUCT VERSION :
A DESCRIPTION OF THE PROBLEM :
More information inJDK-8057671/JI-9014826. I cannot edit the previous issue so I added here code and more information.
I thought I can add attachment (program with resources) but I haven't got permissions :| so I can only give you this:
Code:
1)
applet.jnlp
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="." href="">
<information>
<title>Applet test</title>
<vendor>test</vendor>
</information>
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.6.0_21+" java-vm=args="-XX:MaxPermSize=256m" href="http://java.sun.com/products/autodl/j2se" />
<jar href="PKCS11WrapperTest.jar" main="true" />
<extension href="iaikpkcs.jnlp "/>
<extension href="gclib.jnlp "/>
<property name="jnlp.packEnabled" value="false" />
</resources>
<applet-desc
name="InsignumApplet"
main-class="pl.consdata.test.WrapperTest"
width="1" height="1"
<update check="always"/>
</jnlp>
2)
gclib.jnlp
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="." href="">
<information>
<title>gclib</title>
<vendor>test</vendor>
</information>
<security>
<all-permissions/>
</security>
<component-desc/>
<resources os="Windows" arch="x86">
<nativelib href="gclib-x32.jar" />
<property name="jnlp.packEnabled" value="false" />
</resource>
<resources os="Windows" arch="x86_64">
<nativelib href="gclib-x64.jar" />
<property name="jnlp.packEnabled" value="false" />
</resource>
<resources os="Windows" arch="amd64">
<nativelib href="gclib-x64.jar" />
<property name="jnlp.packEnabled" value="false" />
</resource>
<update check="always"/>
</jnlp>
3)
iaikpkcs.jnlp
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="." href="">
<information>
<title>Insignum IAIK PKCS11 Wrapper</title>
<vendor>bzwbk</vendor>
</information>
<security>
<all-permissions/>
</security>
<component-desc/>
<resources os="Windows" arch="x86">
<jar href="iaikPkcs11Wrapper.jar" />
<nativelib href="windows32Wrapper-1.3.0.jar" />
<property name="jnlp.packEnabled" value="false" />
</resource>
<resources os="Windows" arch="amd64">
<jar href="iaikPkcs11Wrapper.jar" />
<nativelib href="windows64Wrapper-1.3.0.jar" />
<property name="jnlp.packEnabled" value="false" />
</resource>
<resources os="Windows" arch="x86_64">
<jar href="iaikPkcs11Wrapper.jar" />
<nativelib href="windows64Wrapper-1.3.0.jar" />
<property name="jnlp.packEnabled" value="false" />
</resource>
<update check="always"/>
</jnlp>
4)
package pl.consdata.test;
import java.io.IOException;
import javax.swing.JApplet;
import iaik.pkcs.pkcs11.Module;
public class WrapperTest extends JApplet {
/**
*
*/
private static final long serialVersionUID = 1L;
public void init() {
super.init();
Module pkcs11Module = null;
try {
pkcs11Module = Module.getInstance("gclib.dll");
} catch (UnsatisfiedLinkError ule) {
ule.printStackTrace();
}
catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
add iaikPkcs11Wrapper.jar to classpath.
If program throws UnsatisfiedLinkError - cannot find wrapper lib if IOException - gclib.dll.
Resources
Libs:
Gemalto driver (safe from bank)
http://static3.bzwbk.pl/asset/c/l/a/classic_client_64_user_setup_33597.zip
after install this tool the gclib.dll should be in bin directory
PKCS11Wrapper:
http://jce.iaik.tugraz.at/sic/Products/Core-Crypto-Toolkits/PKCS_11_Wrapper
java 8 i386 - works fine,
start 8 x64 - works only if you copy PKCS11Wrapper.dll from cache (path logged in java console) to e.g. "c:\windows"
REPRODUCIBILITY :
This bug can be reproduced always.
A DESCRIPTION OF THE PROBLEM :
More information in
I thought I can add attachment (program with resources) but I haven't got permissions :| so I can only give you this:
Code:
1)
applet.jnlp
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="." href="">
<information>
<title>Applet test</title>
<vendor>test</vendor>
</information>
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.6.0_21+" java-vm=args="-XX:MaxPermSize=256m" href="http://java.sun.com/products/autodl/j2se" />
<jar href="PKCS11WrapperTest.jar" main="true" />
<extension href="iaikpkcs.jnlp "/>
<extension href="gclib.jnlp "/>
<property name="jnlp.packEnabled" value="false" />
</resources>
<applet-desc
name="InsignumApplet"
main-class="pl.consdata.test.WrapperTest"
width="1" height="1"
<update check="always"/>
</jnlp>
2)
gclib.jnlp
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="." href="">
<information>
<title>gclib</title>
<vendor>test</vendor>
</information>
<security>
<all-permissions/>
</security>
<component-desc/>
<resources os="Windows" arch="x86">
<nativelib href="gclib-x32.jar" />
<property name="jnlp.packEnabled" value="false" />
</resource>
<resources os="Windows" arch="x86_64">
<nativelib href="gclib-x64.jar" />
<property name="jnlp.packEnabled" value="false" />
</resource>
<resources os="Windows" arch="amd64">
<nativelib href="gclib-x64.jar" />
<property name="jnlp.packEnabled" value="false" />
</resource>
<update check="always"/>
</jnlp>
3)
iaikpkcs.jnlp
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="." href="">
<information>
<title>Insignum IAIK PKCS11 Wrapper</title>
<vendor>bzwbk</vendor>
</information>
<security>
<all-permissions/>
</security>
<component-desc/>
<resources os="Windows" arch="x86">
<jar href="iaikPkcs11Wrapper.jar" />
<nativelib href="windows32Wrapper-1.3.0.jar" />
<property name="jnlp.packEnabled" value="false" />
</resource>
<resources os="Windows" arch="amd64">
<jar href="iaikPkcs11Wrapper.jar" />
<nativelib href="windows64Wrapper-1.3.0.jar" />
<property name="jnlp.packEnabled" value="false" />
</resource>
<resources os="Windows" arch="x86_64">
<jar href="iaikPkcs11Wrapper.jar" />
<nativelib href="windows64Wrapper-1.3.0.jar" />
<property name="jnlp.packEnabled" value="false" />
</resource>
<update check="always"/>
</jnlp>
4)
package pl.consdata.test;
import java.io.IOException;
import javax.swing.JApplet;
import iaik.pkcs.pkcs11.Module;
public class WrapperTest extends JApplet {
/**
*
*/
private static final long serialVersionUID = 1L;
public void init() {
super.init();
Module pkcs11Module = null;
try {
pkcs11Module = Module.getInstance("gclib.dll");
} catch (UnsatisfiedLinkError ule) {
ule.printStackTrace();
}
catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
add iaikPkcs11Wrapper.jar to classpath.
If program throws UnsatisfiedLinkError - cannot find wrapper lib if IOException - gclib.dll.
Resources
Libs:
Gemalto driver (safe from bank)
http://static3.bzwbk.pl/asset/c/l/a/classic_client_64_user_setup_33597.zip
after install this tool the gclib.dll should be in bin directory
PKCS11Wrapper:
http://jce.iaik.tugraz.at/sic/Products/Core-Crypto-Toolkits/PKCS_11_Wrapper
java 8 i386 - works fine,
start 8 x64 - works only if you copy PKCS11Wrapper.dll from cache (path logged in java console) to e.g. "c:\windows"
REPRODUCIBILITY :
This bug can be reproduced always.
- duplicates
-
JDK-8057671 unable to find nativelib on windows when case-sensitivity mismatch
-
- Resolved
-
- relates to
-
JDK-8057671 unable to find nativelib on windows when case-sensitivity mismatch
-
- Resolved
-