jeudi 2 avril 2015

eID card events are never working properly is this a BUG?

Please can you tell me why i am not getting any output of "System.out.println(eID.getIDData().toString());" ? even the card is inserted and exited over and over and over. It keeps showing that same ERROR:


Program has to monitor when card is inserted and or exited



run:
AgeChecker -- type QUIT to end program.
javax.smartcardio.CardException: connect() failed
at sun.security.smartcardio.TerminalImpl.connect(TerminalImpl.java:84)
at be.belgium.eid.eidlib.SmartCard.connectCard(SmartCard.java:116)
at be.belgium.eid.event.CardAlivePromptTask.run(CardAlivePromptTask.java:78)
Caused by: sun.security.smartcardio.PCSCException: SCARD_W_UNRESPONSIVE_CARD
at sun.security.smartcardio.PCSC.SCardConnect(Native Method)
at sun.security.smartcardio.CardImpl.<init>(CardImpl.java:100)
at sun.security.smartcardio.TerminalImpl.connect(TerminalImpl.java:78)
... 2 more
javax.smartcardio.CardException: connect() failed
at sun.security.smartcardio.TerminalImpl.connect(TerminalImpl.java:84)
at be.belgium.eid.eidlib.SmartCard.connectCard(SmartCard.java:116)
at be.belgium.eid.event.CardAlivePromptTask.run(CardAlivePromptTask.java:78)
Caused by: sun.security.smartcardio.PCSCException: SCARD_W_UNRESPONSIVE_CARD
at sun.security.smartcardio.PCSC.SCardConnect(Native Method)
at sun.security.smartcardio.CardImpl.<init>(CardImpl.java:100)
at sun.security.smartcardio.TerminalImpl.connect(TerminalImpl.java:78)
... 2 more


CODE:



package eid;
import java.util.Scanner;
import be.belgium.eid.eidlib.BeID;
import be.belgium.eid.event.CardAdapter;
import be.belgium.eid.exceptions.EIDException;

public class Eid {
public static void main(String[] args) {
try {
final BeID eID = new BeID(true);
eID.enableCardListener(new CardAdapter() {
public void cardInserted() {
try {
System.out.println(eID.getIDData().toString());
} catch (EIDException e) {
System.err.println("eIDException: -- " + e.getMessage());
} catch (Exception e) {
System.err.println("exception: -- " + e.getMessage());
}

}
});

System.out.println("type QUIT to end program.");
String input = "";
while (!input.equalsIgnoreCase("QUIT")) {
input = new Scanner(System.in).next();
}

} catch (NumberFormatException e) {
System.err.println("Exceptions");
}

}
}

Aucun commentaire:

Enregistrer un commentaire