Avatar billede pondo Nybegynder
23. juli 2003 - 18:07 Der er 26 kommentarer og
1 løsning

Policy Fil ? kan ik få min applet til at vise et billede

Jeg har lavet en simpel applet der skal vise et billede
appletten hedder Book.java (Book.class) og billedet hedder Book.gif .
Har lavet denne policy fil men den virker ik:
Book.policy -->

grant
{
  permission java.io.FilePermission "${user.dir}\Book.gif, "read";
};

skal der skrives noget i appletten for at få den til at bruge min policy eller er det policy filen der er i udu

Please help me out here!! :-(
Avatar billede arne_v Ekspert
23. juli 2003 - 18:14 #1
Du bruger SUN JVM ?

Og den SUN JVM hvis policy fil du har rettet ?

Og Book.gif ligger i user.dir ?
Avatar billede pondo Nybegynder
23. juli 2003 - 18:17 #2
bruger den JVM der kom med min SDK og Together, og har ik rettet noget.. skal jeg rette noget nogen steder da.. har ik forstået hvordan den policy fil bruges eller oprettes. og billedet ligger sammen med siden og appletten hvilket jeg går ud fra er userdir.
Avatar billede arne_v Ekspert
23. juli 2003 - 18:36 #3
Ikke sikkert.

Du kan gente værdien med:

System.getProperty("user.dir")

i et program.
Avatar billede arne_v Ekspert
23. juli 2003 - 18:38 #4
Kører du appletten i Together eller i din browser ?
Avatar billede pondo Nybegynder
23. juli 2003 - 18:41 #5
virker fint i frontpage, men når den køres i en browser får jeg en fileread permission error DVS min policy fil bliver ikke brugt!!
og kører kun i browser.. det er jo der den skal virke
Avatar billede arne_v Ekspert
23. juli 2003 - 18:44 #6
Fornuftigt.

Men jeg nægter at tro på at din browser bruger den Java der er kommet
med Together.
Avatar billede arne_v Ekspert
23. juli 2003 - 18:45 #7
Hvis du bruger IE og ikke har gjordt noget så bruger du måske MS JVM
(og den er fra den yngre middelalder).

Men du kan checl om du har noget Java plugin i Control Panel.
Avatar billede pondo Nybegynder
23. juli 2003 - 18:47 #8
vel lige meget hvilken den bruger.. kan du fortælle mig hvorfor appletten ikke kører min policy fil? det er der den er gal. hvad skal jeg gøre for at gennemtvinge at den bruger den policy?
Avatar billede arne_v Ekspert
23. juli 2003 - 18:50 #9
En browser kører en bestemt JVM.

En JVM bruger den policy fil der hører til den.

D.v.s. at hvis din browser ikke bruger den JVM der er kommet
med together, så hjælper det jo ikke at rette i dens policy
fil - så skal du finde og rette i en anden policy fil.
Avatar billede pondo Nybegynder
23. juli 2003 - 18:53 #10
Du taler sort... som jeg skrev tidligere, så aner jeg ik hvad jeg skal gøre!
om jeg skal finde en fil og rette i den eller tilføje noge i min kode.
Men jeg kan da næsten gætte nu at du mener jeg skal finde en policy fil og rette i den.?!?
Avatar billede arne_v Ekspert
23. juli 2003 - 18:55 #11
1. Find ud af hvilken JVM din browser kører med

2. Find den på din PC

3. Ret policy til
Avatar billede arne_v Ekspert
23. juli 2003 - 18:57 #12
Avatar billede pondo Nybegynder
23. juli 2003 - 18:58 #13
får dette..
Sun Microsystems Inc. Java HotSpot(TM) Client VM 1.4.0-rc-b91
Sun Microsystems Inc. 1.4.0-rc
Avatar billede pondo Nybegynder
23. juli 2003 - 19:03 #14
prøv at se den her...
http://212.242.50.250/guestbook/index.htm

og har rettet min policy fil..
Avatar billede arne_v Ekspert
23. juli 2003 - 19:06 #15
OK, så bruger din browser en SUN JVM 1.4.0 !

SÅ er det en policy fil du skal rette i.

Og så er det kun et spørgsmål om at finde den rigtige.
Avatar billede pondo Nybegynder
23. juli 2003 - 19:10 #16
ok har nu lagt følgende ind i alle mine policy filer på min maskine..

grant {
  permission java.io.FilePermission ".\\*", "read";
};

og du kan jo se ved at checke linket over at det ik virker
Avatar billede arne_v Ekspert
23. juli 2003 - 19:31 #17
Øh - hvis jeg prøver linket så checker jeg om policy filen på min
PC er rettet. Hvilket den ikke er.
Avatar billede arne_v Ekspert
23. juli 2003 - 19:32 #18
Og jeg tror ikke at ".\\*" er den rette specifikation.

Det må være browserens default directory eller noget i den stil.
Avatar billede arne_v Ekspert
23. juli 2003 - 19:34 #19
Men nu kommer jeg også lige til at se ordet guestbook.

Du er opmærksom på at applets køres på klienterne d.v.s. at den
leder efter fil på klient PC'erne ?

(guestbook er jo normalt noget man vil have på server)
Avatar billede pondo Nybegynder
23. juli 2003 - 19:34 #20
kan du lave en applet der viser et billede i en browser.. ?
Avatar billede arne_v Ekspert
23. juli 2003 - 19:37 #21
Ja.

Og hvis billedet hentes fra samme server som appletten selv er hentet fra
så kræver det ingen ændringer til policy !
Avatar billede arne_v Ekspert
23. juli 2003 - 19:37 #22
Appletten har naturligvis ikke fil adgang til serveren så billedet
skal hentes med HTTP.
Avatar billede pondo Nybegynder
23. juli 2003 - 19:38 #23
kan du lave en lille applet med alt der skal bruges som du kan pakke og sende til mig... skal bare vise et lille billede i en browser ik andet?
Avatar billede arne_v Ekspert
23. juli 2003 - 19:40 #24
Det kan jeg godt.

Men det tager lige lidt tid - jeg skal have noget at spise.
Avatar billede arne_v Ekspert
23. juli 2003 - 21:26 #25
Demo:
  http://80.199.19.48/arne/eksperten/justonepicture/JustOnePicture.html

Java kode m.v.
  http://80.199.19.48/arne/eksperten/justonepicture/JustOnePicture.java

Og det er formentlig den grimmeste applet der nogensinde er lavet.

Men koden er ihvertfald til at overskue !
Avatar billede arne_v Ekspert
23. juli 2003 - 21:26 #26
Og et svar.
Avatar billede pondo Nybegynder
23. juli 2003 - 21:27 #27
Tusind tak.. kanont
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester