Eclipse y Tomcat

Antiguamente si queríamos integrar Tomcat en Eclipse teníamos que recurrir a algún plugin, como Sysdeo Eclipse Tomcat Launcher. Actualmente, con Eclipse Ganymede (Eclipse 3.4) eso ya no es necesario y podemos iniciar y parar Tomcat o depurar el código desde Eclipse.

Eclipse y Tomcat

Veamos los pasos a seguir para lograr esta interacción.

  1. Descargamos Eclipse desde su página web. La versión que nos interesa, dado que vamos a desarrollar con JEE, es la llamada Eclipse IDE for Java EE Developers (163 MB)
  2. Descargamos y descomprimimos el zip de la última versión core de Tomcat.
  3. Iniciamos Eclipse. Nos dirigimos a Window -> Preferences -> Server -> Runtime Environment, pulsamos Add y seleccionamos nuestra versión de Tomcat. Marcamos Create a new local server si no está seleccionado.
  4. Pulsamos Next y buscamos el directorio en el que instalamos Tomcat. Pulsamos Finish y OK. El nuevo servidor debería mostrarse en la pestaña Servers. También se habrá creado un proyecto nuevo Servers con los archivos de configuración de nuestra instancia de Tomcat.
  5. Ahora vamos a probar el servidor creando una pequeña aplicación web. Seleccionamos File -> New -> Dynamic Web Project, rellenamos el nombre que queramos darle a la aplicación y pulsamos Finish.
  6. Hacemos clic con el botón derecho sobre la carpeta WebContent de nuestro nuevo proyecto y seleccionamos New -> JSP. Le damos como nombre index.jsp y pulsamos Finish. No necesitamos hacer nada más, puesto que el descriptor de despliegue que se crea por defecto ya indica que index.jsp es uno de los welcome-file.
  7. Sustituimos el contenido de index.jsp por el siguiente, que debería mostrar la cabecera User-Agent, con la información del navegador
  8. <html>
    <body>
    Tu navegador es <%= request.getHeader("user-agent") %>
    </body>
    </html>
  9. Arrastramos el proyecto desde el explorador de proyectos al servidor Tomcat en la pestaña Servers para asociarlo.
  10. Hacemos clic con el botón derecho sobre el servidor y seleccionamos Start.
  11. Abrimos la página http://localhost:8080/nombre_aplicacion/. Si todo ha funcionado correctamente deberíamos ver nuestro user-agent en pantalla
  12. Desarrollamos nuestra aplicación usando JSP, Servlets, JDBC, Hibernate, o cualquier otra tecnología que nos interese.
  13. Una vez terminada la aplicación solo resta crear un archivo WAR para poder distribuirla fácilmente. Hacemos clic con el botón derecho sobre nuestro proyecto, seleccionamos Export -> WAR File, e introducimos el nombre a utilizar y la ruta en la que queramos guardar el WAR.

