I'm trying to use jfileupload (and want to buy the full version with source code) but I have a mysterious problem...
I have this SSL exception :
Code: Select all
charger : classe jfileupload.upload.client.MApplet.class introuvable.
java.lang.ClassNotFoundException: jfileupload.upload.client.MApplet.class
at sun.plugin2.applet.Applet2ClassLoader.findClass(Applet2ClassLoader.java:230)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Plugin2ClassLoader.java:249)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Plugin2ClassLoader.java:179)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Plugin2ClassLoader.java:160)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Plugin2ClassLoader.java:686)
at sun.plugin2.applet.Plugin2Manager.createApplet(Plugin2Manager.java:2990)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Plugin2Manager.java:1481)
at java.lang.Thread.run(Thread.java:680)
Caused by: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:174)
at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:136)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.recvAlert(SSLSocketImpl.java:1720)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:954)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:755)
at com.sun.net.ssl.internal.ssl.AppInputStream.read(AppInputStream.java:75)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:258)
at java.io.BufferedInputStream.read(BufferedInputStream.java:317)
at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:687)
at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:632)
at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:652)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1200)
at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:379)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:318)
at sun.plugin2.applet.Applet2ClassLoader.getBytes(Applet2ClassLoader.java:593)
at sun.plugin2.applet.Applet2ClassLoader.access$000(Applet2ClassLoader.java:52)
at sun.plugin2.applet.Applet2ClassLoader$1.run(Applet2ClassLoader.java:203)
at java.security.AccessController.doPrivileged(Native Method)
at sun.plugin2.applet.Applet2ClassLoader.findClass(Applet2ClassLoader.java:200)
... 8 more
Exception : java.lang.ClassNotFoundException: jfileupload.upload.client.MApplet.classHere is the server configuration :
- 2 identical apache 2 servers with the jfileupload 2.8 and TLS1/SSLv3 (www1.server.com and www2.server.com)
- 1 dns pool named pool.server.com which corresponds to (www1.server.com,www2.server.com)
- users make tests with Firefox, Safari, Chrome, Opera on Mac 10.6.6 and IE8 on W7 with a freshly version of java
- using a trusted or not certificate do the same thing (weakssl)
These tests work :
- user goes to http://www1.server.com/jfileupload_test
- user goes to http://www2.server.com/jfileupload_test
- user goes to http://pool.server.com/jfileupload_test
- user goes to https://www1.server.com/jfileupload_test
- user goes to https://www2.server.com/jfileupload_test
This one does not load the applet certificate and throws the dump above :
- user goes to https://pool.server.com/jfileupload_test
Here is the html code in my php :
Code: Select all
<applet code="jfileupload.upload.client.MApplet.class" java_codebase="../../../tools/jfileupload/" archive="jfileupload.jar,httpimpl.jar,chttpclient.jar,clogging.jar,weakssl.jar" width="500" height="300" name="fileupload">
<param name="code" value="jfileupload.upload.client.MApplet.class">
<param name="codebase" value="../../../tools/jfileupload/">
<param name="archive" value="jfileupload.jar,httpimpl.jar,chttpclient.jar,clogging.jar,weakssl.jar">
<param name="encoding" value="UTF-8">
<param name="maxsize" value="209715200">
<param name="overwrite" value="indexrename">
<param name="name" value="fileupload">
<param name="type" value="application/x-java-applet;version=1.4">
<param name="scriptable" value="true">
<param name="url" value="https://pool.server.com/files_upload.php">
<param name="paramfile" value="uploadfile">
<param name="param1" value="todo">
<param name="value1" value="upload">
<param name="param2" value="errorheader">
<param name="value2" value="custommessage">
<param name="param3" value="relativefilename">
<param name="value3" value="true">
<param name="param4" value="httpmethod">
<param name="value4" value="put">
<param name="param5" value="cookiename">
<param name="value5" value="PHPSESSID">
<param name="param6" value="cookievalue">
<param name="value6" value="de8138ec355ea4557da8850bf7de08cd">
<param name="param7" value="weakssl">
<param name="value7" value="true"> <!-- or dummy, same pb -->
<param name="resume" value="CRC">
<param name="folderdepth" value="-1">
<param name="mode" value="https"> <!-- or http, same pb -->
<param name="forward" value="https://pool.server.com/files_list.php?r=add.o">
</applet>Do you have an idea ? I can run a jar debug file if needed...