Avatar billede stigc Nybegynder
08. maj 2003 - 09:18 Der er 20 kommentarer og
1 løsning

response.end

Hvordan ser det ud i jsp?
Avatar billede disky Nybegynder
08. maj 2003 - 09:22 #1
Hvad tænker du på ?
Avatar billede stigc Nybegynder
08. maj 2003 - 09:24 #2
Jeg vil gerne stoppe siden, så der ikke sendes mere til klienten.
Avatar billede arne_v Ekspert
08. maj 2003 - 09:26 #3
return måske ?
Avatar billede disky Nybegynder
08. maj 2003 - 09:28 #4
Du lader bare være med at sende mere til clienten.
Din JSP side bliver af serveren lavet om til en Servlet, og når JSP siden er færdig bliver data sendt.
Avatar billede stigc Nybegynder
08. maj 2003 - 09:29 #5
return virker, men er der kode efter, så giver compileren en fejl med "unreachable code.."

Er det den eneste løsning så dette?

if (true) return;
Avatar billede medions Nybegynder
08. maj 2003 - 09:31 #6
disky/arne_v> Response.End() i ASP, stopper alt eksekvering af kode neden under den komando, så det er ikke return der er svaret!

//>Rune
Avatar billede arne_v Ekspert
08. maj 2003 - 09:31 #7
Hvis du unconditional vil stoppe midt i siden - hvorfor sletter du så ikke
bare alt efter det sted ?

Hvis det er conditional du vil stoppe så bør return virke.
Avatar billede arne_v Ekspert
08. maj 2003 - 09:32 #8
ASP ?
Avatar billede disky Nybegynder
08. maj 2003 - 09:32 #9
Jeg skal ikke kunne udelukke noget lignende i JSP, men har aldrig haft brug for det.

Laver man ordentligt JSP design har man al funktionalitet i en klasse, og laver højest metode kald fra JSP'siden, men det pæneste er slet ingen funktionalitet i JSP siden.

Så all utidig afslutning af kode ordnes med en return;
Avatar billede disky Nybegynder
08. maj 2003 - 09:33 #10
arne:
ASP er microsoftes JSP, det kaldes Active Server Pages
Avatar billede disky Nybegynder
08. maj 2003 - 09:35 #11
stigc:
Du kan også lave det som metoder i JSP siden, og så kalde return fra dem.
Men pænt design er det bestemt ikke.
Avatar billede arne_v Ekspert
08. maj 2003 - 09:35 #12
disky>

Jeg ved godt hvad ASP står for.

Jeg undrer mig lidt over hvorfor eksistensen af End i ASP gør at
return ikke er svaret i JSP.
Avatar billede arne_v Ekspert
08. maj 2003 - 09:40 #13
Dit bedste bud på at stoppe output men fortsætte eksekvering er
nok:

<%
out.close();
%>

Den lukker JspWriter'eren.

Problemet er hvis den giver IOException.

Docs skriver ikke noget om det.

Men jeg testede lige på Tomcat - ingen IOException.
Avatar billede arne_v Ekspert
08. maj 2003 - 09:41 #14
Så check lige på din server inde du bruger out.close().

:-)
Avatar billede arne_v Ekspert
08. maj 2003 - 09:41 #15
Jeg ville bruge return.
Avatar billede arne_v Ekspert
08. maj 2003 - 09:41 #16
Og et svar.
Avatar billede stigc Nybegynder
08. maj 2003 - 09:44 #17
Det er da ikke til den endelig kode, men "response.end" er nu rart når man debugger. Jeg bruger nu bare "if (true) return;"
Avatar billede disky Nybegynder
08. maj 2003 - 09:50 #18
arne: Selvfølgelig virker return ikke.

<%
String test="Se selv";
return;
if(test.equals(""))
{
}
%>

If sætningen kan aldrig nåes, det er almindelig java at den fejler compilingen.


stigc:
En bedre måde at debugge på er at udskrive til err streamen.
Avatar billede arne_v Ekspert
08. maj 2003 - 09:56 #19
disky>

Stig har fundet workarounden.
Avatar billede disky Nybegynder
08. maj 2003 - 09:59 #20
det ved jeg godt, synes bare lige du skulle se hvorfor return ikke virker, med en return alene.
Avatar billede geforce3 Praktikant
11. maj 2003 - 21:17 #21
http://www.eksperten.dk/bruger.phtml?navn=stigc&option=24
Hvad med at lukke et par spørgsmål du har 2000point ude!
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