Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    553

    Problema con framework Struts

    Quando eseguo la web application ottengo subito un errore INTERNAL SERVER ERROR 500. Perché? e come risolvo?

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254
    Quote Originariamente inviata da tulipan Visualizza il messaggio
    Quando eseguo la web application ottengo subito un errore INTERNAL SERVER ERROR 500. Perché? e come risolvo?
    È davvero troppo poco, detto così. Hai una pagina di errore che mostra un stack-trace? O hai del logging da qualche parte che puoi ispezionare?
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    553
    codice:
    <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
    <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %> 
    <%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %>
    <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>   
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Progetto Mercury</title>
    <link href="css/stile.css" type="text/css" rel="stylesheet"/>
    <script src="" type="text/javascript"></script>
    </head>
    <body>
    <center>
        <div id="form1">
    	<html:form action="/searchEvents" method="get">
    	<table border="1">
    		<h3>.: Ricerca Eventi :.</h3>
    		<tr><td><center>Zona</center></td><td><center>Tipo evento</center></td><td><center>Periodo</center></td></tr>
    		<tr><td><input type="radio" name="tipoprovenienza" value="comune" checked> Comune<br>
    		<input type="radio" name="tipoprovenienza" value="provincia"> Provincia<br>
    		<input type="radio" name="tipoprovenienza" value="regione"> Regione<br>
    		<html:text size="15" property="provenienza"/></td>
    		<td><select name="categoria">
    			<option value="film">Film</option>
    			<option value="concerto">Concerto</option>
    			<option value="teatro">Teatro</option>
    			<option value="mostra">Mostra</option>
    			</select></td>
    		<td>Inizio: <select name="giornoinizio">
    			<option value="01">1</option>
    			<option value="02">2</option>
    			<option value="03">3</option>
    			<option value="04">4</option>
    			<option value="05">5</option>
    			<option value="06">6</option>
    			<option value="07">7</option>
    			<option value="08">8</option>
    			<option value="09">9</option>
    			<option value="10">10</option>
    			<option value="11">11</option>
    			<option value="12">12</option>
    			<option value="13">13</option>
    			<option value="14">14</option>
    			<option value="15">15</option>
    			<option value="16">16</option>
    			<option value="17">17</option>
    			<option value="18">18</option>
    			<option value="19">19</option>
    			<option value="20">20</option>
    			<option value="21">21</option>
    			<option value="22">22</option>
    			<option value="23">23</option>
    			<option value="24">24</option>
    			<option value="25">25</option>
    			<option value="26">26</option>
    			<option value="27">27</option>
    			<option value="28">28</option>
    			<option value="29">29</option>
    			<option value="30">30</option>
    			<option value="31">31</option>
    			</select>
    		<select name="meseinizio">
    			<option value="01">Gennaio</option>
    			<option value="02">Febbraio</option>
    			<option value="03">Marzo</option>
    			<option value="04">Aprile</option>
    			<option value="05">Maggio</option>
    			<option value="06">Giugno</option>
    			<option value="07">Luglio</option>
    			<option value="08">Agosto</option>
    			<option value="09">Settembre</option>
    			<option value="10">Ottobre</option>
    			<option value="11">Novembre</option>
    			<option value="12">Dicembre</option>
    			</select>
    			<select name="annoinizio">
    			<option value="2016">2016</option>
    			<option value="2017">2017</option>
    			<option value="2018">2018</option>
    			<option value="2019">2019</option>
    			<option value="2020">2020</option>
    			</select><br>
    			Fine: <select name="giornofine">
    			<option value="01">1</option>
    			<option value="02">2</option>
    			<option value="03">3</option>
    			<option value="04">4</option>
    			<option value="05">5</option>
    			<option value="06">6</option>
    			<option value="07">7</option>
    			<option value="08">8</option>
    			<option value="09">9</option>
    			<option value="10">10</option>
    			<option value="11">11</option>
    			<option value="12">12</option>
    			<option value="13">13</option>
    			<option value="14">14</option>
    			<option value="15">15</option>
    			<option value="16">16</option>
    			<option value="17">17</option>
    			<option value="18">18</option>
    			<option value="19">19</option>
    			<option value="20">20</option>
    			<option value="21">21</option>
    			<option value="22">22</option>
    			<option value="23">23</option>
    			<option value="24">24</option>
    			<option value="25">25</option>
    			<option value="26">26</option>
    			<option value="27">27</option>
    			<option value="28">28</option>
    			<option value="29">29</option>
    			<option value="30">30</option>
    			<option value="31">31</option>
    			</select>
    		<select name="mesefine">
    			<option value="01">Gennaio</option>
    			<option value="02">Febbraio</option>
    			<option value="03">Marzo</option>
    			<option value="04">Aprile</option>
    			<option value="05">Maggio</option>
    			<option value="06">Giugno</option>
    			<option value="07">Luglio</option>
    			<option value="08">Agosto</option>
    			<option value="09">Settembre</option>
    			<option value="10">Ottobre</option>
    			<option value="11">Novembre</option>
    			<option value="12">Dicembre</option>
    			</select>
    			<select name="annofine">
    			<option value="2016">2016</option>
    			<option value="2017">2017</option>
    			<option value="2018">2018</option>
    			<option value="2019">2019</option>
    			<option value="2020">2020</option>
    			</select></td></tr>
    		</table>
    		<br><center><input type="submit" value="Cerca nel periodo" id="submit"></center>
    		<script type="text/javascript">
    		      $(function(){
    		    	  $('#submit').click(function(){
    		    		  $('#form1').append('<img src="img/load.gif" alt="loading" id="loading" />');
    		    		  var zona=$('#zona').val();
    		    		  var tipoEvento=$('#tipoprovenienza').val();
    		    		  var periodo=$('#provenienza').val();
    		    		  $.ajax({
    		    			  url:'registrazione.jsp',
    		    			  type:'GET',
    		    			  data:'zona='+zona+'&tipoEvento='+tipoEvento+'&periodo='+periodo,
    		    		   success:function(res){
    		    			   $('#form1').append('<p id="risposta">'+res+'</p>');
    		    			   $('#loading').fadeOut(800,function(){
    		    				   $(this).remove();
    		    			   });
    		    		   }
    		    		  });
    		    	  return false; 	  
    		    	  })
    		      });   
    		</script>
    	</html:form>
    	</div>
    	<!-- div id="form2">
    	<html:form action="/searchDay" method="get">
    	<input type="submit" value="Cerca tra gli eventi del giorno">
    	</html:form>
    	</div>
    <br><hr>
        <div id="form3">
    	<html:form action="/createUser" method="post">
    	<table>
    		<h3>.: Accedi :.</h3>
    		<tr><td><label for="Username">Username:</label></td><td><html:text size="20" property="user"/></td></tr> 
    		<tr><td><label for="Password">Password:</label></td><td><input type="password" size="20" name="pass"/></td></tr>
    		<tr><td><input type="submit" value="Entra"></td><td><a href="http://localhost:8080/mercury/jsp/registrazione.jsp">Registra un nuovo account</a></td></tr>
    	</table>
    	</html:form>
    	</div>
    <br><hr>
        <div id="form4">
    	<html:form action="/createNewsLetter" method="get">
    	<table>
    		<h3>.: Iscriviti alla newsletter :.</h3>
    		<tr><td>Email:</td><td><input type="email" size="30" name="email"/></td></tr>
    		<tr><td>Cadenza:</td>
    		<td><select name="cadenza">
    		<option value="giornaliera">Giornaliera</option>
    		<option value="settimanale">Settimanale</option>
    		<option value="mensile">Mensile</option>
    		</select></td></tr>
    		<tr><td>Zona:</td>
    		<td><input type="radio" name="tipoprovenienza" value="comune" checked> Comune<br>
    		<input type="radio" name="tipoprovenienza" value="provincia"> Provincia<br>
    		<input type="radio" name="tipoprovenienza" value="regione"> Regione<br>
    		<input type="text" size="15" name="provenienza"></td></tr>
    		<tr><td>Categoria:</td>
    		<td><select name="categoria">
    			<option value="film">Film</option>
    			<option value="concerto">Concerto</option>
    			<option value="teatro">Teatro</option>
    			<option value="mostra">Mostra</option>
    			</select></td></tr>
    		<tr><td><input type="submit" value="Registra"></td></tr>
    	</table>
    	</html:form >
        </div-->
    </center>
    
    
    </body>
    </html>

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    553
    HTTP Status 500 – Internal Server Error


    Type Exception Report
    Message javax.servlet.jsp.JspException: Cannot retrieve mapping for action: "/searchEvents"
    Description The server encountered an unexpected condition that prevented it from fulfilling the request.
    Exception
    javax.servlet.ServletException: javax.servlet.jsp.JspException: Cannot retrieve mapping for action: "/searchEvents"
    org.apache.jasper.runtime.PageContextImpl.doHandle PageException(PageContextImpl.java:909)
    org.apache.jasper.runtime.PageContextImpl.handlePa geException(PageContextImpl.java:838)
    org.apache.jsp.index_jsp._jspService(index_jsp.jav a:180)
    org.apache.jasper.runtime.HttpJspBase.service(Http JspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet .java:742)
    org.apache.jasper.servlet.JspServletWrapper.servic e(JspServletWrapper.java:443)
    org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java:385)
    org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java:329)
    javax.servlet.http.HttpServlet.service(HttpServlet .java:742)
    org.apache.tomcat.websocket.server.WsFilter.doFilt er(WsFilter.java:52)
    Root Cause
    javax.servlet.jsp.JspException: Cannot retrieve mapping for action: "/searchEvents"
    org.apache.struts.taglib.html.FormTag.lookup(FormT ag.java:862)
    org.apache.struts.taglib.html.FormTag.doStartTag(F ormTag.java:488)
    org.apache.jsp.index_jsp._jspx_meth_html_005fform_ 005f0(index_jsp.java:202)
    org.apache.jsp.index_jsp._jspService(index_jsp.jav a:141)
    org.apache.jasper.runtime.HttpJspBase.service(Http JspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet .java:742)
    org.apache.jasper.servlet.JspServletWrapper.servic e(JspServletWrapper.java:443)
    org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java:385)
    org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java:329)
    javax.servlet.http.HttpServlet.service(HttpServlet .java:742)
    org.apache.tomcat.websocket.server.WsFilter.doFilt er(WsFilter.java:52)
    Note The full stack trace of the root cause is available in the server logs.

    Apache Tomcat (TomEE)/8.5.20 (7.0.4)


  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    553
    struts-config.xml
    codice:
    <form-bean name="eventoForm" type="form.EventoForm"/>
    </form-beans>
    <action-mappings>
    <action path="/searchEvents" type="action.SearchEventsAction" name="eventoForm" scope="request">
     <forward name="success" path="/jsp/utente/ricercaEventoOk.jsp" />
     <forward name="error" path="/jsp/utente/ricercaEventoKo.jsp" />  
    </action>
    <action path="/index" type="action.LoginAction" name="loginForm" scope="request">
     <forward name="success" path="/jsp/utente/createUtenteOk.jsp" />
     <forward name="error" path="/jsp/utente/createUtenteKo.jsp" />
    </action>
    
    
    <action path="/searchDay" type="action.SearchEventsAction" name="eventoForm" scope="request">
     <forward name="success" path="/jsp/utente/ricercaEventoOk.jsp" />
     <forward name="error" path="/jsp/utente/ricercaEventoKo.jsp" />  
    </action>
    </action-mappings>
    <global-exceptions>
    <exception key="some.key" type="java.lang.NullPointerException" path="/jsp/errors/null.jsp"/>
    </global-exceptions>
    <message-resources parameter="MessageResources" null="true"/>
    </web-app>

  6. #6
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254
    Quote Originariamente inviata da tulipan Visualizza il messaggio
    javax.servlet.jsp.JspException: Cannot retrieve mapping for action: "/searchEvents"
    Sono anni (molti) che non uso Struts, ma l'errore è quello indicato. Quindi presumo che nella configurazione di Struts manchi qualcosa per gestire questa action.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    553
    come puoi vedere nel file struts-config.xml la action /searchEvents viene gestita...ecco il motivo per cui ho deciso di scrivere su un forum.

    <actionpath="/searchEvents"type="action.SearchEventsAction"name="eventoForm"scope="request">
    <forwardname="success"path="/jsp/utente/ricercaEventoOk.jsp"/>
    <forwardname="error"path="/jsp/utente/ricercaEventoKo.jsp"/>
    </action>

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 © 2024 vBulletin Solutions, Inc. All rights reserved.