Foros del Web » Programación para mayores de 30 ;) » Java »

[SOLUCIONADO] Error servlet con struts

Estas en el tema de Error servlet con struts en el foro de Java en Foros del Web. Hola, estoy en la parte inicial de mi aplicación web (con servlets), he creado 2 páginas sencillas jsp, y la primera me carga perfectamente en ...
  #1 (permalink)  
Antiguo 27/01/2016, 04:26
 
Fecha de Ingreso: enero-2016
Mensajes: 25
Antigüedad: 8 años, 2 meses
Puntos: 0
Error servlet con struts

Hola,

estoy en la parte inicial de mi aplicación web (con servlets), he creado 2 páginas sencillas jsp, y la primera me carga perfectamente en cuanto arranco la aplicación pero el enlace entre ambas paginas no consigo que funcione...La relacion entre ellas tan solo es pulsando el botón Aceptar que tengo en la primera página para que se vaya a la segunda y me sale el siguiente error:

07-ene-2016 2:49:43 org.apache.tomcat.util.digester.SetPropertiesRule begin
ADVERTENCIA: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:PCliente' did not find a matching property.
07-ene-2016 2:49:43 org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jre6\bin;C:\WINDOWS\Sun\Java\bin;C:\WIN DOWS\system32;C:\WINDOWS;C:\Program Files\Java\jre6\bin\client;C:\Program Files\Java\jre6\bin;C:\WINDOWS\system32;C:\WINDOWS ;C:\WINDOWS\System32\Wbem;C:\Program Files\QuickTime\QTSystem\;.
07-ene-2016 2:49:43 org.apache.coyote.http11.Http11Protocol init
INFO: Inicializando Coyote HTTP/1.1 en puerto http-8080
07-ene-2016 2:49:43 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 478 ms
07-ene-2016 2:49:43 org.apache.catalina.core.StandardService start
INFO: Arrancando servicio Catalina
07-ene-2016 2:49:43 org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.18
07-ene-2016 2:49:43 org.apache.catalina.core.ApplicationContext log
INFO: Marcando el servlet SeleccionarSintomas como no disponible
07-ene-2016 2:49:43 org.apache.catalina.core.ApplicationContext log
GRAVE: Error loading WebappClassLoader
delegate: false
repositories:
/WEB-INF/classes/
----------> Parent Classloader:
org.apache.catalina.loader.StandardClassLoader@185 58d2
localhost.axis.services.SeleccionarSintomas
java.lang.ClassNotFoundException: localhost.axis.services.SeleccionarSintomas
at org.apache.catalina.loader.WebappClassLoader.loadC lass(WebappClassLoader.java:1387)
at org.apache.catalina.loader.WebappClassLoader.loadC lass(WebappClassLoader.java:1233)
at org.apache.catalina.core.StandardWrapper.loadServl et(StandardWrapper.java:1094)
at org.apache.catalina.core.StandardWrapper.load(Stan dardWrapper.java:992)
at org.apache.catalina.core.StandardContext.loadOnSta rtup(StandardContext.java:4058)
...
...
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootst rap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstr ap.java:413)
07-ene-2016 2:49:43 org.apache.catalina.core.StandardContext loadOnStartup
GRAVE: El Servlet /PCliente lanz� excepci�n de load()
java.lang.ClassNotFoundException: localhost.axis.services.SeleccionarSintomas
at org.apache.catalina.loader.WebappClassLoader.loadC lass(WebappClassLoader.java:1387)
at org.apache.catalina.loader.WebappClassLoader.loadC lass(WebappClassLoader.java:1233)
at org.apache.catalina.core.StandardWrapper.loadServl et(StandardWrapper.java:1094)
at org.apache.catalina.core.StandardWrapper.load(Stan dardWrapper.java:992)
at org.apache.catalina.core.StandardContext.loadOnSta rtup(StandardContext.java:4058)
at org.apache.catalina.core.StandardContext.start(Sta ndardContext.java:4371)
at org.apache.catalina.core.ContainerBase.start(Conta inerBase.java:1045)
at org.apache.catalina.core.StandardHost.start(Standa rdHost.java:719)
at org.apache.catalina.core.ContainerBase.start(Conta inerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(Stan dardEngine.java:443)
at org.apache.catalina.core.StandardService.start(Sta ndardService.java:516)
at org.apache.catalina.core.StandardServer.start(Stan dardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalin a.java:578)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknow n Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Un known Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootst rap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstr ap.java:413)
07-ene-2016 2:49:43 org.apache.catalina.core.ApplicationContext log
INFO: Marcando el servlet action como no disponible
07-ene-2016 2:49:43 org.apache.catalina.core.ApplicationContext log
GRAVE: Error loading WebappClassLoader
delegate: false
repositories:
/WEB-INF/classes/
----------> Parent Classloader:
org.apache.catalina.loader.StandardClassLoader@185 58d2
org.apache.struts.action.ActionServlet
java.lang.ClassNotFoundException: org.apache.struts.action.ActionServlet
at org.apache.catalina.loader.WebappClassLoader.loadC lass(WebappClassLoader.java:1387)
at org.apache.catalina.loader.WebappClassLoader.loadC lass(WebappClassLoader.java:1233)
at org.apache.catalina.core.StandardWrapper.loadServl et(StandardWrapper.java:1094)
at org.apache.catalina.core.StandardWrapper.load(Stan dardWrapper.java:992)
at org.apache.catalina.core.StandardContext.loadOnSta rtup(StandardContext.java:4058)
at org.apache.catalina.core.StandardContext.start(Sta ndardContext.java:4371)
at org.apache.catalina.core.ContainerBase.start(Conta inerBase.java:1045)
at org.apache.catalina.core.StandardHost.start(Standa rdHost.java:719)
at org.apache.catalina.core.ContainerBase.start(Conta inerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(Stan dardEngine.java:443)
at org.apache.catalina.core.StandardService.start(Sta ndardService.java:516)
at org.apache.catalina.core.StandardServer.start(Stan dardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalin a.java:578)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknow n Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Un known Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootst rap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstr ap.java:413)
07-ene-2016 2:49:43 org.apache.catalina.core.StandardContext loadOnStartup
GRAVE: El Servlet /PCliente lanz� excepci�n de load()
java.lang.ClassNotFoundException: org.apache.struts.action.ActionServlet
at org.apache.catalina.loader.WebappClassLoader.loadC lass(WebappClassLoader.java:1387)
at org.apache.catalina.loader.WebappClassLoader.loadC lass(WebappClassLoader.java:1233)
at org.apache.catalina.core.StandardWrapper.loadServl et(StandardWrapper.java:1094)
at org.apache.catalina.core.StandardWrapper.load(Stan dardWrapper.java:992)
at org.apache.catalina.core.StandardContext.loadOnSta rtup(StandardContext.java:4058)
at org.apache.catalina.core.StandardContext.start(Sta ndardContext.java:4371)
at org.apache.catalina.core.ContainerBase.start(Conta inerBase.java:1045)
at org.apache.catalina.core.StandardHost.start(Standa rdHost.java:719)
at org.apache.catalina.core.ContainerBase.start(Conta inerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(Stan dardEngine.java:443)
at org.apache.catalina.core.StandardService.start(Sta ndardService.java:516)
at org.apache.catalina.core.StandardServer.start(Stan dardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalin a.java:578)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknow n Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Un known Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootst rap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstr ap.java:413)
07-ene-2016 2:49:43 org.apache.coyote.http11.Http11Protocol start
INFO: Arrancando Coyote HTTP/1.1 en puerto http-8080
07-ene-2016 2:49:43 org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
07-ene-2016 2:49:43 org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/31 config=null
07-ene-2016 2:49:43 org.apache.catalina.startup.Catalina start
INFO: Server startup in 589 ms
07-ene-2016 2:50:03 org.apache.catalina.core.StandardWrapperValve invoke
INFO: El Servlet SeleccionarSintomas no est� disponible en este momento

El servlet de mi segunda página es "SeleccionarSintomas" y no consigo que me lo cargue, en el navegador me muestra un error "Estado HTTP 404":

type Informe de estado
mensaje No est� disponible el Servlet SeleccionarSintomas
descripci�n El recurso requerido (No est� disponible el Servlet SeleccionarSintomas) no est� disponible.

En mi web.xml tengo puesto:

<servlet>
<servlet-name>SeleccionarSintomas</servlet-name>
<servlet-class>localhost.axis.services.SeleccionarSintomas</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>SeleccionarSintomas</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>

En struts-config.xml tengo:

<action path="/PCliente/abrirEnfermedad"
type="localhost.axis.services.SeleccionarSintomas"
parameter="abrirEnfermedad">
<display-name>/PCliente/abrirEnfermedad</display-name>
<description>Recupera los datos del usuario autenticado contra el LDAP y lo carga en sesion</description>

<forward name="okSeleccionarSintomas"
path="/diagnostico.jsp"/>
</action>

Y en mi primera pagina jsp llamo al action así:

<form name="loginForm" method="post" action="/PCliente/abrirEnfermedad.do">

No sé ya por donde puede estar el error para que no pueda abrir mi segunda página jsp...

Agradecería todo tipo de ayuda ya que estoy desesperada y me urge....

Muchas gracias.
  #2 (permalink)  
Antiguo 27/01/2016, 11:29
Avatar de Profesor_Falken  
Fecha de Ingreso: agosto-2014
Ubicación: Mountain View
Mensajes: 1.323
Antigüedad: 9 años, 8 meses
Puntos: 182
Respuesta: Error servlet con struts

Buenas,

Si utilizas Struts solo deberias tener declarado el ActionServlet en el web.xml.
Despues todos tus actions los deberias tener declarados en el struts-config.

Puedes mostrar el codigo (al menos el comienzo) de la clase SeleccionarSintomas, para poder saber si se trata de un Servlet o de un Action?

Un saludo
__________________
If to err is human, then programmers are the most human of us
  #3 (permalink)  
Antiguo 31/01/2016, 14:04
 
Fecha de Ingreso: enero-2016
Mensajes: 25
Antigüedad: 8 años, 2 meses
Puntos: 0
Respuesta: Error servlet con struts

Buenas,

en primer lugar gracias por tu ayuda...

Te cuento, lo que tengo en mi clase SeleccionarSintomas es:

package localhost.axis.services;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

/**
* Servlet implementation class for Servlet: seleccionarSintomas
*
*/
public class SeleccionarSintomas extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {

/* (non-Java-doc)
* @see javax.servlet.http.HttpServlet#HttpServlet()
*/

/**
*
*/
private static final long serialVersionUID = 1L;

public void finalize() throws Throwable {
super.finalize();
}
public SeleccionarSintomas() {
super();
}

/* (non-Java-doc)
* @see javax.servlet.http.HttpServlet#doGet(HttpServletRe quest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
}

/* (non-Java-doc)
* @see javax.servlet.http.HttpServlet#doPost(HttpServletR equest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
}

public ActionForward abrirEnfermedad(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
throws Exception {

return mapping.findForward("okSeleccionarSintomas");
}
}


Es un servlet que dentro tiene el action "abrirEnfermedad" que declaramos en struts-config.xml...¿es así?
  #4 (permalink)  
Antiguo 03/02/2016, 11:05
Avatar de stone_neo  
Fecha de Ingreso: abril-2004
Ubicación: Peru
Mensajes: 438
Antigüedad: 20 años
Puntos: 15
Respuesta: Error servlet con struts

Hola que tal, para ayudarte tendria que ver un poco mas de tu codigo, pero a primera vista, tu clase SeleccionarSintomas debe extender a la clase Action de Struts

public class SeleccionarSintomas extends Action

Y en tu struts-config.xml deberia ir algo como esto

Código:
		
<action path="/PCliente/abrirEnfermedad"  type="localhost.axis.services.SeleccionarSintomas" parameter="abrirEnfermedad">
			<forward name="okSeleccionarSintomas" path="/diagnostico.jsp" redirect="false"/>
</action>
Si quieres puedes contactarme a mi gmail ([email protected]) y te ayudo a resolver tu problema.

Saludos
__________________
Rubén Darío Huamaní Ucharima
Web : http://www.gorilla-soft.com
Usuario Linux #382 100 :-)
  #5 (permalink)  
Antiguo 08/02/2016, 07:17
 
Fecha de Ingreso: enero-2016
Mensajes: 25
Antigüedad: 8 años, 2 meses
Puntos: 0
Respuesta: Error servlet con struts

Muchas gracias por tu ayuda!! No sabes cuanto la necesito...

Te cuento, puse lo que indicas y nada...tampoco...he probado mil cosas, llevo mas de 1 mes con esto...y nada, no sé por qué pasa, por mas que reviso todo están todos los ficheros correctamente....no se...

En realidad no me han especificado como debo implementar la interfaz, les da igual, asi que ya me estoy planteando el no meter struts...

¿me podrías indicar una manera fácil de implementar una interfaz en java, lo mas sencilla posible?

Si eso te añado al gmail y lo hablamos mejor....

Muchas gracias de nuevo!!
  #6 (permalink)  
Antiguo 10/02/2016, 15:15
Avatar de stone_neo  
Fecha de Ingreso: abril-2004
Ubicación: Peru
Mensajes: 438
Antigüedad: 20 años
Puntos: 15
Respuesta: Error servlet con struts

Que tal EstherSL, lograste solucionar tu tema. Si quieres puedes agregarme al gmail y lo vemos, enviame un MP si no tienes mi gmail para enviartelo.

Saludos
__________________
Rubén Darío Huamaní Ucharima
Web : http://www.gorilla-soft.com
Usuario Linux #382 100 :-)

Etiquetas: eclipse, jsp, servlet, struts
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:38.