Hejsan
Jag försöker skicka ett List objekt från min servlet till en applet. Först testade jag att skicka ett String objekt och det funkade bra. Men när jag sedan försöker göra likadant med ett List obj så skiter det sig. :(
Koden för att skicka från servleten..
ObjectOutputStream outputToApplet;response.setContentType("application/octet-stream");
outputToApplet = new ObjectOutputStream(response.getOutputStream());
l=new List(2,true);
l.add("hejsan");
outputToApplet.writeObject(l);
outputToApplet.flush();
outputToApplet.close();
När jag sedan tar mot i appleten...
inputFromServlet = new ObjectInputStream(conn.getInputStream());
theList = (List)FromServlet.readObject();
theList blir här null. Varför om det funkar så bra med att skicka strängar? Jag implementerar gränssnittet Serializable i båda klasserna.
Hmm tjae...funkade inte så bra som jag trodde.
Jag körde min applet i appletviewern och då funkade allt som det skulle. Ett List objekt skapas i servleten, fylls med data och skickas till min applet.
Dock funkar det varken i exploder eller netscape??
LimeMedlem sedan sep. 2001961 inlägg Det har med Javas säkerhetstänk att göra. Du kan skicka ett objekt från en applet till en server (eller vice versa) och med det objektet göra dummheter...
/Lime
------------------
Praeterea conseo microsoftenem esse delendam.
- modernt latinskt ordspråk
spangoMedlem sedan juni 20008 205 inlägg Borde det inte ha att göra med att man kör olika jvm:er (och sannolikt även olika versioner av Java), och därmed olika implementationer av de olika klasserna?
------------------
You can be a coward for a few minutes, or dead forever. /Rincewind
LimeMedlem sedan sep. 2001961 inlägg Varför skulle man köra olika JVM:er på samma dator beroende på om man kör dom som applet i en browser eller som applet i appletviewern?
/Lime
------------------
Praeterea conseo microsoftenem esse delendam.
- modernt latinskt ordspråk
SPiNMedlem sedan mars 20007 896 inlägg Om man kör med appletviewern använder man vällan Sun's(Chansning...) JVM, som installerades med SDKn? Om man sedan kör IExplore, eller Netscape så använder man dessa programs inbyggda JVMer?
Inte helt säker att det är så här, men jag tycker att det låter rimligt :)
------------------
SPiN, bjorne.w@telia.com
-- Tekniska framsteg är som en yxa i händerna på en kriminell galning / Albert Einstein --
VetgirigMedlem sedan nov. 2000199 inlägg Håller med SPIN; de versioner webbläsarna stödjer är innan Java 2 så om den JVM man utvecklar i är senare än 1.1 så bör man ladda ner en tidigare och skriv koden för den.
Ett annat alternativ är att använda plug-ins för att få webbläsaren att stödja senare versioner av Java.
Problemet som uppkommer är när man försöker skicka ett objekt av en datatyp som bara finns eller är ändrad i JVM 2. Då får appleten någonting den inte stödjer JVMen får fnatt.
------------------
Anders Lindbäck,Igiro Internet Giro
[Redigerat av Vetgirig den 30 okt 2001]
SPiNMedlem sedan mars 20007 896 inlägg Är det viktigt att Appleten ska kunna stödja Java 2 kan du göra något sånt här på webbsidan som du lägger appleten på:
<font size="1" face="Verdana, Arial, Helvetica, sans-serif">Kod:<font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#666600">
<object classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" width="400" height="300" align="baseline" codebase="http://java.sun.com/j2se/1.3/jre/download-windows.html">
<param name="code" value="DINJAVAKLASS.class">
<param name="codebase" value=".">
<param name="type" value="application/x-java-applet;version=1.3">
<comment>
<embed type="application/x-java-applet;version=1.3" width="400" height="300" align="baseline" code="DINJAVAKLASS.class" codebase="." pluginspage="http://java.sun.com/j2se/1.3/jre/download-windows.html">
<noembed>
</comment>
Du måste ha Java 2 för att kunna köra den här appleten.
</noembed>
</embed>
</object>
------------------
SPiN, bjorne.w@telia.com
-- Tekniska framsteg är som en yxa i händerna på en kriminell galning / Albert Einstein --
[Redigerat av SPiN den 30 okt 2001]
LimeMedlem sedan sep. 2001961 inlägg Det finns inte en enda browser med inbyggd JVM. Både Nätskräp och Exploiter bygger på att man anropar underliggande JVM. Varför tror ni annars att Java-plug-in:en kom till? För att säkerställa att det finns en JVM som kan hantera 1.x där x är den version man behöver för att kunna köra appleten.
/Lime
------------------
Praeterea conseo microsoftenem esse delendam.
- modernt latinskt ordspråk
spangoMedlem sedan juni 20008 205 inlägg IE använder Microsnopps JVM om man inte explicit anger att det ska vara Java plugin som ska användas, och NS4 använder Symantec's JVM.
------------------
You can be a coward for a few minutes, or dead forever. /Rincewind