emmet Skrevet 12. mars 2008 Del Skrevet 12. mars 2008 Hei! Jeg åpner en side med URLConnection, men får ikke javascript til å kjøre skikkelig på den siden jeg åpner. utdrag av kode: URL u = new URL(urlstring); HttpURLConnection con = (HttpURLConnection)u.openConnection(); con.connect(); BufferedReader br = new BufferedReader(new InputStreamReader(con.getInputStream(), "ISO-8859-1")); String line; while ((line = br.readLine()) != null) { out.println(line); } Noen som vet hvordan jeg skal klare å få kjørt javascript på denne "undersiden"? Lenke til kommentar
___ Skrevet 12. mars 2008 Del Skrevet 12. mars 2008 Jeg ser ikke noe JavaScript-kode i ditt innlegg. Det er vanskelig å gjette seg til hva som er problemet, når du kommer med så lite detaljer. Werner Lenke til kommentar
steingrim Skrevet 12. mars 2008 Del Skrevet 12. mars 2008 Javascript kjøres på klienten. Hvis det ligger noe Javascript i html'en på den URLen du henter ned så er det DITT "ansvar" å kjøre den når det er du som lager klienten. Til vanlig er det nettleseren din som tolker og utfører Javascriptet... Det skjer ikke av seg selv. Lenke til kommentar
pgdx Skrevet 12. mars 2008 Del Skrevet 12. mars 2008 Hva er det egentlig du prøver å lage? Lenke til kommentar
emmet Skrevet 13. mars 2008 Forfatter Del Skrevet 13. mars 2008 har en onload="init();" i body-tagen på siden som hentes inn. Denne kjører igjen en del kode, og det er denne koden som ikke ser ut til å kjøre skikkelig. Siden (med javascript-kode) kjører som den skal når jeg åpner siden for seg selv, men ikke når jeg henter den inn med java-koden under. Kan dette skyldes måten jeg henter den med? Når jeg viser kildekode for siden (html) er den lik som uten java-inkludering. Javascriptet inneholder en del window. og document.-kode. Kan det være at dette blir feil siden den åpnes gjennom javakoden? Og evt. løsning? Lenke til kommentar
steingrim Skrevet 13. mars 2008 Del Skrevet 13. mars 2008 En ting du må forstå er når, hvordan og hvor Javascript kjøres. I koden du har limt inn i første post så henter du ned noe fra en URL. Dette "noe" er i dette tilfellet en html-side som inneholder Javascript. Du har ikke vist oss noe kode som forsøker å kjøre Javascriptet på denne html-siden. Er du sikker på at du har forståelse for hva det vil si at Javascript kjøres på klienten? Og hva en klient er? Og hvordan det skiller seg fra serveren? Tenk etter: hva er det koden i første post gjør og hvilken sammenheng har koden over med Javascript? (hint: ingen) Lenke til kommentar
___ Skrevet 13. mars 2008 Del Skrevet 13. mars 2008 JavaScript-kode, slik det benyttes i Web-sammenheng, er avhengig av en tolker for å kjøre. De fleste web-browsere inneholder en slik tolker. Når en web-browser finner en <script>-tag, tolkes og kjøres koden som er inne i denne tagen. I koden du viser oss, er det ingen slik tolkemekanisme. Det eneste koden din gjør, er å koble opp mot en HTTP-server, og skrive resultatet til out-strømmen. Ingen komponenter i koden din har noe forhold til JavaScript. Man kan kanskje si at det du holder på med nå, er å lage en primitiv Web-browser uten JavaScript-støtte. Ønsker du JavaScript-støtte, må du lage en tolker, eller bruke noe som finnes fra før, f.eks. Rhino: http://www.mozilla.org/rhino/ På meg virker det nesten som om du tror at JavaScript har noe med Java å gjøre. Jeg kan love deg at de to språkene ikke har noe som helst med hverandre å gjøre. Werner Lenke til kommentar
emmet Skrevet 13. mars 2008 Forfatter Del Skrevet 13. mars 2008 Takk takk wernie! Det ser ut til at rhino er akkurat det jeg trenger. ("...provide scripting to end users.") Har muligens forklart meg noe krøkkete over, for er klar over forkjellene osv, men håpet jo det var noe standard i java som fikset denne tolkemekanismen/end user-script-muligheten. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå