Hallelujamannen Skrevet 24. september 2007 Del Skrevet 24. september 2007 Jeg bruker en session for å definere en tekst som skal være dynamisk og være forskjellig i visse tilfeller. Problemet er at når jeg lager en funksjon slik: String visTekst(){ String ut = session.getAttribute("teksten"); if ( ut.equals("") ){ session.setAttribute( "teksten", "Fyll ut skjemaet for å registrere ny bruker:" ); } ut = session.getAttribute("teksten"); return ut; } så får jeg feilmelding om at session ikke er en definert variabel. Kan jeg ikke bruke session inne i en funksjon, eller hva er greia? Lenke til kommentar
backup Skrevet 25. september 2007 Del Skrevet 25. september 2007 At du får session som en ikke definert variable kan komme av at ditt script er et klientside-script (men hva vet jeg?). Tingen er nemlig at session er et serverside-objekt og kan således bare brukes i serverside-script. Videre må f.eks. i asp, funksjoner ligge inne i <script> .... </script> , men den sekvensielle kode legger man gjerne mellom <% .... %>. Lenke til kommentar
Hallelujamannen Skrevet 25. september 2007 Forfatter Del Skrevet 25. september 2007 Funksjonen ligger mellom <%! og %>, det er vel slik man kan definere funksjoner i jsp. Når jeg skal vise den fram skrives det slik: <%= visTekst(); %> Synes bare det er så rart, for lengre opp i koden kan jeg få tak i verdiene hvis jeg skriver session.getAttribute("teksten");, men her nede i funksjonen går ikke det... Alle funksjonene skrives i filer som ligger på en server som støtter jsp. Lenke til kommentar
backup Skrevet 25. september 2007 Del Skrevet 25. september 2007 ... fordi fordi funksjonen din ikke ligger mellom <script runat = Server> .... </script> vil jeg tro! Lenke til kommentar
Hallelujamannen Skrevet 25. september 2007 Forfatter Del Skrevet 25. september 2007 Jeg får dessverre opp samme feilmelding da: nybruker.jsp:132: Undefined variable or class name: session String ut = session.getAttribute("teksten"); Jeg vet ikke hva som er feil og jeg er ingen kløpper i jsp, jeg er på prøve/feile-stadiet. Du vet ikke tilfeldigvis om noen gode guider på innloggingsrutiner og sessions? Har bare funnet noen som dessverre ikke har vært så gode... Lenke til kommentar
backup Skrevet 25. september 2007 Del Skrevet 25. september 2007 Jeg tror session.getAttribute(...) hører hjemme i servlets (dvs laget med Java). Eksempel: http://www.exampledepot.com/egs/javax.servlet/State.html Her er noen eksempler på bruk av session-variabler i klassisk asp: <% 'initialisering session("x") = "Hallo drittsekk" 'over i y y = session("x") 'til html-strømmen response.write session("x") 'eller response.write (y) 'fjerne session-variabelen x session.Contents.Remove("x") %> Kort sagt, hvis du på serveren bruker klassisk asp, så bruk uttrykket: session("x") som referanse til session-variablen x eller det navnet du velger å bruke på variabelen. Hvis du bruker servlets, post gjerne spørsmålet ditt under java. 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å