Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    25

    [JSP] errorPage

    Salve a tutti ho u problema nel gestire le pagine di errore in jsp....
    in una pagina ho inserito
    <%@page errorPage="/error.jsp" session="false"%>

    di seguito č la pagina error.jsp
    <%@page isErrorPage="true"%>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>JSP Page</title>
    </head>
    <body>
    <h1>JSP Page</h1>
    </body>
    </html>

    praticamente vuota.
    Quando perō viene generata l'eccezione piuttoto che visualizzare error.jsp,il browser visualizza la classica pagina
    HTTP 500 -errore interno del server -Microsoft Internet Explorer
    Impossibile visualizzare la pagina
    etc etc

    sapete darmi qualche indicazione?? grazie

  2. #2
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    guarda cosa succede se non metti lo /
    (e poi leggi i log)

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    25
    non cambia niente!
    il prog fa quello che deve fare lancia l'eccezione(vedo che funziona leggendo la console di tomcat in netbeans)ma non mi parte la pagina di errore.Potrebbe essere un problema di internet Explorer??

  4. #4
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    posta l'eccezione

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    25
    dunque nella pagina jsp con il riferimento alla errorPage il punto
    che genera l'eccezione č questo

    <% if(userInfo.isValid()){
    if (userInfo.getIdentify()==0){
    gestoreDB.registraUtente();

    %>

    registra utente genera un'eccezione perchč io inserisco un username
    giā presente.
    La classe GesoreDB che ho creato per gestire il database lancia
    l'eccezione definita da me quando si verifica una sqlexception
    questo č il lancio dell'eccezione:
    throw new RegistrazioneFallita("Username giā presente")
    ora se ho capito bene quando viene chiamato il metodo registraUtente() ,viene intercettata l'eccezione e ci dovrebbe essere il redirect alla pagina error.jsp
    Invece quando viene riscontrato l'errore(cioč username giā esistente)il browser mi mostra la pagina di errore classica http 500 come se non trovasse error.jsp

    questa č l'eccezione che viene lanciata quando lo username č giā presente:
    eccezioni.RegistrazioneFallita: Username giā presente
    at mimmo.GestoreDB.registraUtente(GestoreDB.java:92)
    at org.apache.jsp.validazione_jsp._jspService(validaz ione_jsp.java:81)
    at org.apache.jasper.runtime.HttpJspBase.service(Http JspBase.java:99)
    at javax.servlet.http.HttpServlet.service(HttpServlet .java:802)
    at org.apache.jasper.servlet.JspServletWrapper.servic e(JspServletWrapper.java:325)
    at org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java:295)
    at org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java:245)
    at javax.servlet.http.HttpServlet.service(HttpServlet .java:802)
    at org.apache.catalina.core.ApplicationFilterChain.in ternalDoFilter(ApplicationFilterChain.java:252)
    at org.apache.catalina.core.ApplicationFilterChain.do Filter(ApplicationFilterChain.java:173)
    at org.netbeans.modules.web.monitor.server.MonitorFil ter.doFilter(MonitorFilter.java:362)
    at org.apache.catalina.core.ApplicationFilterChain.in ternalDoFilter(ApplicationFilterChain.java:202)
    at org.apache.catalina.core.ApplicationFilterChain.do Filter(ApplicationFilterChain.java:173)
    at org.apache.catalina.core.StandardWrapperValve.invo ke(StandardWrapperValve.java:214)
    at org.apache.catalina.core.StandardContextValve.invo ke(StandardContextValve.java:178)
    at org.apache.catalina.core.StandardHostValve.invoke( StandardHostValve.java:126)
    at org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:105)
    at org.apache.catalina.core.StandardEngineValve.invok e(StandardEngineValve.java:107)
    at org.apache.catalina.connector.CoyoteAdapter.servic e(CoyoteAdapter.java:148)
    at org.apache.coyote.http11.Http11Processor.process(H ttp11Processor.java:825)
    at org.apache.coyote.http11.Http11Protocol$Http11Conn ectionHandler.processConnection(Http11Protocol.jav a:738)
    at org.apache.tomcat.util.net.PoolTcpEndpoint.process Socket(PoolTcpEndpoint.java:526)
    at org.apache.tomcat.util.net.LeaderFollowerWorkerThr ead.runIt(LeaderFollowerWorkerThread.java:80)
    at org.apache.tomcat.util.threads.ThreadPool$ControlR unnable.run(ThreadPool.java:684)
    at java.lang.Thread.run(Thread.java:595)

    questa viene visualizzata sul browser se elimino dalla pagina jsp
    <%@page errorPage="error.jsp" %>
    altrimenti, ripeto, vedo la pagina di errore http 500 di explorer

    Spero di essermi riuscito a spiegare
    se vuoi ti allego i file....

  6. #6
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    forse ho capito cosa succede
    le pagine di errore devono essere dichiarate nel web.xml
    probabilmente lui prende l'eccezione e cerca tra le pagine una che vada bene, non la trova e spedisce l'errore al client
    metti questo nel web.xml
    <error-page>
    <exception-type>java.lang.Exception</exception-type>
    <location>error.jsp</location>
    </error-page>

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    25
    Provo a inserire quello che mi hai consigliato ma non mi valida il
    documento XML l'errore č:

    cvc-pattern-valid: Value 'error.jsp' is not facet-valid with respect to pattern '/.*' for type 'null'. [16]
    cvc-complex-type.2.2: Element 'location' must have no element [children], and the value must be valid. [16]

    questo č web.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    <session-config>
    <session-timeout>
    30
    </session-timeout>
    </session-config>
    <welcome-file-list>
    <welcome-file>
    index.jsp
    </welcome-file>
    </welcome-file-list>

    <error-page>
    <exception-type>java.lang.Exception</exception-type>
    <location>error.jsp </location>
    </error-page>

    </web-app>

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    25
    OK,ho modificato il file web xml come mi hai consigliato
    niente da fare

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    25
    problema risolto Ecco la soluzione spero sia di aiuto
    per i poveri disperati come me.
    Il problema č InternetExplorer.
    Basta eseguire le seguenti operazioni:
    Aprite il pannello di configurazione di IE: Strumenti > Opzioni Internet
    Scegliete la Scheda Avanzate
    Alla voce Esplorazione disattivare l'opzione Mostra Messaggi di Errore HTTP Brevi
    Applicate, chiudete il browser e riavviate

    Come per magia invece di venir fuori la pagina con codice di errore 500,viene fuori la mia pagina error.jsp.
    Per saperne di + vi rimando al link che mi ha illuminato

    www.weppos.com/asp/error/http_500_-_internal_server_error.asp

    Grazie cmq all'amico floyd.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.