Avatar billede pnr Nybegynder
19. november 2003 - 13:29 Der er 15 kommentarer og
1 løsning

Applet kan ikke overføre filer fra ftp i browser

Jeg har en applet der fungere som ftp client, den virker fint i appletviewer, men når jeg afvikler den i internet explorer, virker kan den ikke overføre filer (den får forbundet til ftpserveren). Jag har skrevet det samme i den policy fil der ligger i j2sdk1.4.1_02\jre\lib\security
og progammer\java\j2re1.4.1_02\lib\security.

Jeg kan ikke helt se hvilken fejl jeg får, for den java-konsol skriver ikke noget.
Avatar billede arne_v Ekspert
19. november 2003 - 14:29 #1
Det er jo ikke nemt at gætte på hvad der kan være galt.

Skriver du noget console output ud ved alle fejl ?

try {
...
} catch (Exception e) {
  // gør ingenting
}

er jo ikke fejlfindings venlig.

e.printStackTrace();

er godt.

Ellers lig noget debug output ind og forsøg at find eud af hvad det er
der er galt.
Avatar billede pnr Nybegynder
19. november 2003 - 14:35 #2
ja jeg skriver System.println en del steder

og

e.printStackTrace

Men consol vinduet skriver ingenting overhovedet der står kun en lille menu
Avatar billede _carsten Nybegynder
19. november 2003 - 14:47 #3
Når du afvikler din applet i IE, har du sandsynligvis Java(kaffekops ikonen) liggende nede ved uret, højreklik på den og vælg 'Open console'
her skriver den fejlene.

Prøv at checke den.
Avatar billede pnr Nybegynder
19. november 2003 - 15:13 #4
Ja efter at have reinstalleret jdk virker den konsol, og jeg mangler nu endnu en tilladelse.

Jeg har givet lov til følgende i min java.policy:
grant codeBase "file:/c:/Test/" {
  permission java.io.FilePermission "<<ALL FILES>>", "write";
};
grant codeBase "file:/c:/inetpub/wwwroot/test/java" {
  permission java.io.FilePermission "<<ALL FILES>>", "write";
};
grant {
  permission java.net.SocketPermission "192.168.2.51:*", "connect,resolve,accept";


jeg får følgende fejl:
java.security.AccessControlException: access denied (java.io.FilePermission c:\test\86_36UF0009.jpg write)

Jeg synes da at jeg har givet den lov til at skrive i den mappe.
Avatar billede arne_v Ekspert
19. november 2003 - 15:21 #5
grant codeBase "file:/c:/Test/"

giver ikke rettigheder til C:\Test men rettigheder til kode der
ligger i C:\Test
Avatar billede arne_v Ekspert
19. november 2003 - 15:22 #6
Det afgørende er:

permission java.io.FilePermission "<<ALL FILES>>", "write";

specielt <<ALL FILES>> delen, hvor jeg ikke kan huske syntaxen for det.
Avatar billede pnr Nybegynder
19. november 2003 - 15:25 #7
Hvorfor virker det så med appletviewer?
Avatar billede arne_v Ekspert
19. november 2003 - 15:38 #8
Jeg tvivler på at appletviewer checker security på samme måde som
en browser.
Avatar billede pnr Nybegynder
19. november 2003 - 15:45 #9
Hvis jeg afvikler appletten fra mappen c:/test i internet Explorer virker det fint, kopiere jeg appletten ind i en mappe i wwwroot virker det ikke (på samme maskine)

Er der nogen der har en ide til hvordan jeg får gemt den fil
Avatar billede arne_v Ekspert
19. november 2003 - 15:48 #10
Der er ikke afsluttende slash på "file:/c:/inetpub/wwwroot/test/java"
Avatar billede pnr Nybegynder
19. november 2003 - 15:55 #11
Det var desværre ikke det
Avatar billede arne_v Ekspert
19. november 2003 - 16:00 #12
file:/c:/inetpub/wwwroot/test/java

Ligner mistænkeligt noget der hentes som:
  http://localhost/test/java

Er det korrekt ?

(i så fald er det naturligvis det der skal angives i codebase)
Avatar billede pnr Nybegynder
19. november 2003 - 16:15 #13
Du er for sej Arne_v!!!!!!!!!

Skal jeg så bare skrive URL'en når jeg ligger den på mit webhotel?

Hov smid lige et svar så skal du få nogle velfortjente point!
Avatar billede arne_v Ekspert
19. november 2003 - 16:18 #14
Ja.

JVM'en matcher den codebase URL med den URL som den har
hentet koden fra.
Avatar billede arne_v Ekspert
19. november 2003 - 16:19 #15
Men nu siger du web hotel.

Det siger jo internet.

Hvordan vil du få opdateret de policy filer ude hos brugerne ?
Avatar billede pnr Nybegynder
19. november 2003 - 16:22 #16
Der er kun der skal bruge den indtilvidere, men jeg må vel heller få den signeret. Er det nemt og er det gratis?
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