Det första exemplet är ett kör fel (dvs det uppkommer när du kör sidan), det andra exemplet är ett kompilerings fel. Om det är ett kompilerings fel så är inte sidan kompilerad och då vet den inte att det finns en fel sida :)
/Viktor
2 svar · 205 visningar · startad av Jaar
Jag har en liten testsida som jag försöker använda för att koppla till en errorsida
<%@ page errorPage="error.jsp"%>
<%
String strTest = request.getParameter("test");
if(5/0 > 5)
{
out.println("testar");
}
else
{
out.println("testar2");
}
%>
Eftersom 5/0 inte går så kommer man till error.jsp som man ska.
Skriver jag därimot
<%@ page errorPage="error.jsp"%>
<%
String strTest = request.getParameter("test");
if(unknownVariable.getValue())
{
out.println("testar");
}
else
{
out.println("testar2");
}
%>
Så får jag ett jsp error.... varför skickas jag inte till error.jsp i det fallet?!
Meningen är att jag ska ta reda på när det sker ett fel med en böna och webservern tappar sin path. Det händer ibland. Då får man ett error och min plan är att man ska komma till en "ursäkta att det inte funkar"-sida...
När kan man köra "errorpage" och när kan man inte?
Det första exemplet är ett kör fel (dvs det uppkommer när du kör sidan), det andra exemplet är ett kompilerings fel. Om det är ett kompilerings fel så är inte sidan kompilerad och då vet den inte att det finns en fel sida :)
/Viktor
Så man kan inte upptäcka i koden om en klass saknas?
Det går inte att lägga någon try - catch sak runt det eller liknande?
Grejjen är att min webserver beter sig underligt och att den vid vissa tidpunkter inte finner vissa klasser (som den kört på i flera veckor).
Jag är inte säker, men jag tror det händer när jag updaterar andra sidor (applications) på webservern.
Tycker det hela är lite skumt och skulle gärna vilja ha en lösning på hur man kan snappa upp felet och hantera det. Det är inte så snyggt som det är nu :/