waiting the starting sistema see puede para log iniciar for failed especificado error encontrar descargar archivo already java apache tomcat netbeans

java - sistema - starting of tomcat failed, the server port 8080 is already in use.



El inicio de Tomcat falló de Netbeans (4)

Tengo un problema con el inicio de Apache Tomcat 6 desde Netbeans IDE 7.4 (en la versión 7.3 tuve los mismos problemas. Otras personas mencionaron que este problema existe también en otras versiones, como 8.0, etc.).

¿Qué hice?

  • quitar el Tomcat 7 instalado (sin quitarlo, tuve las mismas dificultades)
  • agregar servidor nuevo, descargado del sitio web de Apache Tomcat (versión apache-tomcat-6.0.39, con otra versión tuve los mismos problemas)
  • la ubicación de mi servidor: D: / apache-tomcat-netbeans
  • variable de sistema CATALINA_HOME: D: / apache-tomcat-netbeans
  • variable de sistema JAVA HOME: C: / Archivos de programa / Java / jdk1.7.0_51 /
  • usuario de tomcat: dejo que netbeans cree un nuevo usuario, llamado tomcat con contraseña tomcat. Cuando abro el archivo {tomcat} / conf / tomcat-users.xml después de agregar el servidor, hay información sobre mi usuario:

    <user password = "tomcat" roles = "administrador, administrador" username = "tomcat" />

Cuando ahora hago clic en "iniciar", obtengo " Falló el inicio de Tomcat ".

Mis sospechas

  • Estoy trabajando en Windows 7 como administrador, así que creo que esto no es un problema con los privilegios de los archivos.
  • Desactivar proxy no ayudó.
  • Registros: solo se creó un archivo de registro: localhost.2014-03-06.log y está totalmente vacío.
  • Iniciar Netbeans "como administrador" no ayudó.
  • Desde la línea de comandos todo está bien, no tengo problemas para comenzar en modo normal o de depuración ( catalina.bat jpda start o startup.bat )

Además, es muy probable que ese problema con la configuración del proxy.

Cualquiera que no haya superado el proyecto de inicio de Tomact, - intente con NetBeans y elija No Proxy en Herramientas -> Opciones -> pestaña General.

Me ayudó.


Afecta al menos a NetBeans versiones 7.4 a 8.0.2. Se informó por primera vez desde la versión 8.0 y se corrigió en NetBeans 8.1. Hubiera tenido el problema para cualquier versión de tomcat (confirmada para las versiones 7.0.56 a 8.0.28).

Los detalles se describen como el error Netbeans # 248182 .

Este problema también está relacionado con las publicaciones que mencionan el siguiente resultado de error:

''127.0.0.1 *'' no se reconoce como un comando interno o externo, programa operable o archivo por lotes.

Para un tomcat instalado desde el archivo zip, lo arreglé cambiando el archivo catalina.bat en el directorio bin tomcat.

Encuentre la configuración siguiente en su archivo catalina.bat .

:noJuliConfig set "JAVA_OPTS=%JAVA_OPTS% %LOGGING_CONFIG%" :noJuliManager set "JAVA_OPTS=%JAVA_OPTS% %LOGGING_MANAGER%"

Y cámbialo como se muestra abajo quitando las comillas dobles :

:noJuliConfig set JAVA_OPTS=%JAVA_OPTS% %LOGGING_CONFIG% :noJuliManager set JAVA_OPTS=%JAVA_OPTS% %LOGGING_MANAGER%

Ahora guarde sus cambios y comience su tomcat desde NetBeans.


Esto afecta:

  • Todas las versiones de Tomcat a partir de 8.5.3 en adelante.
  • Todas las versiones de Netbeans hasta 8.1 (se arregla en Netbeans 8.2).

Esto se debe a que Netbeans no "ve" que Tomcat se inició, aunque comenzó muy bien.

He archivado el Bug # 262749 con NetBeans .

Solución

En el archivo server.xml , en el elemento Connector para HTTP / 1.1, agregue el siguiente atributo: server="Apache-Coyote/1.1" .

Ejemplo:

<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" server="Apache-Coyote/1.1" />

Porque

El motivo es que antes de 8.5.3, el valor predeterminado era establecer el encabezado del servidor como Apache-Coyote/1.1 , mientras que desde 8.5.3 este valor predeterminado ahora se ha cambiado a blanco. Aparentemente, Netbeans revisa este encabezado.

Quizás en el futuro podamos esperar una solución en netbeans que aborde este problema.

Pude rastrearlo hasta un cambio en la documentación.

Tomcat 8.5 :

"Anula el encabezado del servidor para la respuesta http. Si se establece, el valor de este atributo anula cualquier encabezado del servidor establecido por una aplicación web. Si no se establece, se utiliza cualquier valor especificado por la aplicación. Si la aplicación no especifica un valor, entonces no hay un encabezado de servidor configurado ".

Tomcat 8.0 :

"Anula el encabezado del servidor para la respuesta http. Si se establece, el valor de este atributo anula el Tomcat predeterminado y cualquier encabezado del servidor establecido por una aplicación web. Si no se establece, se utiliza cualquier valor especificado por la aplicación. Si la aplicación no lo hace especifica un valor, luego se usa Apache-Coyote / 1.1. A menos que seas paranoico, no necesitarás esta función ".

Eso explica la necesidad de agregar explícitamente el atributo de servidor desde la versión 8.5.3.


Para que NetBeans pueda interactuar con tomcat, necesita que el usuario se configure en netbeans para que se configure correctamente en el archivo tomcat-users.xml . NetBeans puede hacerlo de forma automática.

Es decir, dentro de tomcat-users.xml , que puede encontrar en ${CATALINA_HOME}/conf o ${CATALINA_BASE}/conf ,

  1. asegúrese de que el usuario (como se eligió en netbeans) se agrega al rol de script-manager

Ejemplo, cambio

<user password="tomcat" roles="manager,admin" username="tomcat"/>

A

<user password="tomcat" roles="manager-script,manager,admin" username="tomcat"/>

  1. asegúrese de que el rol de manager-script esté declarado

Añadir

<role rolename="manager-script"/>

En realidad, la ayuda en línea de netbeans dice incorrectamente:

Nombre de usuario: especifica el nombre de usuario que el IDE usa para iniciar sesión en la aplicación de administrador del servidor. El usuario debe estar asociado con la función de administrador . La primera vez que el IDE inició el Servidor Web Tomcat, como a través de la acción del menú Iniciar / Parar o al ejecutar un componente web desde el IDE, el IDE agrega un usuario administrador con una contraseña generada aleatoriamente a tomcat-base-path/conf/tomcat-users.xml archivo. (Haga clic con el botón derecho en el nodo de instancia del servidor Web Tomcat en la ventana Servicios y seleccione Propiedades. En el cuadro de diálogo Propiedades, la propiedad Base Directory apunta al directorio base-dir .) La entrada del usuario administrador en el archivo tomcat-users.xml ve similar a lo siguiente: <user username="idea" password="woiehh" roles="manager"/>

El rol debe ser manager-script , y no manager .

Para un archivo tomcat-users.xml más completo:

<?xml version=''1.0'' encoding=''utf-8''?> <tomcat-users> <role rolename="manager-script"/> <role rolename="manager-gui"/> <user password="tomcat" roles="manager-script" username="tomcat"/> <user password="pass" roles="manager-gui" username="me"/> </tomcat-users>

Hay otra buena publicación sobre por qué estoy recibiendo el error de implementación?