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

[SOLUCIONADO] Problema con servlets

Estas en el tema de Problema con servlets en el foro de Java en Foros del Web. Hola estimados colegas. Les comento mi problema, Tengo un servidor con un Debian instalado, en dicho servidor tengo un Tomcat 7 con java 1.7.0_67-b01 Pero ...
  #1 (permalink)  
Antiguo 02/09/2014, 10:45
 
Fecha de Ingreso: enero-2012
Mensajes: 6
Antigüedad: 12 años, 3 meses
Puntos: 0
Pregunta Problema con servlets

Hola estimados colegas.
Les comento mi problema,

Tengo un servidor con un Debian instalado, en dicho servidor tengo un Tomcat 7 con java 1.7.0_67-b01

Pero estoy desarrollando en Windows mediante eclipse con un jdk build 1.7.0_67-b01

El problema es que cuando compilo y exporto el .war al servidor. La página JSP se carga bien. pero cuando se invoca al servlet surge el siguiente error.

Unsupported major.minor version 51.0 (unable to load class....

Para ser mas exactos el mensaje completo es:

type Exception report

message servlets/Turnos/altaTurnos : Unsupported major.minor version 51.0 (unable to load class servlets.Turnos.altaTurnos)

description The server encountered an internal error (servlets/Turnos/altaTurnos : Unsupported major.minor version 51.0 (unable to load class servlets.Turnos.altaTurnos)) that prevented it from fulfilling this request.

exception

java.lang.UnsupportedClassVersionError: servlets/Turnos/altaTurnos : Unsupported major.minor version 51.0 (unable to load class servlets.Turnos.altaTurnos)
org.apache.catalina.loader.WebappClassLoader.findC lassInternal(WebappClassLoader.java:2905)
org.apache.catalina.loader.WebappClassLoader.findC lass(WebappClassLoader.java:1170)
org.apache.catalina.loader.WebappClassLoader.loadC lass(WebappClassLoader.java:1678)
org.apache.catalina.loader.WebappClassLoader.loadC lass(WebappClassLoader.java:1556)
org.apache.catalina.authenticator.AuthenticatorBas e.invoke(AuthenticatorBase.java:461)
org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:98)
org.apache.catalina.valves.AccessLogValve.invoke(A ccessLogValve.java:927)
org.apache.catalina.connector.CoyoteAdapter.servic e(CoyoteAdapter.java:407)
org.apache.coyote.http11.AbstractHttp11Processor.p rocess(AbstractHttp11Processor.java:1002)
org.apache.coyote.AbstractProtocol$AbstractConnect ionHandler.process(AbstractProtocol.java:579)
org.apache.tomcat.util.net.JIoEndpoint$SocketProce ssor.run(JIoEndpoint.java:310)
java.util.concurrent.ThreadPoolExecutor.runWorker( ThreadPoolExecutor.java:1146)
java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:615)
java.lang.Thread.run(Thread.java:701)

Buscando en distintos foros y sitios de ayuda, dicen que mientras que el servidor tiene el java 1.6 y yo estoy compilando con java1.7 lo que produce dicho error, pero en ambos casos la version de java utilizada es 1.7. Si alguien tiene algun dato que me pueda ayudar estare agradecido..
  #2 (permalink)  
Antiguo 02/09/2014, 11:08
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 6 meses
Puntos: 454
Respuesta: Problema con servlets

Hola:

Ese error efectivamente es lo que has visto en foros, que el servidor tiene una versión de java más antigua que la que tú usas para compilar.

Es posible que tu debian tenga además del java 1.7 que tienes instalado alguna versión antigua de java y esté cogiendo esa por defecto. Revisa la variable PATH para ver de dónde coge el ejecutable java, mira JAVA_HOME ya que tomcat le hace caso, ejecuta en una bash/shell de debian java -version, para verificar la version, etc.

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 02/09/2014, 12:04
 
Fecha de Ingreso: enero-2012
Mensajes: 6
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: Problema con servlets

Hola Chiudiang y gracias por responderme tan rápido. paso acomentarte.
si hago java -version el comando devuelve:
java version "1.7.0_67"
java(TM) SE Runtime Environment (build 1.7.0_67-b01)
Java HotSpot(TM) Client VM (build 24.65-b04, mixed mode)

y ademas en la ruta /usr/lib/jvm encontré lo siguiente
default-java
java-6-openjdk-common
java-7-openjdk-i386
java-1.6.0-openjdk-i386
java-6-openjdk-i386
java-7-oracle.

La variable JAVA_HOME no estaba definida, así que la cree apuntando a /usr/lib/jvm/java-7-oracle y por las dudas reinicié el servidor. verifico que la variable permanesca pero sigo teniendo el mismo problema. ¿me estoy olvidando de algo?.. Muchas Gracias.
  #4 (permalink)  
Antiguo 02/09/2014, 13:34
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 6 meses
Puntos: 454
Respuesta: Problema con servlets

Tendrías que mirar los scripts de arranque o el log de arranque de tomcat, a ver de dónde están cogiendo java.

¿Cómo arranca tomcat? ¿Lo arrancas a mano con el mismo usuario con el que has verificado la versión de java o arranca como servicio/demonio del sistema? Las variables de entorno como JAVA_HOME o PATH pueden no ser las mismas.

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #5 (permalink)  
Antiguo 05/09/2014, 12:49
 
Fecha de Ingreso: enero-2012
Mensajes: 6
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: Problema con servlets

Estimados, ya encontré el problema, paso a comentar.
En el debian se había instalado la version 1.6 de java mientras que en la computadora que uso para desarrollar tengo el 1.7, asi que tuve que actualizar los repositorios de debian, agregando los de oracle y allí pude instalar la version 1.8, reinstalo el Tomcat y el mysql para que utilicen dicha version y voilá, quedo todo funcionando..
Agradezco a los que intentaron ayudarme.
Saludos.

Etiquetas: servlet, tomcat
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 22:20.