06. maj 2010 - 11:10Der er
11 kommentarer og 1 løsning
Tilgang til session i servlet
Jeg har lavet et større system i jsp-sider. Inde i scriplets tilgår jeg sessionen, hvori jeg har gemt data, som skal bruges til generering af siden.
Nu er jeg ved at flytte scriplet-koden ud i desiderede servletter. Så derfor vil jeg gerne tilgå sessionen i servletten. Dette er sådan set også meget godt. Problemet består i, at jeg tilgår filer på serveren. Dette virkede fint nok som scriplet-kode. Men i servletter er der vist ikke helt samme tilgang til File-klassen (selvom jsp og servletter jo er det samme?).
Fejlen kommer formentlig i: File file = new File(request.getSession().getServletContext().getRealPath("/") + newFileName);
Jeg har naturligvis en try-catch i servletten. Heri bliver der udskrevet: java.lang.IllegalStateException: ServletConfig has not been initialized
Hvorfor bliver servletConfig ikke initialiseret ved en servlet, men bliver derimod initialiseret i en jsp-side? Og hvordan løser jeg problemet?
Ja, jeg er ved at flytte alle scriptlets over i servletter, som så leverer koden. Jeg er ikke klar over, om dette kan sidestilles med at flytte koden ud i tags, men det opdeler da også koden fra designet...?
Det er også sådan, jeg har taget brug af dem. Men jeg var noget i tvivl, om jeg skulle generere hele jsp-siden i dem, da de jo giver mulighed for det. Og da view-jsp-siden jo også i bund og grund er en servlet. Men jeg valgte dog at opdele, så der er en servlet til view-delen og en til controller-delen.
Jeg har også en del javascript, som jeg skal have ryddet op i. Men de skal vel ikke refereres gennem tags? Skal det ikke bare flyttes ud i en js-fil, og så kaldes direkte?
En måde at bruge JavaScript (til AJAX) er at have den i eksterne .js filer og kalde den JavaScript kode.
En anden måde er at bruge tags som outputter JavaScript og på den måde ikke skrive en eneste linie JavaScript hverken i .jsp eller .js !
Synes godt om
Ny brugerNybegynder
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.