JavaRush /Blog Java /Random-ES /Descripción general de los servidores de aplicaciones y, ...
eGarmin
Nivel 41

Descripción general de los servidores de aplicaciones y, por supuesto, Tomcat

Publicado en el grupo Random-ES
Estimados javarashianos, ¿qué quiero considerar en este artículo? Sólo quiero hacer un breve repaso de esa parte de los servidores de aplicaciones que merecen atención al menos porque son gratuitos y su código fuente está disponible. Asumiré que su sistema es similar al mío. Tengo Windows 7 de 64 bits, además tengo JDK 1.7 y JDK 1.8, y la variable de entorno JAVA_HOME hace referencia a este último de ellos. En mi caso, esto significa que la ruta JAVA_HOME es C:\Program Files\Java\jdk1.8.0_31. Descripción general de los servidores de aplicaciones y, por supuesto, Tomcat - 1Para que cuando repitas lo que se describe a continuación tengas la menor cantidad de preguntas posibles como “¿por qué no me funcionó, tal vez estoy haciendo algo mal?”, intentaré describir cada acción que hice en mi máquina. Comenzar…

Fundición, es decir selección

Primero debemos seleccionar los servidores de aplicaciones para nuestra revisión. Para ello, consulta el artículo de Wikipedia Comparación de servidores de aplicaciones (en inglés, porque no hay otro). Hay un cartel con un montón de servidores de aplicaciones, pero solo nos interesan aquellos que, por un lado, son de código abierto y, por otro, son totalmente compatibles con JavaEE, es decir. La columna de compatibilidad de Java EE en esta tabla debe contener una línea de tipo Plataforma completa . De esta lista, que contiene tanto WildFly como JBoss , puedes descartar inmediatamente este último, porque es solo un nombre antiguo y versiones antiguas de WildFly . Como resultado, obtenemos la siguiente lista de servidores que merecen nuestra atención:
  1. Glassfish (no propietario, sino el de la comunidad glassfish.java.net , pero que está soportado por Oracle Corporation a tal punto que si necesitas un SDK javaEE del sitio web de Oracle, entonces te darán este servidor de aplicaciones, en caso contrario No hay otra manera)
  2. (Red Hat) WildFly (anteriormente JBoss)
  3. (Apache) Gerónimo
  4. (Apache) Tomcat (esto es solo un contenedor de servlets, no un servidor de aplicaciones, pero es el estándar en el cual, si el programa está escrito correctamente, definitivamente funcionará. En otros servidores, el programa puede estar escrito correctamente en términos de JavaEE, pero todo funcionará, será incorrecto o no funcionará en absoluto (estoy hablando de Geronimo, cuyos fallos se pueden discutir durante mucho tiempo)
Ahora mejoremos estos servidores. Cuando era posible elegir entre versiones de 32 y 64 bits, elegí un archivador para mi sistema de 64 bits.

Instalación

En cuanto a la instalación, todo es sencillo y para cada uno de los servidores seleccionados, la instalación consiste simplemente en descomprimir el archivo. Por ejemplo, creé la carpeta AppServers en mi escritorio, donde comencé a descomprimir todo.

Ajustes

Comencemos a configurar servidores configurando el puerto HTTP en el que funcionará. Luego nos registraremos como administrador del servidor. Cada servidor tiene sus propias características de configuración. Para Tomcat. Vamos a la carpeta con Tomcat descomprimido, luego a la carpeta conf , al archivo server.xml . Encontramos el número 8080 (puerto http predeterminado) en este archivo y lo cambiamos a lo que queramos. Lo configuré en 9713 . Para registrarse como administrador del servidor, debe abrir el archivo tomcat-users.xml mientras se encuentra en la misma carpeta . En él, antes de la etiqueta de cierre </tomcat-users>, agregue la siguiente etiqueta <user nombre de usuario="egarmin" contraseña="1" roles="manager-gui,manager-script,manager-status,manager-jmx"/ > donde en tu he asignado el número máximo de derechos administrativos (roles) a los roles. Esto me permitirá implementar aplicaciones tanto a través de la interfaz gráfica de usuario como a través de una conexión remota. Ahora lancemos Tomcat. Vaya a la carpeta con Tomcat descomprimido, luego a la carpeta bin y ejecute el archivo startup.bat . Vaya al navegador en http://localhost:9713 . Todo debería funcionar y veremos al tigre. GatoAhora verifiquemos si tiene acceso al panel de administración. Para hacer esto, vaya a http://localhost:9713/manager , ingrese el nombre de usuario y la contraseña seleccionados y obtenga acceso. Administrador en Tomcat¡HURRA! Puede desactivar temporalmente Tomcat simplemente cerrando la consola en la que se está ejecutando. Para pez de cristal. Vaya a la carpeta con el glassfish desempaquetado , luego a la subcarpeta glassfish , luego a la subcarpeta domains y luego a la carpeta domain1 . Vaya a la carpeta de configuración y busque el archivo domain.xml . Allí también buscamos el número 8080 (este número generalmente es el puerto HTTP predeterminado para servidores de aplicaciones y contenedores de servlets) y lo cambiamos por el que queramos. Lo configuré en 9813 . Lancemos peces de cristal. Vaya a la carpeta con el glassfish desempaquetado, luego a la subcarpeta glassfish y luego a la carpeta bin . Ejecute el archivo startserv.bat . En el navegador, ingrese la dirección http://localhost:9813 . En la fea página que aparece con el título GlassFish Server, busque el enlace para ir a la Consola de administración y haga clic en él. Primer inicio de sesión en GlassFishA continuación, accediendo a la hermosa página de la consola administrativa basada en JSF, haga clic en el elemento Cambiar contraseña de administrador Administrador en GlassFish e ingrese la contraseña que necesitamos para el usuario administrador , luego confírmela y haga clic en el botón Guardar.. Cambiar su contraseña en GlassFishCuando posteriormente inicie sesión en la consola administrativa, deberá ingresar el inicio de sesión de administrador y la contraseña especificada. Inicie sesión en el panel de administración de GlassFish con una contraseñaAhora puedes desactivar Glassfish temporalmente simplemente cerrando la consola en la que se está ejecutando. Para WildFly. Vaya a la carpeta con el wildfly descomprimido . A continuación, vaya a la carpeta independiente , luego a la carpeta de configuración y en ella al archivo standalone.xml . A continuación procedemos según el esquema establecido. Configuré el puerto en 9913 . Iniciemos el servidor. Para hacer esto, vayamos a la carpeta con el wildfly descomprimido . A continuación, vaya a la carpeta bin y ejecute el archivo standalone.bat . Abra el navegador e ingrese la dirección http://localhost:9913 . Primer inicio de sesión en WildFlyHaga clic en el enlace Consola de administración para ingresar a la consola de administración (en otras palabras, el panel de administración del servidor de aplicaciones). Pero ese no fue el caso, porque... aparece la pantalla. Primer inicio de sesión en el panel de administración de WildFlyEsta pantalla nos dice que el administrador no ha sido creado y para crearlo necesitamos usar la utilidad de consola add-user.bat . Bueno, si es necesario, es necesario. Volvemos a la carpeta bin y ejecutamos esta utilidad. En primer lugar, se le pedirá que seleccione el tipo de usuario que queremos crear. Necesitamos seleccionar el elemento (a) , lo que significará que necesitamos un administrador. Luego se le solicita el nombre de este usuario Nombre de usuario y contraseña Contraseña . La contraseña no puede estar vacía, pero un carácter es bienvenido. La utilidad, por supuesto, lo regañará, pero se lo tragará si responde afirmativamente a la pregunta "¿Estás seguro?" A continuación, confirme la contraseña volviendo a ingresar la solicitud Volver a ingresar la contraseña . Luego habrá más preguntas, pero simplemente las respondemos todas afirmativamente y salimos de la utilidad. Al regresar a la página anterior, busque el enlace Volver a intentarlo y haga clic en él. Ahora, al ingresar los detalles del administrador recién creado, podrá acceder al panel de administración. Administrador en WildFlyApagamos el servidor cerrando la ventana de la consola a través de la cual se inició. Para Gerónimo. Vaya a la carpeta con geronimo descomprimido . A continuación, vaya a la subcarpeta var , luego a la carpeta config y en ella el archivo config-substitutions.properties . Este archivo describe todos los puertos utilizados por el servidor de aplicaciones en un formato conveniente, pero el esquema de reemplazo de puertos es el mismo. Configuré el puerto en 10013 . Iniciemos el servidor geronimo . Vayamos a la carpeta con geronimo descomprimido , luego a la subcarpeta bin y ejecutemos el archivo startup.bat allí . Ir a la página http://localhost:10013. ¿Qué opinas? Lo más probable es que la página no esté allí. ¿Por qué? La cuestión es que la última versión de Geronimo (3.0) no puede funcionar con la última versión del JDK (1.8), por lo que si solo la tiene o incluso tiene, digamos, la séptima versión, pero la variable de entorno JAVA_HOME aún se refiere específicamente a 8. Como el mío, el servidor de aplicaciones no se inicia. Por lo tanto, para que Geronimo funcione, debes descargar JDK 1.7. Ahora digamos que instaló el séptimo JDK, pero no desea cambiar el valor de la variable JAVA_HOME (después de todo, otros programas no se quejan de esto, lo que significa que pueden trabajar con la última versión del JDK). ¿Qué hacer? Recomiendo abrir el archivo setjavaenv.bat ubicado en la misma carpeta bin y buscar la línea etiquetada :okJdkFileCheck . Luego, en la siguiente línea agregue una anulación de variable de entorno. Por ejemplo, así: set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_75 Esta línea no está allí, así que escríbala usted mismo. Si tienes un sistema de 32 bits, entonces no debería haber más problemas. Además, si tiene un sistema de 64 bits e instaló JDK 1.7 en la configuración de 64 bits, entonces todo está bien para usted también. Ahora imaginemos que decidimos ser pervertidos e instalar JDK 1.7 de la línea de 32 bits en un sistema de 64 bits (tengo, por ejemplo, Windows 7 64). ¿Entonces que? Entonces tendrás que retocar un poco más, porque en un sistema de 64 bits hay dos carpetas para instalar programas: Archivos de programa y Archivos de programa (x86) y si no cambias nada, el JDK de 32 bits irá al último. ¿Qué tiene eso de aterrador? Sí, parece estar bien, sin embargo, si la variable JAVA_HOME tiene corchetes en su ruta (x86), entonces a Geronimo le da indigestión. ¿Por qué? Dios lo sabe, sobre todo teniendo en cuenta que según los foros, este error debería haberse solucionado en la tercera versión de Geronimo . Pero nada de eso. Lo principal en este asunto es no hacer pipí, si los indios no lo corrigieron, entonces lo corregiremos nosotros. Hay dos formas de hacer esto, que prefiero combinar para estar seguro. En primer lugar, vaya nuevamente al archivo setjavaenv.bat y busque la etiqueta ya mencionada : okJdkFileCheck . Debajo de esta etiqueta hay una línea si "%JRE_HOME%" == "" si existe "%JAVA_HOME%\bin\javac.exe" (establezca JRE_HOME=%JAVA_HOME%\jre); de lo contrario, establezca JRE_HOME=%JAVA_HOME% en la que cure Geronimo Bastará con poner la subcadena JRE_HOME=%JAVA_HOME%\jre entre comillas, es decir reemplace la línea completa con if "%JRE_HOME%" == "" si existe "%JAVA_HOME%\bin\javac.exe" (establezca "JRE_HOME=%JAVA_HOME%\jre"); de lo contrario, establezca JRE_HOME=%JAVA_HOME% . Además, recuerde o tenga en cuenta que carpetas como Archivos de programa en Windows 7 tienen sinónimos (por ejemplo, para la carpeta C:C:\Programa~2 ). Por lo tanto, si en el archivo setjavaenv.bat después de la etiqueta :okJdkFileCheck establece el siguiente valor de la variable JAVA_HOME establece JAVA_HOME=C:\Progra~2\Java\jdk1.7.0_75 entonces también tendrá un servidor Geronimo ejecutando un 32 -bit JDK en un sistema operativo de 64 bits x bits. Algo como esto... Bueno, finalmente, puedes iniciar Geronimo llamando a startup.bat . Ahora no debería haber ningún problema. Vaya a la página http://localhost:10013 en el navegador . En la parte superior izquierda, busque el enlace Consola y haga clic en él. GerónimoDebe ingresar su nombre de usuario y contraseña de administrador. Déjame decirte de inmediato que este es el usuario del sistema con el administrador de contraseñas (valores predeterminados). Inicie sesión en el área de administración de Geronimo usando una contraseñaAl ir a la consola y seguir los elementos del menú como en la imagen siguiente (seleccione el botón de opción Avanzado , luego seleccione Seguridad > Usuarios y grupos ), puede cambiar la contraseña del usuario del sistema o crear otro usuario administrador y eliminarlo. uno. Cambiando tu contraseña en GerónimoTambién puedes detener el servidor Geronimo simplemente cerrando la ventana de la consola en la que se estaba ejecutando el servidor.

Conclusión

En esta revisión, básicamente repasé la instalación y configuración inicial de servidores de aplicaciones populares y el contenedor de servlets Tomcat. Con la excepción de Geronimo, el resto de los servidores fueron muy amables y hospitalarios conmigo. En la próxima publicación, continuaré considerando los servidores de aplicaciones y daré el tercer paso hacia la consideración de los servicios web, es decir, mostraré cómo implementar el servicio web descrito en el primer paso en estos servidores. Para hacer esto, crearemos un archivo war de nuestro servicio web y mostraré claramente que el conjunto de archivos jar de terceros que deben incluirse en este archivo para que el servicio funcione correctamente varía mucho de un servidor a otro.
Comentarios
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION