Poster une réponse à un sujet: eID Problème d'intégration de l'Applet.
Attention, ce sujet est un sujet ancien (3289 jours sans réponse)
mansyn
Bonjour,
Topic très intéressant. Nous passons actuellement par le site www.e-contract.be pour récupérer les données venant de la carte d'identité, mais, je ne vous cache pas que le prix payer pour le service est un peu cher.
Nous avons donc décidé de déployer notre propre serveur JAVA pour le faire tourné. Cependant, je me confronte à un problème. Nous avons pu développer la solution en local qui fonctionne parfaitement bien. Le déploiement se fait via Eclipse et serveur Jboss.
Cependant, on a un problème sur le serveur de production. J'ai demandé au prestataire qui s'en occupe d'installer un serveur Jboss, mais, je crois qu'il a juste mis le Tomcat. Cela pourrait surement venir de là. Est-ce que cette solution peu tourné en Tomcat ?
Voici mon message erreur :
eID Applet - Copyright (C) 2008-2013 FedICT.
Released under GNU LGPL version 3.0 license.
More info: http://code.google.com/p/eid-applet/
checking applet privileges...
security manager permission check for java 1.6...
checking web application trust...
running privileged code...
eID browser applet version: 1.1.3
Java version: 1.8.0_65
Java vendor: Oracle Corporation
OS: Windows 10
OS version: 10.0
OS arch: x86
Web application URL: https://.../eID-Applet/identification.jsp
Current time: Fri Oct 30 08:48:38 CET 2015
ERROR: no session cookie detected!
sending message: HelloMessage
current protocol state: null
protocol state transition: INIT
SSL handshake finish cipher suite: TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
response message: IdentificationRequestMessage
current protocol state: INIT
protocol state transition: IDENTIFY
include address: true
include photo: true
include integrity data: false
include certificates: false
remove card: false
identity data usage: null
Détection de la carte eID.
Veuillez introduire votre carte eID...
Scanning card terminal: Dell Smart Card Reader Keyboard 0
Veuillez introduire votre carte eID...
Veuillez introduire votre carte eID...
Scanning card terminal: Dell Smart Card Reader Keyboard 0
eID card detected in card terminal : Dell Smart Card Reader Keyboard 0
Lecture des données d'identification.
Reading identity file...
selecting file
task exception detected: wrong status word after selecting file: 6a86
exception type: java.io.FileNotFoundException
will sleep and retry...
could not select BELPIC
status word: 6a82
BELPIC JavaCard applet selected
selecting file
read binary
Size identity file: 177
Read address file...
selecting file
read binary
Size address file: 121
Read photo file...
selecting file
read binary
Transfert des données d'identification.
sending message: IdentityDataMessage
current protocol state: IDENTIFY
SSL handshake finish cipher suite: TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
HTTP response code: 500
<html><head><title>Apache Tomcat/7.0.28 - Error report</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>HTTP Status 500 - expected a protocol start message</h1><HR size="1" noshade="noshade"><p><b>type</b> Exception report</p><p><b>message</b> <u>expected a protocol start message</u></p><p><b>description</b> <u>The server encountered an internal error (expected a protocol start message) that prevented it from fulfilling this request.</u></p><p><b>exception</b> <pre>java.lang.RuntimeException: expected a protocol start message
be.fedict.eid.applet.shared.protocol.ProtocolStateMachine.checkRequestMessage(P- rotocolStateMachine.java:121)
be.fedict.eid.applet.service.AppletServiceServlet.doPost(AppletServiceServlet.j- ava:300)
javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
</pre></p><p><b>note</b> <u>The full stack trace of the root cause is available in the Apache Tomcat/7.0.28 logs.</u></p><HR size="1" noshade="noshade"><h3>Apache Tomcat/7.0.28</h3></body></html>
error: error sending message to service. HTTP status code: 500
error type: java.io.IOException
at be.fedict.eid.applet.Controller.sendMessage:193
at be.fedict.eid.applet.Controller.sendMessage:145
at be.fedict.eid.applet.Controller.performEidIdentificationOperation:1446
at be.fedict.eid.applet.Controller.run:358
at be.fedict.eid.applet.Applet$AppletThread$1.run:602
at java.security.AccessController.doPrivileged:-2
at be.fedict.eid.applet.Applet$AppletThread.run:597
at java.lang.Thread.run:-1
Erreur générale.
-------------------------------------
Est-ce que cette erreur parle a quelqu'un qui est plus habitué en JAVA. Qu'est-ce qu'il ne trouve pas.
Bien à vous,
Topic très intéressant. Nous passons actuellement par le site www.e-contract.be pour récupérer les données venant de la carte d'identité, mais, je ne vous cache pas que le prix payer pour le service est un peu cher.
Nous avons donc décidé de déployer notre propre serveur JAVA pour le faire tourné. Cependant, je me confronte à un problème. Nous avons pu développer la solution en local qui fonctionne parfaitement bien. Le déploiement se fait via Eclipse et serveur Jboss.
Cependant, on a un problème sur le serveur de production. J'ai demandé au prestataire qui s'en occupe d'installer un serveur Jboss, mais, je crois qu'il a juste mis le Tomcat. Cela pourrait surement venir de là. Est-ce que cette solution peu tourné en Tomcat ?
Voici mon message erreur :
eID Applet - Copyright (C) 2008-2013 FedICT.
Released under GNU LGPL version 3.0 license.
More info: http://code.google.com/p/eid-applet/
checking applet privileges...
security manager permission check for java 1.6...
checking web application trust...
running privileged code...
eID browser applet version: 1.1.3
Java version: 1.8.0_65
Java vendor: Oracle Corporation
OS: Windows 10
OS version: 10.0
OS arch: x86
Web application URL: https://.../eID-Applet/identification.jsp
Current time: Fri Oct 30 08:48:38 CET 2015
ERROR: no session cookie detected!
sending message: HelloMessage
current protocol state: null
protocol state transition: INIT
SSL handshake finish cipher suite: TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
response message: IdentificationRequestMessage
current protocol state: INIT
protocol state transition: IDENTIFY
include address: true
include photo: true
include integrity data: false
include certificates: false
remove card: false
identity data usage: null
Détection de la carte eID.
Veuillez introduire votre carte eID...
Scanning card terminal: Dell Smart Card Reader Keyboard 0
Veuillez introduire votre carte eID...
Veuillez introduire votre carte eID...
Scanning card terminal: Dell Smart Card Reader Keyboard 0
eID card detected in card terminal : Dell Smart Card Reader Keyboard 0
Lecture des données d'identification.
Reading identity file...
selecting file
task exception detected: wrong status word after selecting file: 6a86
exception type: java.io.FileNotFoundException
will sleep and retry...
could not select BELPIC
status word: 6a82
BELPIC JavaCard applet selected
selecting file
read binary
Size identity file: 177
Read address file...
selecting file
read binary
Size address file: 121
Read photo file...
selecting file
read binary
Transfert des données d'identification.
sending message: IdentityDataMessage
current protocol state: IDENTIFY
SSL handshake finish cipher suite: TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
HTTP response code: 500
<html><head><title>Apache Tomcat/7.0.28 - Error report</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>HTTP Status 500 - expected a protocol start message</h1><HR size="1" noshade="noshade"><p><b>type</b> Exception report</p><p><b>message</b> <u>expected a protocol start message</u></p><p><b>description</b> <u>The server encountered an internal error (expected a protocol start message) that prevented it from fulfilling this request.</u></p><p><b>exception</b> <pre>java.lang.RuntimeException: expected a protocol start message
be.fedict.eid.applet.shared.protocol.ProtocolStateMachine.checkRequestMessage(P- rotocolStateMachine.java:121)
be.fedict.eid.applet.service.AppletServiceServlet.doPost(AppletServiceServlet.j- ava:300)
javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
</pre></p><p><b>note</b> <u>The full stack trace of the root cause is available in the Apache Tomcat/7.0.28 logs.</u></p><HR size="1" noshade="noshade"><h3>Apache Tomcat/7.0.28</h3></body></html>
error: error sending message to service. HTTP status code: 500
error type: java.io.IOException
at be.fedict.eid.applet.Controller.sendMessage:193
at be.fedict.eid.applet.Controller.sendMessage:145
at be.fedict.eid.applet.Controller.performEidIdentificationOperation:1446
at be.fedict.eid.applet.Controller.run:358
at be.fedict.eid.applet.Applet$AppletThread$1.run:602
at java.security.AccessController.doPrivileged:-2
at be.fedict.eid.applet.Applet$AppletThread.run:597
at java.lang.Thread.run:-1
Erreur générale.
-------------------------------------
Est-ce que cette erreur parle a quelqu'un qui est plus habitué en JAVA. Qu'est-ce qu'il ne trouve pas.
Bien à vous,
kevingobert
Merci je vais encore continuer
zion
Tu vas avoir besoin d'un serveur Java EE, d'un site en HTTPS, et normalement le jar c'est eid-applet.jar, mais je n'ai plus touché à ce truc depuis plusieurs années, désolé.
kevingobert
Et pour le moment tu n'aurais pas une solution à mon problème ? car ici il trouve pas la Class alors qu'il est bien dans le dossier.
Si tu l'as déjà fait allé, pourrais-tu m'expliquer la structure, et peut-être la manière de faire ?
J'aimerais savoir si il faut quelque chose de particulier pour le faire fonctionner ? Un serveur ?
Si tu l'as déjà fait allé, pourrais-tu m'expliquer la structure, et peut-être la manière de faire ?
J'aimerais savoir si il faut quelque chose de particulier pour le faire fonctionner ? Un serveur ?
zion
L'applet c'est plus ou moins officiel oui, mais non, concrètement avec l'abandon de Java, il reste des solutions pour faire de l'authentification mais le reste n'est pas encore possible, les autres technos proposées pour remplacer cela ne sont pas encore officielles. En dehors d'un plugin natif pour chaque navigateur, cela devient d'un coup nettement plus complexe
kevingobert
Bonjour,
merci pour ta réponse.
C'est la doc officiel de eID ? Tu saurais peut-être m'aiguiller sur une alternative ? Ou un moyen de faire aller cette méthode ?
Merci
merci pour ta réponse.
C'est la doc officiel de eID ? Tu saurais peut-être m'aiguiller sur une alternative ? Ou un moyen de faire aller cette méthode ?
Merci
zion
Ton développement ne fonctionne déjà plus sur Chrome, et d'ici fin 2016 il ne fonctionnera plus non plus sur Firefox, ni sur les nouvelles versions de IE
kevingobert
Index.html
[html<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>eID Detection</title>
</head>
<body>
<h1>Détection eID</h1>
<div id="appletMessage">
</div>
<script src="https://www.java.com/js/deployJava.js"></script>
<script>
var attributes = {
code :'be.fedict.eid.applet.Applet.class',
archive :'eid-applet-package-1.1.3.jar',
width :1,
height :1
};
var parameters = {
TargetPage :'identity-result.jsp',
AppletService : 'applet-service',
MessageCallback :'messageCallback',
BackgroundColor : '#ffffff'
};
var version = '1.6';
deployJava.runApplet(attributes, parameters, version);
function messageCallback(status, message) {
console.log(status);
document.getElementById('appletMessage').innerHTML = '<b>' + status + ': ' + message + '</b>';
}
</script>
</body>
</html>[/html]
web.xml
[xml<servlet>
<servlet-name>AppletServiceServlet</servlet-name>
<servlet-class>
be.fedict.eid.applet.service.AppletServiceServlet
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AppletServiceServlet</servlet-name>
<url-pattern>/applet-service</url-pattern>
</servlet-mapping>[/xml]
[imghttps://dl.dropboxusercontent.com/u/24590371/CaptureE2%80%99%C3%A9cran%2020- 15-10-20%20%C3%A0%2020.35.27.png[/img]
[html<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>eID Detection</title>
</head>
<body>
<h1>Détection eID</h1>
<div id="appletMessage">
</div>
<script src="https://www.java.com/js/deployJava.js"></script>
<script>
var attributes = {
code :'be.fedict.eid.applet.Applet.class',
archive :'eid-applet-package-1.1.3.jar',
width :1,
height :1
};
var parameters = {
TargetPage :'identity-result.jsp',
AppletService : 'applet-service',
MessageCallback :'messageCallback',
BackgroundColor : '#ffffff'
};
var version = '1.6';
deployJava.runApplet(attributes, parameters, version);
function messageCallback(status, message) {
console.log(status);
document.getElementById('appletMessage').innerHTML = '<b>' + status + ': ' + message + '</b>';
}
</script>
</body>
</html>[/html]
web.xml
[xml<servlet>
<servlet-name>AppletServiceServlet</servlet-name>
<servlet-class>
be.fedict.eid.applet.service.AppletServiceServlet
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AppletServiceServlet</servlet-name>
<url-pattern>/applet-service</url-pattern>
</servlet-mapping>[/xml]
[imghttps://dl.dropboxusercontent.com/u/24590371/CaptureE2%80%99%C3%A9cran%2020- 15-10-20%20%C3%A0%2020.35.27.png[/img]
kevingobert
Bonjour,
Pour un projet client, la demande est de vérifier la présence d'un lecteur de carte et si la carte d'identité est inséré dans celui-ci. Ensuite je dois vérifier la date de validation et faire une redirection
Je suis tomber sur ces tests : https://www.e-contract.be/eid-applet-test/
J'aurais aimé savoir quels fichiers doit être présent pour faire fonctionner le système car celui-ci me renvoi toujours une erreur de Class pour arriver à un résultat comme le lien ci-dessous
Pour le moment dans mon fichier html j'ai:
Dans mon fichier sont présents les fichiers:
eid-applet-package-1.1.3.jar
eid-applet-service-1.1.3.jar
C'est vraiment la première fois que j'utilise un déploiement java.
Pouvez-vous m'aiguillez pour que je puisse utiliser l'sdk ?
Merci
Pour un projet client, la demande est de vérifier la présence d'un lecteur de carte et si la carte d'identité est inséré dans celui-ci. Ensuite je dois vérifier la date de validation et faire une redirection
Je suis tomber sur ces tests : https://www.e-contract.be/eid-applet-test/
J'aurais aimé savoir quels fichiers doit être présent pour faire fonctionner le système car celui-ci me renvoi toujours une erreur de Class pour arriver à un résultat comme le lien ci-dessous
Pour le moment dans mon fichier html j'ai:
- <h1>eID Applet Identification Demo</h1>
- <script src="https://www.java.com/js/deployJava.js"></script>
- <script>
- var attributes = {
- code : 'be.fedict.eid.applet.Applet.class',
- archive : 'eid-applet-package-1.1.3.jar',
- width : 600,
- height : 300
- };
- var parameters = {
- TargetPage : 'identity-result.jsp',
- AppletService : 'applet-service',
- BackgroundColor : '#ffffff',
- Language : 'en'
- };
- var version = '1.6';
- deployJava.runApplet(attributes, parameters, version);
- </script>
Dans mon fichier sont présents les fichiers:
eid-applet-package-1.1.3.jar
eid-applet-service-1.1.3.jar
C'est vraiment la première fois que j'utilise un déploiement java.
Pouvez-vous m'aiguillez pour que je puisse utiliser l'sdk ?
Merci