Skip to Main Content

New to Java

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

getting java.lang.InvocationTargetException in Applet when call native apis

Krr1shOct 28 2010 — edited Nov 1 2010
Hello All,

I am trying to read a USB device using the Applet embedded in jsp using JNA api.

In my code I am loading the DLLs as follows (this works fine standalone class without applet):

Hid INSTANCE = (Hid)Native.loadLibrary("hid", Hid.class, UNICODE_OPTIONS);
Setupapi INSTANCE = (Setupapi)Native.loadLibrary("setupapi", Setupapi.class, UNICODE_OPTIONS);
INSTANCE = (MyKernel32)Native.loadLibrary("kernel32", MyKernel32.class, UNICODE_OPTIONS);

when I put the above code in unsigned Applet and give permissions in java.policy as follows:

permission java.lang.RuntimePermission "loadLibrary.hid";
permission java.io.FilePermission "${java.home}${/}lib${/}ext${/}x86${/}hid.dll", "read, write";
permission java.util.PropertyPermission "Hid", "read, write";
permission java.lang.RuntimePermission "modifyThreadGroup";
permission java.lang.RuntimePermission "modifyThread";

permission java.lang.RuntimePermission "loadLibrary.hid";
permission java.io.FilePermission "${java.home}${/}lib${/}ext${/}x86${/}setupapi.dll", "read, write";
permission java.util.PropertyPermission "Setupapi", "read, write";
permission java.lang.RuntimePermission "modifyThreadGroup";
permission java.lang.RuntimePermission "modifyThread";

permission java.lang.RuntimePermission "loadLibrary.kernel32";
permission java.io.FilePermission "${java.home}${/}lib${/}ext${/}x86${/}kernel32.dll", "read, write";
permission java.util.PropertyPermission "MyKernel32", "read, write";
permission java.lang.RuntimePermission "modifyThreadGroup";
permission java.lang.RuntimePermission "modifyThread";

and I have ported jars(examples.jar, jna.jar) in C:\Program Files\Java\jre6\lib\ext and DLLs(hid.dll, kernel32.dll, setupapi.dll) in C:\Program Files\Java\jre6\lib\ext\x86.

I am getting an exception:
java.lang.InvocationTargetException.

Please tell me if I am missing anything..

Thanks
Saikrishna
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Nov 29 2010
Added on Oct 28 2010
8 comments
476 views