- SDK de Java EE;
- Servidor de aplicaciones Java EE GlassFish;
- Configurando IntelliJ IDEA.
- Muestre cómo puede preparar un entorno de trabajo para trabajar con aplicaciones Java EE.
- Muestre cómo puede implementar y ejecutar aplicaciones Java EE desde IntelliJ IDEA en el servidor GlassFish.
- Descargue e instale el SDK de Java EE 7.
- Levantemos el GlassFish del servidor de aplicaciones Java EE.
- Aprendamos cómo iniciar y detener el servidor a través de la línea de comando.
- Configuremos IntelliJ IDEA para implementar aplicaciones en este servidor.
- Implementemos y ejecutemos la aplicación de demostración que, junto con el servidor de aplicaciones GlassFish, se incluye en el SDK de Java EE 7.
- pez de cristal 4.0;
- IntelliJ IDEA 2019.3.1 (Ultimo);
- SDK de Java EE 7.
Instalación del SDK de Java EE
Condición importante. Antes de instalar el SDK de Java EE, debe asegurarse de que el SDK de Java SE esté preinstalado.-
Primero, necesitamos descargar el SDK. Para ello, puedes escribir en un buscador: “Java EE SDK 7”, o ir directamente a la página de descarga del sdk desde la web de Oracle.
-
De la lista de SDK proporcionada, debe seleccionar el que sea adecuado para su plataforma. El artículo describe la instalación de la distribución: “java_ee_sdk-7-jdk7-windows-x64-ml.exe”
-
Ejecute el archivo de instalación. Durante el inicio, puede ocurrir el siguiente error (si no ocurre, simplemente puede continuar con la instalación):
Esto significa que el instalador no pudo encontrar la ruta al Java Runtime Environment preinstalado. El error se puede corregir pasando la ruta al JRE manualmente usando la línea de comando. Para hacer esto, debe ejecutar el archivo de instalación a través de PowerShell y pasar la ruta al JRE preinstalado mediante el parámetro -j.
Por ejemplo, así:
-
El procedimiento de instalación posterior es bastante típico para la mayoría de los programas. Todo lo que necesita hacer es hacer clic en los botones Siguiente e Instalar.
El programa instalará el SDK de Java EE, así como el servidor GlassFish, que, al finalizar la instalación, estará activo y listo para usar. -
Para asegurarse de que el servidor GlassFish esté funcionando, una vez completada la instalación, puede abrir el panel de administración del servidor, que estará disponible en: http://localhost:4848/
Captura de pantalla a continuación:
GlassFish inicia y detiene mediante la línea de comando
Entonces, el servidor está en funcionamiento, pero el programa de instalación inició el inicio del servidor. A continuación intentaremos descubrir cómo iniciar y detener el servidor usted mismo. Primero, revelemos dicha entidad como un dominio. Un dominio es un conjunto de una o más instancias del servidor GlassFish administradas por un servidor de administración. Al instalar el servidor GlassFish, se crea un dominio predeterminado: dominio1. Los siguientes componentes están asociados a él:- Puerto del servidor (8080 predeterminado);
- Puerto del servidor de administración (predeterminado 4848);
- Nombre de usuario y contraseña del administrador (el valor predeterminado es admin y no se requiere contraseña de forma predeterminada).
asadmin start-domain domain_name
asadmin stop-domain domain_name
Intentemos detener el servidor (ya que ya se está ejecutando después de la instalación) ejecutando PowerShell desde el subdirectorio C:\glassfish4\glassfish\bin : el servidor está detenido. Ahora ejecutémoslo:
Analizamos la primera aplicación Java EE, dukes-age
A continuación veremos una aplicación Java EE de demostración: dukes-age. Esta aplicación está incluida en el SDK de Java EE junto con la aplicación de primera taza. Las descripciones de estas aplicaciones se presentan en el sitio web de documentación oficial de Oracle en las secciones 3 y 4 del curso introductorio sobre Java EE para desarrolladores principiantes de Java EE . En este artículo, veremos brevemente la aplicación dukes-age y examinaremos con más detalle el proceso de inicio de esta aplicación en el servidor GlassFish desde el entorno de desarrollo IntelliJ IDEA. La aplicación se encuentra dentro del directorio del servidor Glassfish. Si no cambió la ruta predeterminada para el servidor Glassfish al instalar el SDK de Java EE, puede encontrar esta aplicación en la carpeta: C:\glassfish4\docs\firstcup\example\dukes-age . Probablemente todos los desarrolladores de Java, principiantes y experimentados, hayan visto al menos una vez la mascota del lenguaje de programación Java: Duke: Pocas personas saben que Duke cumple años. Nació el 23 de mayo de 1995, cuando se publicó la primera versión demo de la tecnología Java. La aplicación dukes-age, como su nombre indica, proporciona información sobre la edad de Duke. Abramos esta aplicación en IntelliJ IDEA: Archivo -> Nuevo -> Proyecto de fuentes existentes... Luego vaya a la carpeta con la aplicación dukes-age, ubicada de forma predeterminada en C:\glassfish4\docs\firstcup\example\dukes- age , seleccione el archivo pom.xml y haga clic en Aceptar: Se abrirá una aplicación con la siguiente estructura: Echemos un vistazo al código de la claseDukesAgeResource
:
package firstcup.dukesage.resource;
import java.util.Calendar;
import java.util.GregorianCalendar;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
/**
* REST Web Service
*
*/
@Path("dukesAge")
public class DukesAgeResource {
/** Creates a new instance of DukesAgeResource */
public DukesAgeResource() {
}
/**
* Retrieves representation of an instance of DukesAgeResource
* @return an instance of java.lang.String
*/
@GET
@Produces("text/plain")
public String getText() {
// Create a new Calendar for Duke's birthday
Calendar dukesBirthday = new GregorianCalendar(1995, Calendar.MAY, 23);
// Create a new Calendar for today
Calendar now = GregorianCalendar.getInstance();
// Subtract today's year from Duke's birth year, 1995
int dukesAge = now.get(Calendar.YEAR) - dukesBirthday.get(Calendar.YEAR);
dukesBirthday.add(Calendar.YEAR, dukesAge);
// If today's date is before May 23, subtract a year from Duke's age
if (now.before(dukesBirthday)) {
dukesAge--;
}
// Return a String representation of Duke's age
return "" + dukesAge;
}
}
Este es un servicio web JAX-RS RESTful con un método: getText()
. Si examina el código de este método, queda claro que el método devuelve el número de años que han pasado desde el nacimiento de Duke. Es decir, el método devuelve la edad de Duke. Una clase es un recurso en un contexto REST.
- La anotación sobre la clase
@Path("dukesAge")
define la ruta URI a la que esta clase procesará las llamadas. - La anotación sobre el método
@GET
nos dice que este método procesa solicitudes GET. - La anotación
@Produces("text/plain")
especifica el tipo de medio de la respuesta a la solicitud. No es difícil adivinar que el métodogetText()
generará respuestas con el tipo de medio: texto/sin formato.
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<servlet>
<servlet-name>javax.ws.rs.core.Application</servlet-name>
</servlet>
<servlet-mapping>
<servlet-name>javax.ws.rs.core.Application</servlet-name>
<url-pattern>/webapi/*</url-pattern>
</servlet-mapping>
</web-app>
En este archivo, dentro de la etiqueta servlet-mapping
, se define una etiqueta url-pattern
con el valor /webapi/*
. Aquí se define un determinado punto raíz, cuyas llamadas serán procesadas posteriormente por el servicio. Si se combina con la anotación @Path("dukesAge")
, resulta que para obtener información sobre la edad de Duke, debe comunicarse con la dirección /webapi/dukesAge.
Configuración de IntelliJ IDEA para ejecutar una aplicación Java EE en un servidor GlassFish
Ahora que tenemos una idea muy general de la aplicación dukes-age (lea más sobre ella en el sitio de Oracle ), configuremos IntelliJ IDEA para que podamos ejecutar esta aplicación desde nuestro IDE. Configurar IntelliJ IDEA- Para hacer esto, vaya al menú Ejecutar -> Editar configuraciones.
- Se abrirá el panel Ejecutar/Depurar configuraciones:
- Necesitamos agregar una nueva configuración. Para hacer esto, haga clic en el signo más o use la tecla de acceso rápido Alt+Insertar. En la lista que se abre, seleccione GlassFish Server -> Local:
- En la ventana que se abre, comencemos a configurar la configuración:
- El siguiente paso es indicar los artefactos que deberán implementarse en el servidor. Esto se puede hacer a través de la pestaña Implementación haciendo clic en el signo más -> Artefacto...
- Seleccione dukes-age:war y haga clic en Aceptar:
- A continuación guardamos nuestra configuración haciendo clic en Aplicar y luego en Aceptar.
Lanzando la aplicación
Ahora intentemos ejecutar la aplicación.-
Para hacer esto, puede usar la tecla de acceso rápido Alt+Shift+F10, o a través del menú Ejecutar -> Ejecutar...
Y seleccione la configuración de dukes-age que creamos:
-
Después de esto vemos los registros de inicio en el panel de Servicios:
-
Luego, si todo se hace según las instrucciones, se abrirá el navegador y quedará claro que nada funciona:
-
Para hacer esto, volvamos a IntelliJ IDEA, luego al menú: Ejecutar -> Editar configuraciones...
-
Seleccionemos la configuración previamente guardada y actualicemos la URL de acuerdo con la captura de pantalla a continuación:
-
Guardemos la configuración y reiniciemos nuestra aplicación usando la tecla de acceso rápido Ctrl+Shift+F10, o usando un botón especial en el panel Servicios:
-
Después del reinicio, si todo se hizo correctamente, veremos la edad de Duke:
Conclusión
En este artículo, analizamos cómo puede configurar su entorno local para trabajar con aplicaciones Java EE usando el ejemplo del servidor GlassFish 4.0, el entorno de desarrollo IntelliJ IDEA 2019.3.1 (Ultimate), así como la versión 7 del SDK de Java EE. Vimos cómo puedes:- descargue e instale Java EE SDK, así como el servidor GlassFish;
- detener e iniciar el servidor GlassFish a través de PowerShell;
- configure IntelliJ IDEA para que pueda implementar aplicaciones Java EE desde el IDE al servidor GlassFish e iniciarlas inmediatamente.
Tarea extra
- Repita todos los pasos descritos usted mismo.
- Realice un curso de introducción a Java EE para desarrolladores principiantes de Java EE de Oracle .
- Elemento con un asterisco. Intente implementar usted mismo la segunda aplicación de demostración de la primera taza. Esta aplicación es más interactiva y también interactúa con la aplicación dukes-age. Para completar este paso, deberá comprender de forma independiente las siguientes preguntas:
- Cómo habilitar la base de datos dentro del servidor glassFish;
- Cómo integrar dos aplicaciones entre sí (dentro de la primera copa indica la ruta al punto final de Dukes-age, que analizamos en este artículo);
- Cómo crear una nueva configuración en Intellij IDEA para la implementación de la primera copa (similar a lo que se muestra en este artículo);
- Posiblemente muchas otras preguntas)
GO TO FULL VERSION