Мне нужно реализовать аутентификацию смарт-карты для NHS, как описано здесь.
https://developer.nhs.uk/apis/spine-core/smartcards.html
Я получаю следующую ошибку.
доступ запрещен ("java.lang.RuntimePermission" "loadLibrary.TicketApiDll")
java.security.AccessControlException: доступ запрещен ("java.lang.RuntimePermission" "loadLibrary.TicketApiDll")
Я создал образец апплета и попытался выполнить. Апплет выполняется с использованием пути к классу файла JAR, как упомянуто NHS UK.
import java.applet.*;
import java.awt.*;
import com.gemplus.gemauth.api.GATicket;
public class AuthenticateExample extends Applet {
public void paint(Graphics g)
{
try{
String str = this.getParameter("msg");
g.drawString("asdasdasdasdsad",200,80);
//g.drawString(str,100,80);
g.drawString(authenticate(),100,80);
}
catch(Exception e)
{
System.out.println("Exception Aamir");
System.out.println(e);
}
}
public String authenticate() throws Exception {
GATicket gat = new GATicket();
String ticket = gat.getTicket();
return ticket;
}
}
<HTML>
<HEAD>
<TITLE> A Simple Program </TITLE>
</HEAD>
<BODY>
Here is the output of my program:
<applet code="AuthenticateExample" ARCHIVE="GATicket.jar" WIDTH="300" HEIGHT="200">
<PARAM name="msg" value="hi aamir love">
</applet>
</APPLET>
</BODY>
</HTML>
Мне нужен токен в результате, как указано на веб-сайте NHS.
EDIT
grant codeBase "file:///F:/Projects/Java/GATicket.JAR" {
permission java.security.AllPermission;
};
было добавлено как описано другим постом.