[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-devel
Subject:    Re: java problems
From:       Till Krech <till () snafu ! de>
Date:       2002-06-01 14:32:45
[Download RAW message or body]

Hi,
On Saturday 01 June 2002 09:38, Ferdinand Gassauer wrote:
> Hi!
> Try https://www.netbanking.at/netbanking/netbanking.html
>
> I followed the - outdated - http://www.konqueror.org/konq-java.html and
> tried this versions - all reporting the same bug.
>
> Is it supposed to work ?
>
The Document is indeed outdated and must be updated. Not everything holds true 
which is written there. Especially the section about installing JSSE is 
wrong. It only works, if JSSE is installed to $KDEDIR/share/apps/kjava. 
$KDEHOME will not work - at least not with the security manager.

Now to your applet. The 'archive' attribute in the applet tag on the html page 
is wrong. It points to a URL which does not exist. This means,  the applet 
class loader will get a 404 not found when trying to load the archive. Here 
is a code snippet from the page located at 
https://www.netbanking.at/netbanking/

<APPLET 
    code=at.spardat.imc.applets.LoginApplet.class 
    archive="netbanking2/login_applet.zip"
    name="LoginApplet"
  ...
>
     <PARAM name=archive value=netbanking2/applets/login_applet.zip>
    ...
</APPLET>

Look at the 'archive' _ATTRIBUTE_ in the applet tag and the 'archive' 
_PARAMETER_  between the opening and the closing tag. They are different. 
Also, as far as I know, the parameter 'archive' does not have any special 
meaning in an applet tag but only in a <OBJECT> or <EMBED> tag for the Sun 
Java Plugin. Param tags enclosed in a applet tag are handled by the applet 
itself not by the environment executing the applet.

Try to load
https://www.netbanking.at/netbanking/netbanking2/login_applet.zip
which is the absolute URL according to the archive ATTRIBUTE and the given 
document base. You will get a 404 page.

Then try
https://www.netbanking.at/netbanking/netbanking2/applets/login_applet.zip
This ist the absolute URL according to the archive PARAMETER and will present 
you a "Do you want to open..." box in konqi. The file exists at the given 
URL.

Now, why does it work in Netscape? I assume, it tries both the archive 
ATTRIBUTE and the archive PARAMETER. If this is correct, is another question. 
Of course it can be handled in konqi the same way and there is indeed some 
code in the applet server to handle this but only if there is a archive 
PARAMETER and NO archive ATTRIBUTE.

I must think about if it is a good solution to handle it the same way as 
netscape does since this is only a workaround which fixes a bug on this 
specific page.

greetings, till

> j2re-1.3.1-02b-FCS-linux-i386.bin
> Java VM version: 1.3.1
> Java VM vendor:  Blackdown Java-Linux Team
> Class could not be loaded at.spardat.imc.applets.LoginApplet.class
> Backtrace:
> java.lang.ClassNotFoundException: at.spardat.imc.applets.LoginApplet
> 	at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
> 	at
> org.kde.kjas.server.KJASAppletClassLoader.findClass(KJASAppletClassLoader.j
>ava:241) at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
> 	at java.lang.ClassLoader.loadClass(ClassLoader.java:255)
> 	at
> org.kde.kjas.server.KJASAppletClassLoader.loadClass(KJASAppletClassLoader.j
>ava:256) at org.kde.kjas.server.KJASAppletStub$1.run(KJASAppletStub.java:86)
> at java.lang.Thread.run(Thread.java:484)
>
> *******************************************************
>
> Java VM version: 1.3.1_02
> Java VM vendor:  Sun Microsystems Inc.
> Class could not be loaded at.spardat.imc.applets.LoginApplet.class
> Backtrace:
> java.lang.ClassNotFoundException: at.spardat.imc.applets.LoginApplet
> 	at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
> 	at
> org.kde.kjas.server.KJASAppletClassLoader.findClass(KJASAppletClassLoader.j
>ava:241) at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
> 	at java.lang.ClassLoader.loadClass(ClassLoader.java:255)
> 	at
> org.kde.kjas.server.KJASAppletClassLoader.loadClass(KJASAppletClassLoader.j
>ava:256) at org.kde.kjas.server.KJASAppletStub$1.run(KJASAppletStub.java:86)
> at java.lang.Thread.run(Thread.java:484)
>
> *******************************************************
>
> Java VM version: 1.4.0
> Java VM vendor:  Sun Microsystems Inc.
> Class could not be loaded at.spardat.imc.applets.LoginApplet.class
> Backtrace:
> java.lang.ClassNotFoundException: at.spardat.imc.applets.LoginApplet
> 	at java.net.URLClassLoader$1.run(URLClassLoader.java:198)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at java.net.URLClassLoader.findClass(URLClassLoader.java:186)
> 	at
> org.kde.kjas.server.KJASAppletClassLoader.findClass(KJASAppletClassLoader.j
>ava:241) at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
> 	at java.lang.ClassLoader.loadClass(ClassLoader.java:262)
> 	at
> org.kde.kjas.server.KJASAppletClassLoader.loadClass(KJASAppletClassLoader.j
>ava:256) at org.kde.kjas.server.KJASAppletStub$1.run(KJASAppletStub.java:86)
> at java.lang.Thread.run(Thread.java:536)

-- 
SuSE Linux 8.0 (i386) 2.4.18-64GB-SMP
KDE: 3.0.5 (CVS HEAD >= 20020427)
Qt: 3.0.4


>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic