Privacidad: Recuerde que la información escrita en los foros de programación es 100% pública y que su ip será registrada asociada a su mensaje. Si encuentra un mensaje fuera de lugar, por favor, notifiquelo para su revisión y eliminación.
Ayuda con Struts
Enviado por antonioperez84 el día 25 de marzo de 2008
Hola a todos.
Estoy empezando una aplicación con Struts, con Tomcat 5.5 y Eclipse 3.1.2. Comienzo haciendo en una JSP una formulario (login), con la propiedad action = "login.do", con dos cajas, usuario y clave, y un boton "Aceptar". Tengo un Action en el struts-config el cual, cuando pulso el boton Aceptar, se va a la clase action, en este caso LoginAction.java, el cual redirecciono al forward "success" del struts-config, que va a exito.jsp.
El caso es que se me va a la ruta http://localhost:8080/Prueba/login.do y se me queda una pagina totalmente en blanco, cuando debería de ir a exito.jsp
He probado a cambiar mil cosas, el web.xml está correcto.
En breve meteré el código, porque ahora no lo tengo aquí, pero si me podéis adelantar algo, lo agradecería.
Creo que el fallo viene en que tu, dentro del ActionLogin haces esto:
FormularioLogin formu = new FormularioLogin();
pero asi no recoges lo que mandas desde index.jsp.
Tendrias que hacer esto:
FormularioLogin formu = form;
de esa forma recoges el ActionForm (es decir, la copia virtual del formulario).
Ademas, no sé si se podrá hacer asi, pero lo cierto es que en el web.xml tienes escrito:
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>/Prueba/*</url-pattern>
</servlet-mapping>
cuando debería poner:
<url-pattern>/Prueba/*.do</url-pattern>
Porque lo que queremos es que el servlet redirija cualquier action y dentro del mappings de los action ya es donde le indicamos a donde mandarle en funcion de si hemos tenido exito en nuestras instrucciones del action o no por medio del atributo forward del action correspondiente.
Enviado por antonioperez84 el día 21 de abril de 2008
Hola.
He hecho el cambio, pero ahora me da el siguiente error:
javax.servlet.jsp.JspException: Cannot find ActionMappings or ActionFormBeans collection
at org.apache.struts.taglib.html.FormTag.lookup(FormTag.java:798)
at org.apache.struts.taglib.html.FormTag.doStartTag(FormTag.java:506)
at org.apache.jsp.index_jsp._jspx_meth_form_form_0(org.apache.jsp.index_jsp:100)
at org.apache.jsp.index_jsp._jspService(org.apache.jsp.index_jsp:72)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(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.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:868)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:663)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Unknown Source)