< Anterior | Siguiente >

Lección 1.4: Crear un proyecto web para probar la aplicación

La lección 1.4 le guiará en la creación de un proyecto web para probar la aplicación.

Antes de empezar, debe haber completado la lección 1.3.
En esta lección realizará las siguientes tareas:
  1. Descomprima el archivo EJB3CounterDB.zip.
    1. Descargue la base de datos necesaria, que proporciona persistencia para el proyecto de contador EJB 3.1.
    2. Después de descargar EJB3CounterDB, expanda EJB3CounterDB > EJB3CounterDB.zip y efectúe una doble pulsación en EJB3CounterDB.zip. Se abre un programa de utilidad de extracción de archivos en una ventana externa.
      • Icono de Windows: extraiga la base de datos en la carpeta /derby/databases de la carpeta de instalación de WebSphere Application Server.
      • Icono de Linux: Extraiga la base de datos en la carpeta /derby/databases de la carpeta de instalación de WebSphere Application Server.
        • Otorgue al usuario no root acceso al directorio de bases de datos (la manera más fácil es otorgar acceso a todos los usuarios: chmod ugo+x databases).
        • Otorgue al usuario no root acceso de grabación a la base de datos extraída. (Por ejemplo, puede realizar la extracción como usuario no root, siempre que tenga acceso al directorio databases).
      Importante: En función del tipo de WebSphere Application Server, la ubicación predeterminada de /derby/databases puede ser diferente. Para obtener información sobre directorios de instalación, consulte el tema sobre la creación de WebSphere Application Server.
  2. En la perspectiva Java™ EE, pulse con el botón derecho en el proyecto de aplicación empresarial y seleccione Nuevo > Proyecto web para abrir el asistente de proyecto web.
  3. En la página Proyecto web,
    1. En el campo Nombre de proyecto, escriba EJBCounterWebEE6.
    2. En el campo Plantillas de proyecto, seleccione Simple.
    3. En el campo Modelo de programación, seleccione Java EE.
    4. En la página de despliegue, en la lista de opciones de configuración disponibles, pulse Despliegue para abrir la página Configuración de despliegue.
      • En el Tiempo de ejecución objetivo, seleccione WebSphere Application Developer v8 en el recuadro desplegable.
      • Deseleccione Añadir soporte para extensiones y enlaces de WebSphere.
      • En el campo Versión de módulo web, seleccione 3.0
      • En el campo Pertenencia de EAR, pulse Añadir proyecto a un EAR.
      • En el campo Nombre del proyecto EAR, asegúrese de que aparezca EJBCounterSampleEE6EAR.
    5. Acepte los demás valores predeterminados y pulse Finalizar. Si visualiza la solicitud ¿Abrir perspectiva asociada?, pulse No.
  4. Pulse con el botón derecho del ratón en el proyecto EJBCounterWebEE6 y seleccione Nuevo > Página web.
  5. En la página Nueva página web, en el campo Nombre de archivo, escriba EJBCount.jsp, asegúrese de que JSP es la plantilla seleccionada y pulse Finalizar.
  6. En la vista de origen del editor de páginas web, sustituya todo el código por el siguiente y pulse Control+S para guardar:
    <%@page session="false"%>
    <HTML>
    <HEAD>
    <TITLE>IBM WebSphere EJB 3.1 y ejemplo de contador JPA 2.0</TITLE>
    <BODY bgcolor="cornsilk">
    <H1>EJB 3.1 y ejemplo de contador JPA 2.0</H1>
    <P>
    <B>
    Esta aplicación se comunica con WebSphere Application Server utilizando solicitudes http para incrementar un bean contador EJB 3.1 singleton que utiliza una entidad JPA 2.0 (es decir, mantiene un contador persistente en una tabla de base de datos Derby).
    </B>
    <FORM METHOD=POST ACTION="counter">
    <BR/>
    <%
        response.setHeader("Pragma", "No-cache");
        response.setHeader("Cache-Control", "no-cache");
        response.setDateHeader("Expires",0);
        String msg = (String) request.getAttribute("msg");
        if (msg == null) msg = "";
    %>
    <B>Pulse el botón de incremento para incrementar el recuento</B>
    <BR/><BR/>
    <INPUT TYPE=SUBMIT VALUE="Increment">
    </FORM>
    <H3><%=msg%></H3>
    </BODY>
    </HTML>
  7. Pulse con el botón derecho del ratón en el proyecto EJBCounterWebEE6 y seleccione Nuevo > Servlet.
  8. En el campo Paquete Java de la página Servlet nuevo, especifique com.ibm.example.websphere.ejb3sample.counter.
  9. En el campo Nombre de clase especifique EJBCount y pulse Siguiente:
    Página Crear servlet
  10. En el campo Nombre, escriba EJB Count Servlet. En el campo Correlaciones de URL, edite la correlación existente, resalte /EJB Count Servlet y pulse Editar. Sustituya el patrón por /counter y pulse Finalizar:
    Especificar información específica de descriptor de despliegue de servlet.
  11. Añada entradas de conjunto de despliegue:
    1. Pulse con el botón derecho del ratón en el proyecto EJBCounterWebEE6 y seleccione Propiedades.
    2. Seleccione Conjunto de despliegue, seleccione Entradas de manifiesto y pulse Añadir.
      Añadir valores de conjunto de despliegue
    3. Seleccione EJBCounterSampleEE6.jar, pulse Finalizar y, a continuación, pulse Aceptar.
      Añadir dependencia de módulo
  12. Expanda EJBCounterWebEE6 > Recursos Java > src > com.ibm.example.websphere.ejb3sample.counter y efectúa una doble pulsación sobre el archivo EBJCount.java. Se abre en el editor Java.
  13. Sustituya el código por el código siguiente y pulse Control+S para guardar:
    package com.ibm.example.websphere.ejb3sample.counter;
    
    // Este programa puede utilizarse, ejecutarse, copiarse, modificarse y distribuirse
    // libre de derechos de autor a efectos de desarrollo, utilización, comercialización o distribución.
    
    import java.io.IOException;
    
    import javax.ejb.EJB;
    import javax.servlet.RequestDispatcher;
    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    /**
     * Este servlet muestra un bean de contador EJB3 con JPA.
     */
    
    @WebServlet(
    		description="Este servlet muestra las diversas formas de incrementar beans de contador EJB 3.1.,
    		name="Servlet de recuento EJB",
    		displayName="Servlet de recuento EJB",
    		urlPatterns="/counter"
    		)
    public class EJBCount extends HttpServlet {
    
        private static final long serialVersionUID = -5983708570653958619L;
        
        // Utilizar inyección para obtener el ejb
        @EJB private LocalCounter singletonCounter;
        
        public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
    		String msg = null;
    		int ejbCount = 0;
    		
    		try {
    			ejbCount = singletonCounter.getTheValue();
    		} 
    		catch (RuntimeException e) {
    			msg = "Error - getTheValue() method on EJB failed!";
            	e.printStackTrace();
    		}
    		msg = "EJB Count value for Singleton Bean with JPA: " + ejbCount;
    		
    		// Establecer atributos y asignar el JSP.
            req.setAttribute("msg", msg);
            RequestDispatcher rd = getServletContext().getRequestDispatcher("/EJBCount.jsp");
            rd.forward(req, res);
    	}
        
        public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
    		String msg = null;
    		int ejbCount = 0;
    		
    		try {
    			ejbCount = singletonCounter.increment();
    		} 
    		catch (RuntimeException e) {
    			msg = "Error - increment() method on EJB failed!";
            	e.printStackTrace();
    		}
    		msg = "EJB Count value for Singleton Bean with JPA: " + ejbCount;
    		
    		// Establecer atributos y asignar el JSP.
            req.setAttribute("msg", msg);
            RequestDispatcher rd = getServletContext().getRequestDispatcher("/EJBCount.jsp");
            rd.forward(req, res);
    	}
        
    
    }
Ahora ya está preparado para pasar el Ejercicio 1.5, Crear un proyecto de fragmento web para probar la aplicación.
< Anterior | Siguiente >
Icono que indica el tipo de tema Tema de lección de guía de aprendizaje
Términos y condiciones para centros de información | Comentarios

Icono de indicación de fecha y hora Última actualización: 22 de abril de 2014

Nombre de archivo: exer14ejb31.html