Comentarios
  1. Yo siempre usaba el plugin de Lomboz.. que agusto.. porque siempre era una jodienda andar teniendo que instalar plugins.. al final me pasé a NetBeans..

    Responder

  2. Nunca me he animado con el Eclipse, a pesar de que todos hablan maravillas de él… También soy de Netbeans

    Responder

  3. @Zootropo me he acordado de una cosa, y los escritorios de enero?

    Responder

  4. Manco

    Esa opción existe desde Eclipse 3.2 (Callisto), y el funcionamiento ha sido muy parecido desde entonces.

    Responder

  5. @ToRA pues me había olvidado totalmente… habrá que saltar directamente a Febrero 😛

    @Manco s,i ya se que lleva un tiempo, no me refería a que solo se pudiera con la 3.4. Aunque no sabía desde qué versión estaba, gracias 🙂

    Responder

  6. […] Tomcat A partir de ahora, con la nueva versión de Eclipse no será necesario instalar ningún plugin para integrar Tomcat. Sólamente hay que realizar unos sencillos pasos que detallan en Mundo Geek – Eclipse y Tomcat. […]

    Responder

  7. Cierto, existía ya antes, yo con Eclipse Europa también lo hacía.

    Responder

  8. Decir que con versiones anteriores a Eclipse Ganymede tambien se puede.

    Saludos

    Responder

  9. […] web, como Tomcat. Para ver cómo integrar tu servidor en Eclipse puedes consultar la entrada Eclipse y Tomcat, adaptando los pasos necesarios en caso de utilizar un servidor […]

    Responder

  10. Tom

    Hola. Tengo una duda… Al llegar el paso 10 de esta explicación me sale un mensaje de error tal que así:

    Estado HTTP 404 – /prueba/

    type Informe de estado

    mensaje /prueba/

    descripci�n El recurso requerido (/prueba/) no est� disponible.

    ¿A qué puede deberse? Muchas gracias.

    Responder

  11. El error 404 es que no se ha encontrado el recurso. Es decir, que no existe ninguna carpeta “prueba” en el servidor, o bien no existe index.jsp.

    Responder

  12. Tom

    Vaya. Estaba colocando la carpeta donde no era :S… Siento mi torpeza. Muchas gracias por contestar tan rápido.

    Responder

    • jose miguel

      No entiendo, yo estoy creando aplicaciones dinamicas web, y solo me funcionan si creo el index.jsp, pero no lo quiero crear y entonces me sale el error 404. Mi proyecto tambien se llama prueba, ¿que carpetas tengo que crear?
      Gracias

      Responder

  13. Victor

    Todos los pasos lo puedo realizar solo que cuando quiero arrastrar mi proyecto a la carpeta de server no lo pasa y cuando ejecuto el proyecto pues me dice que no encuentra el proyecto, k puedo hacer gracias

    Responder

  14. Timbal

    Hola tengo una duda yo también, al llegar al paso 3 de la explicación no me muestra que pueda añadir nada de tomcat, sólo los básicos. A que puede ser debido?

    Gracias.

    Responder

  15. Juan F

    Hola tengo una pregunta. Puedo configurar en el eclipse un tomcat que no esté instalado en la misma máquina donde fucniona el eclipse?. Si es así como puedo hacerlo.

    Gracias..

    Responder

  16. Chema

    Buenos dias,

    simple,claro y conciso : muchas gracias!

    Responder

  17. SilentSei

    Pues a mi no me funciona. En la carpeta webapps del Tomcat tengo una carpeta prueba con la aplicación y no me muestra nada…bueno, sí, el 404. Hace falta que la aplicación se llame igual que el nombre de proyecto?

    Responder

    • renton

      El post es muy bueno , aunque falta una mínima parte la copiaré.
      la he sacado de un WEB, espero te sirva,
      tienes que copiar el contenido de la carpeta ROOT
      de apache al directorio que te indica.

      Saludos

      http://www.coreservlets.com/Apache-Tomcat-Tutorial/tomcat-7-with-eclipse.html

      “Eclipse forgets to copy the default apps (ROOT, examples, etc.) when it creates a Tomcat folder inside the Eclipse workspace. Go to C:\apache-tomcat-7.0.4\webapps, R-click on the ROOT folder and copy it. Then go to your Eclipse workspace, go to the .metadata folder, and search for “wtpwebapps”. You should find something like your-eclipse-workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps (or …/tmp1/wtpwebapps if you already had another server registered in Eclipse). Go to the wtpwebapps folder, R-click, and paste ROOT (say “yes” if asked if you want to merge/replace folders/files). Then reload http://localhost/ to see the Tomcat welcome page.”

      Responder

      • Alberto

        Muy buena, finalmente me funciono. Muchas gracias

        Responder

  18. juan manuel barajas carabes

    me podrian ayudar por favor hice todos los pasos pero no corre el servidor marcaun error
    Server Tomcat v6.0 Server at localhost failed to start.
    17/03/2010 07:11:35 PM org.apache.catalina.core.AprLifecycleListener init
    INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jdk1.6.0_18\bin;.;C:\Windows\Sun\Java\bin;C:\Windows\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\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Telmex\Antivirus Infinitum 2009\;C:\Program Files\Common Files\Roxio Shared\DLLShared\;C:\Program Files\Common Files\Roxio Shared\11.0\DLLShared\;C:\Program Files\QuickTime\QTSystem\
    java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412)
    Caused by: java.lang.UnsatisfiedLinkError: org.apache.tomcat.jni.Pool.create(J)J
    at org.apache.tomcat.jni.Pool.create(Native Method)
    at org.apache.tomcat.util.net.AprEndpoint.init(AprEndpoint.java:579)
    at org.apache.coyote.http11.Http11AprProtocol.init(Http11AprProtocol.java:121)
    at org.apache.catalina.connector.Connector.initialize(Connector.java:1059)
    at org.apache.catalina.core.StandardService.initialize(StandardService.java:677)
    at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792)
    at org.apache.catalina.startup.Catalina.load(Catalina.java:518)
    at org.apache.catalina.startup.Catalina.load(Catalina.java:538)
    … 6 more
    gracias

    Responder

  19. oscar

    Muy buen tutorial, muy bueno si señor. A la primera 😉

    Responder

  20. Muy bueno, aunque ya he probado netbeans por motivos de trabajo he tenído que migrar a Eclipse ya que trabajan con Flex.

    Muchas gracias, muy sencillo todo.

    Dk

    Responder

  21. ID

    Gracias por tu tutorial y trabajo, resulta que no me funcionaba bien el plug-in de sysdeo para Tomcat y con tu guía todo me ha ido al pelo y sin problemas.

    Bueno me ha costado un poco el punto 9 que no encontraba “start” que está en las pestañas de abajo entra la de consola y marcadores.

    Gracias de nuevo.

    Responder

  22. mi*ro

    todo 10 ptos gracias

    Responder

  23. Gabriel

    Gracias. me ayudó a salir de dudas

    Responder

  24. Ramiro

    Hola, el tutorial es siemple y bueno. Pero he metido mano en el eclipse (creo que es por eso) y cuando agrego el servidor desde Windows->Preferences no me aparece en la pestaña Servers ni se crea un Proyecto Servers. Aún así sigo el tutorial y cuanod agrego el proyecto no me lo abre, ni siquiera puedo acceder a el home del localhost. Tienes algunas idea de lo que puede ser? Tengo eclipse Mylyn 3.4
    Gracias de todas formas por la ayuda. Por lo menos me sirvio para darme cuenta que no estaba haciendo tan mal las cosas.
    Saludos!

    Responder

  25. sektor

    excelente ayuda. debido a políticas de la empresa, el IDE oficial es Eclipse. yo un usuario 100% NB no tenía idea cómo hacer esto.

    Responder

  26. Pablo Patiño

    Muy bueno el tutorial, me sirvió para lo que requería.
    Muchas gracias

    Responder

  27. hola como va?mira te comento soy re nuevo en esto pero me intreresa empezar a escribir en codigo java.ahora me baje el eclipse desde la pagina de el y q es el q tu decis pesa 206 mb,el tomcat y no hay caso no puedo de ninguna manera ejecutar el exe del eclipse,motivos no se si me pueden dar una mano,un lujo gracias

    Responder

  28. Adrián

    Tengo un problema que no logro resolver: ¿Cómo configuro elcipse para que en la pestaño “java doc” se presente info acerca de las sentencias que se utilizan con servlets?

    Responder

  29. KatUchiha

    Gracias amiguito ahora a curiosear 😉

    Responder

  30. Angel

    Muchas gracias, si no se configura el tomcat en eclipse no funciona (lo digo por si os pasa lo que me pasaba a mí). Si no os funciona:

    -In Eclipse, Open the “Server” tab.
    -Double click on the “Tomcat6” entry to see the configuration.
    -Then click on the “Open launch configuration” link in the “General information” block.
    -In the dialog, select the “Classpath” tab.
    -Click the “Add external jar” button.
    -Select the file “/usr/share/tomcat6/bin/tomcat-juli.jar”
    -Close the dialog.
    -Start tomcat 6 from Eclipse.

    Extraido de:
    stackoverflow.com/questions/1392383/server-tomcat-v6-0-server-at-localhost-failed-to-start

    Responder

  31. pablo

    Hola soy nuevo en Eclipse y necesitaba una ayuda en la configuracion de apache tomcat 7 en eclipse (indigo).. Ya tengo instalado el tomcat (porque puedo acceder al localhost:8080) pero en eclipse cuando quiero agregar un nuevo runtime environment solo me sale una carpeta BASIC, el apache no me aparece, de ahi pense que me faltaba un plugin, lo instale pero no me sale tampoco.. espero una respuesta. gracias!!

    Responder

  32. Juan

    Bueno segun yo ya configure todo y el apache tomcat ya esta corriendo y cuando ejecuto una aplicacion de prueba me muestra esto “Este programa no puede mostrar la página web”

    Responder

  33. Alejandro

    Buenas he seguido este tutorial al pie de la letra y me ha ido estupendo!!

    Estaba trabajando cambiando los estilos y de repente me da un error HTTP 404, a que puede ser debido?, no he hecho ningún cambio y me funcionaba bien.., de repente ha dejado de hacerlo.

    Responder

  34. wilort

    de pelos gracias por la ayuda

    Responder

  35. Gruñon

    Que version de java para aplicaciones web.
    La j2se o la J2ee porque no

    Responder

  36. si instalo J2ee necesito instalar J2se para ejecutar aplicaciones web.
    O solo con J2ee es suficiente y ademas necesito tomcat como servidor Web supongo

    Lo que quiero decir es que J2ee trae incluido J2se?

    Responder

  37. Eduan

    Holas me sucede algo similar a Pablo he instalado el tomcat7 ya me funciona el localhost:8080, pero cuando voy a windows / preferencias de eclipse indigo no me aparece ninguna opcion de servidor para poder seleccionar y hacer el enlace con el tomcat7. Mi alguuen me puede asesorar muchas gracias de antemano

    Responder

  38. Freddy

    Muy buena explicación!!! Me sirvió con EclipseJUNO y TOMCAT 7.0.35 gracias!!!

    Responder

  39. Krisiun

    Buen tutorial! Gracias por compartirlo.

    Responder

  40. Raúl

    Seguí los pasos de este tutorial 4 años después (2013) y con Eclipse Kepler sigue vigente (salvo el paso 8 que ya lo hace por sí solo Eclipse). Un muy buen tutorial. ¡Gracias!.

    Responder

  41. mariano

    Buenas, tengo Tomcat 7 instalado dentro de eclipse, pero a la hora de correr, o de intentar Window -> Preferences -> Server -> Runtime Environment. La carpeta “Server” no me aparece :S que puede ser?? plz ayuda!

    Gracias!

    Responder

  42. Marlon

    He seguido los pasos ya mencionados… y me sigue saliendo el error 404. He creado una app web con JSF, pero no carga la pagina principal. Estoy usando el JSF 2.1 y le agregue sus librerias de JSF… no se porque no carga la pagina. Probe con una aplicacion y una pagina JSP y si funciona. Que mas puedo hacer?

    Responder

Deja un comentario