05. marts 2003 - 12:16
Der er
39 kommentarer og 1 løsning
problem med include
Jeg prøver at lave en include, men det syntes ikke at ville virke. <jsp:include page="/include/sessiontest.jsp"/>
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
05. marts 2003 - 12:20
#1
Prøv med ... <jsp:include flush="true" page="./include/sessiontest.jsp" />
05. marts 2003 - 12:21
#2
Det hjalp ikke :-(
05. marts 2003 - 12:25
#3
Kunne du uddybe "det syntes ikke at ville virke" lidt ? Får du en exception ? Hvis ja hvilken ?
05. marts 2003 - 12:29
#4
Der sker bare ikke det forventede <jsp:include flush="true" page="./include/sessiontest.jsp" /> Hvis jeg ligger indeholdet af include filen direkte ind på siden så virker det fint :-), men det ville jo være fedt bare at kunne genbruge den lille kodestump på andre sider
05. marts 2003 - 12:31
#5
Jeg skal da angive placeringen af include filen i forhold til hvor den fil den vil have den includeret i ligger, ikke sandt :-)
05. marts 2003 - 12:35
#6
Docs hos Sun siger: Description The <jsp:include> element allows you to include either a static or dynamic file in a JSP file. The results of including static and dynamic files are quite different. If the file is static, its content is included in the calling JSP file. If the file is dynamic, it acts on a request and sends back a result that is included in the JSP page. When the include action is finished, the JSP container continues processing the remainder of the JSP file. Hvis du outputter noget HTML i sessiontest.jsp kommer det så med ? [navnet antyder jo ligesom at det ikke er en HTML output JSP men snarere noget login test]
05. marts 2003 - 12:37
#7
Hvis den ikke kunne finde filen, så tror jeg du vil få en exception.
05. marts 2003 - 12:38
#8
Hvis jeg skriver noget html i includefilen kommer det fint med
05. marts 2003 - 12:38
#9
<% String brugernavn = (String)session.getAttribute("brugernavn"); if (brugernavn==null || brugernavn.equals("")) { response.sendRedirect("index.html"); } %> <p> teststfsjghvfjydxu </p>
05. marts 2003 - 12:45
#10
Altså kan den finde JSP filen. Men testet virker ikke rigtigt. Virker en unconditional redirect ?
05. marts 2003 - 12:47
#11
Det er jeg bange for at jeg ikke ved hvad er
05. marts 2003 - 12:47
#12
Kommer der en tekst med "link has moved" hvis du laver en redirect ?
05. marts 2003 - 12:48
#13
Ja - undskyld det engelske udtryk. unconditional = ingen if Altså: <% /* String brugernavn = (String)session.getAttribute("brugernavn"); if (brugernavn==null || brugernavn.equals("")) { */ response.sendRedirect("index.html"); /* } */ %>
05. marts 2003 - 12:50
#14
Der sker ikke en meter andet end at den sætte html'en ind
05. marts 2003 - 12:53
#15
HTML'en fra index.html ? Det er jo også det den skal ! Jævnfør den engelske beskrivelse ovenfor.
05. marts 2003 - 12:54
#16
nej, det html i jeg har i include filen for at se om den overhovedet kan finde den :-)
05. marts 2003 - 12:55
#17
OK. Det vil sige at den totalt ignorerer sendRedirect. Og at det ikke har noget med testet at gøre.
05. marts 2003 - 12:56
#18
Den ser tilsyneladende helt bort fra <% String brugernavn = (String)session.getAttribute("brugernavn"); if (brugernavn==null || brugernavn.equals("")) { response.sendRedirect("index.html"); } %>
05. marts 2003 - 12:57
#19
Vil du se hvordan det er meningen det skal virke :-)
05. marts 2003 - 12:57
#20
Bliver HTML fra hoved JSP siden efter include vit korrekt, når der sker en sendRedirect ?
05. marts 2003 - 12:58
#21
SendRedirect bliver aldrig udført
05. marts 2003 - 12:59
#22
Nej det behøver jeg ikke. Logikken er ganske standard: "hvis du er logget ind bliver du sendt til login siden".
05. marts 2003 - 12:59
#23
Du har vel ikke sat en try catch ind i din hoved JSP side ?
05. marts 2003 - 12:59
#24
Næ
05. marts 2003 - 13:02
#25
05. marts 2003 - 13:03
#26
Hele ideen er at du ikke skal kunne komme ind ved at trykke på denne link
05. marts 2003 - 13:07
#27
Det kan jeg også godt få til at virke. Jeg kan bare ikke få lov til at include den lille ting :-(
05. marts 2003 - 13:09
#28
Nu sker der præcis det som der skal. Det kunne bare være fedt at kunne include den lille kodestump
05. marts 2003 - 13:11
#29
som det ser ud nu ligger indholdet af includefilen på upload.jsp siden
05. marts 2003 - 13:11
#30
Det var jo ikke meningen :-)
05. marts 2003 - 13:17
#31
05. marts 2003 - 13:20
#32
Et af problemerne er at du skal enten sende HTML eller bruge sendRedirect. Det kan gå meget galt med begge dele. Så du må ikke outputte noget som helst inden sendRedirect og hvis den eksekveres må du heller ikke outputt HTML bagefter. Og ud fra det jeg kan læse, så kan man få "sære" problemer evt. også forskel på inline og include kode, hvis man ikke overholder den regel.
05. marts 2003 - 13:20
#33
Det er da rart at vide at man ikke er alene :-)
05. marts 2003 - 13:22
#34
Jeg tror bare jeg beholder det på upload.jsp siden. Det virker helt efter formålet.
05. marts 2003 - 13:23
#35
Det var ene og alene fordi det ville være fedt bare at include filen på de sider jeg vil beskytte
05. marts 2003 - 13:23
#36
Jeg tror at: <% if(!Support.sessioncheck(session, response)) return; %> i alle JSP og en Support klasse med: public static boolean sessioncheck(...) { if(...) { return true; } else { response.sendRedirect("..."); return false; } } måske var nemmere at få til at virke tilfredsstillende.
05. marts 2003 - 13:27
#37
Jeg er nu ret glad for den måde det virker på nu, det var bare den include som kunne have været smart
05. marts 2003 - 13:34
#38
Pointene er dine hvis du vil have dem. Du har jo svaret på mit spørgsmål
05. marts 2003 - 13:37
#39
Jeg er nu ikke selv helt tilfreds med mit "svar". Men point kan jo altid bruges.
05. marts 2003 - 13:38
#40
Hvorfor ikke. Det er da ikke din fejl at det ikke virker som det burde ;-)
Kurser inden for grundlæggende programmering