#1 Le 18/04/2019, à 08:57
- fan2tango
[RESOLU] sun.jce.encoder BASE64Decoder Java 8
Bonjour à tous,
C'est un appel de détresse.
J'utilisais des fonctions de cryptage issues autrefois de sun
Je sais, il ne faut plus mais d'un coup, j'ai ma config qui plante en production après avoir relancé mes services.
J'utilise en Java la classe BASE64Decoder de sun (c'est vieux mais je n'ai pas eu le temps de modifier)
Ce matin, après avoir fait une mise à jour de mes servlets java, je relance les services et Paf!!!! java.lang.ClassNotFoundException: sun.misc.BASE64Encoder
J'étais resté en Java 8 justement le temps d'attendre de pouvoir travailler ce point et passe à la dernière version.
Est-ce qu'une mise à jour récente de java 8 aurait été faite et installée auto avec d'autres packages?
Donc 2 problèmes :
1 - Je ne comprend pas que ce qui fonctionnait hier ne fonctionne plus après juste un restart des services
2 - surtout comment je peux m'en sortir très vite car c'est en prod que tout est arrété ?
Merci pour votre aide
Dernière modification par fan2tango (Le 18/04/2019, à 14:21)
Hors ligne
#2 Le 18/04/2019, à 09:12
- fan2tango
Re : [RESOLU] sun.jce.encoder BASE64Decoder Java 8
En fait, ça ne le fait visiblement qu'en mode Servlet.
Je je transforme un bout de code d'un servlet en app, ça fonctionne bien
Hors ligne
#3 Le 18/04/2019, à 14:26
- fan2tango
Re : [RESOLU] sun.jce.encoder BASE64Decoder Java 8
Bon, laissez tomber, j'avais du oublier de connecter ma cervelle ce matin.
J'ai deux versions de la JVM.
La 1.11 et la 1.8
Et il se trouve, mais là je n'ai pas encore compris pourquoi, que de lien symbolique default_java pointait ce matin sur la 1.11 au lieu de la 1.8.
Est-ce un outil complémentaire installé récemment qui m'aurait joué ce mauvais tour, je n'en sais rien, je chercherai.
Il n’empêche que le /etc/systemd/system/tomcat.service faisait pointer la variable JAVA_HOME vers default-java
J'ai forcé le JAVA_HOME sur la 1.8, un rechargement de config et un redémarrage de Tomcat et Hop, ça fonctionne ! (pas belle la vie ?)
Donc, affaire classée.
Bonne journée à tous.
Hors ligne