JSP in / WEB-INF restituisce “Stato HTTP 404 La risorsa richiesta non è disponibile”

Ho creato un file JSP.

sample.jsp

     Insert title here   This is jsp program   

L’ho inserito qui nel progetto samplejsp .

 samplejsp `-- WebContent `-- WEB-INF `-- sample.jsp 

L’ho aperto sul seguente URL.

http://localhost:8080/samplejsp/sample.jsp

    Ma mostra il seguente errore nel browser.

    404 ERRORE

    La risorsa richiesta (/sample.jsp) non è disponibile.

    404 significa semplicemente “Non trovato” .

    O l’URL è sbagliato (nota: maiuscole e minuscole!), O la risorsa non è lì dove pensi che sia.

    Basta verificare l’URL e / o verificare se la risorsa è lì dove ci si aspetterebbe che fosse. Hai inserito sample.jsp nella cartella /WEB-INF . In questo modo non è accessibile al pubblico senza chiamare un servlet del controller anteriore.

    Mettilo fuori /WEB-INF .

     samplejsp `-- WebContent |-- WEB-INF `-- sample.jsp 

    Se si desidera mantenerlo in /WEB-INF , è necessario creare un servlet del controller anteriore che lo inoltra nel metodo doGet() come indicato di seguito.

     request.getRequestDispatcher("/WEB-INF/sample.jsp").forward(request, response); 

    Infine, “apri” il JSP semplicemente richiamando l’URL effettivo di servlet invece dell’URL fittizio di JSP.

    Guarda anche:

    • A cosa serve WEB-INF in un’applicazione web Java EE?
    • Chiamare servlet da JSP
    • doGet e doPost in Servlet

    È principalmente correlato alla struttura della directory o alla confezione.
    Puoi per favore aggiungere la struttura della tua directory?

    Simile a sotto –

     src |-html\ |-jsp\ 

    Forse questo dovrebbe farlo

     

    Modifica : WEB-INF non consente l’accesso diretto a JSP.