OVH Cloud OVH Cloud

[Liveconnect] Problème d'initialisation

2 réponses
Avatar
Alexandre Lahure
Bonjour =E0 tous,

Voici les faits : une applet Java d'=E9dition de texte enrichi, une
barre d'outils en HTML et Javascript, et Liveconnect pour faire
communiquer tout ce beau monde.
- la communication Java vers Javascript se passe bien (mise =E0 jour de
l'=E9tat des boutons d'alignement, de style et de couleur)
- par contre la communication Javascript vers Java (s=E9lection de
l'alignement, du style ou de la couleur) connait un peu plus de
probl=E8mes : le premier appel de ce type est EXTREMEMENT long (de
l'ordre de 20 min). La console Java m'affiche un bon millier de fois le
message suivant :

liveconnect: JavaScript : appel du code syst=E8me Java
liveconnect: JavaScript : politique de s=E9curit=E9 par d=E9faut =3D file://

Aucun autre message n'apparait, et d=E8s le deuxi=E8me appel tout rentre
=E0 peu pr=E8s dans l'ordre (temps de r=E9ponse de 1 =E0 2 s).

Quelqu'un parmi vous a t'il d=E9j=E0 rencontr=E9 ce probl=E8me, et si oui,
l'a t'il r=E9solu ?

Merci de vos r=E9ponses

2 réponses

Avatar
Alexandre Lahure
Je complète un peu :

* Sous Firefox voici la sortie de la console Java (postée
précedemment) :

liveconnect: JavaScript : appel du code système Java
liveconnect: JavaScript : politique de sécurité par défaut = file://

* Sous Opera, le message est différent :

com.opera.OriginNotAllowedException: LiveConnect origin check failed
for JavaScript trying to access Java object,
caller=file://localhost/home/user/RichTextEditor.html,
callee=file:/home/user/RichTextEditor.jar
at
com.opera.LiveConnectPrivilegedActions.originCheck(LiveConnectPrivilegedAct ions.java:99)
at
com.opera.LiveConnectPrivilegedActions.invoke(LiveConnectPrivilegedActions. java:37)
at com.opera.InvocationThread.run(MethodResolver.java:379)

* Sous IE et Konqueror par contre, tout se passe à peu près bien
Avatar
BertrandB
Bonjour à tous,

Voici les faits : une applet Java d'édition de texte enrichi, une
barre d'outils en HTML et Javascript, et Liveconnect pour faire
communiquer tout ce beau monde.
- la communication Java vers Javascript se passe bien (mise à jour d e
l'état des boutons d'alignement, de style et de couleur)
- par contre la communication Javascript vers Java (sélection de
l'alignement, du style ou de la couleur) connait un peu plus de
problèmes : le premier appel de ce type est EXTREMEMENT long (de
l'ordre de 20 min). La console Java m'affiche un bon millier de fois le
message suivant :

liveconnect: JavaScript : appel du code système Java
liveconnect: JavaScript : politique de sécurité par défaut = fi le://

Aucun autre message n'apparait, et dès le deuxième appel tout rentr e
à peu près dans l'ordre (temps de réponse de 1 à 2 s).

Quelqu'un parmi vous a t'il déjà rencontré ce problème, et si o ui,
l'a t'il résolu ?

Merci de vos réponses

J'ai été onfronté à ce problème qui semblerait être lié, d' après les

gens de chez mozilla, à la très mauvaise implémentation par java de
l'interface netscape (utilisé par les navigateur autre que M$) au
premier appel toutes les méthode de l'aplet ainsi que les méthodes do nt
celels-ci dépendent sont auditer ... lonnnng. Bref ça merde et ça
merdera encore pour firefox et les autres.

La manière que j'ai utilisé est de faire un appel à blanc à l'app let par
une pseudo tâche de fond lancée avec settimeout

à la fin de mon script de mise en forme
setTimeout(chargeApplet,1000);

function chargeApplet(){
var applet=document.getElementById("applet");
applet.innerHTML='<applet code="chtioUpload.class" codebase="."
id="Upload" name="Upload" archive="chtioUpload.jar" width="100"
height="20" MAYSCRIPT> Aplet de sauvegarde </applet>';
document.applets["Upload"].setString("Applet ok");

setString étant un méthode de l'applet lui faisant afficher qu'elle e st
ok. Pas terrible mais plus confortable pour l'utilisateur.

PS : je hais java