Bonjour à tous,

J'écris ce post en espérant que quelqu'un puisse m'aider, cela fait trois jours que je recherche partout mais n'arrive pas à régler mon problème.

J'ai une multitude d'application Java que je déploie avec Java Web Start, depuis le passage à Java 1.6.0_19, et même en version1.6.0_20, certaines applications ne fonctionnent plus (le déploiement via javaws fonctionne depuis près de 3 ans ici sans aucun problème)


Le lancement de l'application fonctionne lors de la première installation.
Si l'application est en cache, j'obtiens ces superbes messages d'erreur :
(dans la console et dans le rapport d'erreur jws)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
java.lang.ArrayIndexOutOfBoundsException: 0
	at com.sun.deploy.security.CPCallbackHandler$ChildElement.<init>(Unknown Source)
	at com.sun.deploy.security.CPCallbackHandler$ChildCallback.openClassPathElement(Unknown Source)
	at com.sun.deploy.security.DeployURLClassPath$JarLoader.getJarFile(Unknown Source)
	at com.sun.deploy.security.DeployURLClassPath$JarLoader.access$700(Unknown Source)
	at com.sun.deploy.security.DeployURLClassPath$JarLoader$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at com.sun.deploy.security.DeployURLClassPath$JarLoader.ensureOpen(Unknown Source)
	at com.sun.deploy.security.DeployURLClassPath$JarLoader.<init>(Unknown Source)
	at com.sun.deploy.security.DeployURLClassPath$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at com.sun.deploy.security.DeployURLClassPath.getLoader(Unknown Source)
	at com.sun.deploy.security.DeployURLClassPath.getLoader(Unknown Source)
	at com.sun.deploy.security.DeployURLClassPath.getResource(Unknown Source)
	at java.net.URLClassLoader$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(Unknown Source)
	at com.sun.jnlp.JNLPClassLoader.findClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at com.sun.javaws.Launcher.doLaunchApp(Unknown Source)
	at com.sun.javaws.Launcher.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
Could not launch from cache. Will try online mode. [Need to update]
#### Java Web Start Error:
#### 0
Quand je vérifie la signature de mon jar :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
 
jarsigner -verify -verbose  CAFEv3.jar
 
        4573 Wed Apr 21 17:17:44 CEST 2010 META-INF/MANIFEST.MF
        4667 Wed Apr 21 17:17:44 CEST 2010 META-INF/SIGNATUR.SF
        1011 Wed Apr 21 17:17:44 CEST 2010 META-INF/SIGNATUR.DSA
sm      2126 Fri Dec 04 21:22:42 CET 2009 wait.gif
sm       693 Wed Apr 21 09:57:26 CEST 2010 Main.class
sm      1141 Wed Apr 21 09:57:26 CEST 2010 chainage_corrections/CorrectionRumRum.class
sm      1656 Wed Apr 21 09:57:26 CEST 2010 chainage_corrections/CorrectionRumNull.class
sm       174 Wed Apr 21 09:57:26 CEST 2010 chainage_corrections/Correction.class
sm      3354 Wed Apr 21 09:57:26 CEST 2010 chainage_corrections/Moteur_corrections.class
sm      1656 Wed Apr 21 09:57:26 CEST 2010 chainage_corrections/CorrectionNullRum.class
sm       868 Wed Apr 21 09:57:26 CEST 2010 chainage_regles/RegleIpp.class
sm      3019 Wed Apr 21 09:57:26 CEST 2010 chainage_regles/Moteur_regles.class
sm       898 Wed Apr 21 09:57:26 CEST 2010 chainage_regles/RegleDEDS.class
sm       802 Wed Apr 21 09:57:26 CEST 2010 chainage_regles/RegleSeances.class
sm       783 Wed Apr 21 09:57:26 CEST 2010 chainage_regles/RegleIVG.class
sm       161 Wed Apr 21 09:57:26 CEST 2010 chainage_regles/Regle.class
sm      5575 Wed Apr 21 09:57:26 CEST 2010 chaineur/Rum.class
sm      2201 Wed Apr 21 09:57:26 CEST 2010 chaineur/Rss.class
sm      1417 Wed Apr 21 09:57:26 CEST 2010 chaineur/RumErr.class
sm     15054 Wed Apr 21 09:57:26 CEST 2010 chaineur/Chainage.class
sm      3318 Wed Apr 21 09:57:26 CEST 2010 chargeur/Chargeur.class
sm      8709 Wed Apr 21 09:57:26 CEST 2010 chargeur/Rum_ata.class
sm      2728 Wed Apr 21 09:57:26 CEST 2010 chargeur/Patient_ata.class
sm      2320 Wed Apr 21 09:57:26 CEST 2010 chargeur/Rss_ata.class
sm      4458 Wed Apr 21 09:57:26 CEST 2010 chargeur/Acte_ata.class
sm      1408 Wed Apr 21 09:57:26 CEST 2010 chargeur/Diag_ata.class
sm     28051 Wed Apr 21 09:57:24 CEST 2010 dbaccess/DataChargeWriter.class
sm     19301 Wed Apr 21 09:57:24 CEST 2010 dbaccess/DataChargeReader.class
sm     13203 Wed Apr 21 09:57:26 CEST 2010 dbaccess/DataChainage.class
sm      1100 Wed Apr 21 09:57:26 CEST 2010 dbaccess/Connexion.class
sm      4923 Wed Apr 21 09:57:24 CEST 2010 dbaccess/DataLogger.class
sm      9201 Wed Apr 21 09:57:26 CEST 2010 dbaccess/DataChargeCatalog.class
sm      2707 Wed Apr 21 09:57:24 CEST 2010 dbaccess/Requetes.class
sm      4734 Wed Apr 21 09:57:24 CEST 2010 dbaccess/DataConnector.class
sm      6739 Wed Apr 21 09:57:24 CEST 2010 dbaccess/DataVerif.class
sm      1107 Wed Apr 21 09:57:24 CEST 2010 gui/MyComboBox.class
sm      1950 Wed Apr 21 09:57:24 CEST 2010 gui/MyButton.class
sm      2410 Wed Apr 21 09:57:22 CEST 2010 gui/MyScrollTextArea.class
sm      3412 Wed Apr 21 09:57:24 CEST 2010 gui/MyJCheckPanel.class
sm      1903 Wed Apr 21 09:57:24 CEST 2010 gui/MyFrame.class
sm       671 Wed Apr 21 09:57:24 CEST 2010 gui/MyPanel$1.class
sm       672 Wed Apr 21 09:57:24 CEST 2010 gui/MyPanel$2.class
sm       716 Wed Apr 21 09:57:24 CEST 2010 gui/MyPanel$3.class
sm     12898 Wed Apr 21 09:57:24 CEST 2010 gui/MyPanel.class
sm      3456 Wed Apr 21 09:57:24 CEST 2010 gui/MyDatePanel.class
sm      2087 Wed Apr 21 09:57:22 CEST 2010 gui/Param.class
sm      1270 Wed Apr 21 09:57:24 CEST 2010 gui/MyLabel.class
sm      3401 Wed Apr 21 09:57:24 CEST 2010 gui/MyJCBPanel.class
sm       485 Wed Apr 21 09:57:22 CEST 2010 gui/MyRadioButton.class
sm      2273 Wed Apr 21 09:57:22 CEST 2010 logger/StdLogger.class
sm       892 Wed Apr 21 09:57:22 CEST 2010 logger/MyLevel.class
sm      2315 Wed Apr 21 09:57:22 CEST 2010 logger/MyHandler.class
sm     14919 Fri Dec 04 21:22:42 CET 2009 requetes_chargement.xml
sm       429 Fri Dec 04 19:03:44 CET 2009 .classpath
sm       149 Fri Dec 04 21:22:42 CET 2009 manifest.mf
sm       190 Fri Dec 04 21:22:44 CET 2009 corrections.xml
sm      7871 Fri Dec 04 21:22:44 CET 2009 requetes_chainage.xml
sm       116 Fri Dec 04 21:22:42 CET 2009 wait-disable.gif
sm       184 Fri Dec 04 21:22:42 CET 2009 regles.xml
sm       366 Fri Dec 04 19:03:44 CET 2009 .project
sm      1575 Fri Dec 04 21:22:44 CET 2009 connexion.xml
 
  s = signature was verified 
  m = entry is listed in manifest
  k = at least one certificate was found in keystore
  i = at least one certificate was found in identity scope
 
jar verified.
 
Warning: 
This jar contains entries whose signer certificate has expired.
Cela a l'air correct.

Je ne comprends donc pas d'où viens le problème...
Le plus déroutant, c'est qu'après cette erreur, si je vide a nouveau le cache, puis clique sur le lien jnlp, elle se lance sans problème...un deuxième clique sur le lien (l'appli étant donc en cache) me génère cette erreur.

J'ai d'autres applications par contre qui ne fonctionnent plus du tout, et j'obtiens un message un peu différent:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Could not launch from cache. Will try online mode. [Need to update]
java.lang.NoClassDefFoundError: tlibgui/MyFrameListener
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClassCond(Unknown Source)
	at java.lang.ClassLoader.defineClass(Unknown Source)
	at java.security.SecureClassLoader.defineClass(Unknown Source)
	at java.net.URLClassLoader.defineClass(Unknown Source)
	at java.net.URLClassLoader.access$000(Unknown Source)
	at java.net.URLClassLoader$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(Unknown Source)
	at com.sun.jnlp.JNLPClassLoader.findClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at Main.main(Main.java:11)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at com.sun.javaws.Launcher.executeApplication(Unknown Source)
	at com.sun.javaws.Launcher.executeMainClass(Unknown Source)
	at com.sun.javaws.Launcher.doLaunchApp(Unknown Source)
	at com.sun.javaws.Launcher.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: tlibgui.MyFrameListener
	at java.net.URLClassLoader$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(Unknown Source)
	at com.sun.jnlp.JNLPClassLoader.findClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	... 22 more
#### Java Web Start Error:
#### null
Donc la apparement il ne trouve pas une classe, pourtant elle est bien la, la classe que Java me réclame se trouve dans le package TomLib.jar, librairie qui est bien présente dans le jnlp

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<jnlp spec="1.0+" codebase="http://dimsrvli/appli/" href="http://dimsrvli/appli/Ordinator.jnlp">
  <information>
    <title>Ordinator Application</title>
    <vendor> Lille</vendor>
    <homepage href="http://dimsrvli/appli/docs/help.html"/>
    <description>Ordinator Application</description>
    <description kind="short">Programme de gestion des pc du dim</description>
    <icon href="http://dimsrvli/appli/images/splash.gif" kind="splash"/>
    <icon href="http://dimsrvli/appli/images/Ordinator.png" kind="default"/>
    <offline-allowed/>
  </information>
  <security>
    <all-permissions/>
  </security>
  <update check="timeout" policy="always"/>
  <resources>
    <java max-heap-size="268435456" version="1.6"/>
    <jar href="http://dimsrvli/appli/Ordinator.jar" download="eager" main="false"/>
    <jar href="http://dimsrvli/appli/librairies/jdom.jar" download="eager" main="false"/>
    <jar href="http://dimsrvli/appli/librairies/ojdbc14.jar" download="eager" main="false"/>
    <jar href="http://dimsrvli/appli/librairies/TomLib.jar" download="eager" main="false"/>
    <jar href="http://dimsrvli/appli/librairies/jxl.jar" download="eager" main="false"/>
    <jar href="http://dimsrvli/appli/librairies/linux/jdic.jar" download="eager" main="false"/>
    <nativelib href="http://dimsrvli/appli/librairies/linux/jdic-native.jar" download="eager" main="false"/>
  </resources>
  <application-desc main-class="Main"/>
</jnlp>
Je précise à nouveau que tout cela fonctionnait parfaitement jusqu'en 1.6.0_18 et que je n'ai pas apporté de modification de code...

J'ai beau parcourir les forum Oracle/Sun, je ne trouve pas de solution...
Toute aide est donc la bienvenue (même si vous avez le même problème mais pas de solution, cela m'intéresse, je me sentirais moins seul...)

Merci d'avance à tous!