< 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 acciones siguientes:
  1. Extraiga EJBCounterDB
    1. Descargue la base de datos necesaria, que proporciona persistencia para el proyecto de contador EJB 3.1.
    2. Expanda EJBCounterDB > EJBCounterDB.zip y efectúe una doble pulsación en EJBCounterDB.zip.
      • 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, en el campo Nombre de proyecto, escriba EJBCounterWeb.
  4. En el campo Plantillas de proyecto, seleccione Simple.
  5. En el campo Modelo de programación, seleccione Java EE. Pulse Siguiente.
  6. 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 Tiempo de ejecución de destino seleccione una versión admitida de WebSphere Application Developer en el recuadro desplegable.
    • Deseleccione Añadir soporte para enlaces y extensiones de WebSphere si está seleccionado.
    • 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 de proyecto EAR, asegúrese de que aparezca EJBCounterWebEAR.
  7. Acepte los demás valores predeterminados y pulse Finalizar. Si aparece la solicitud ¿Abrir perspectiva asociada?, pulse No.
  8. Pulse el proyecto EJBCounterWeb con el botón derecho del ratón y seleccione Nuevo > Página Web.
  9. En el campo Nombre de archivo de la Pagina web nueva, especifique EJBCount.jsp. Asegúrese de que se haya seleccionado JSP como plantilla y pulse Finalizar.
  10. 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 EJB3 and JPA1 Counter Sample</TITLE>
    <BODY bgcolor="cornsilk">
    <H1>EJB 3.0 and JPA 1.0 Counter Sample</H1>
    <P>
    <B>
    Esta aplicación se comunica con WebSphere Application Server mediante solicitudes http para incrementar un bean de contador EJB 3.0 sin estado que utiliza una entidad JPA 1.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>
  11. Pulse el proyecto EJBCounterWeb con el botón derecho del ratón y seleccione Nuevo > Servlet.
  12. En el campo Paquete Java de la página Servlet nuevo, especifique com.ibm.example.websphere.ejb3sample.counter.
  13. En el campo Nombre de clase, escriba EJBCount y pulse Siguiente:
  14. 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.
  15. Pulse con el botón derecho del ratón el proyecto EJBCounterWeb y seleccione Propiedades.
  16. Seleccione Conjunto de despliegue, seleccione Entradas de manifiesto y pulse Añadir
  17. Seleccione EJBCounterSample.jar y pulse Finalizar y, a continuación, pulse Aceptar Si no aparece el archivo EJBCounterSample.jar, pulse el enlace Configurar entradas de manifiesto disponibles y seleccione EJBCounterSample de la columna Origen en la ventana Ensamblaje de módulos EAR y, a continuación, pulse Aplicar y, a continuación, pulse Aceptar. Finalmente, en la ventana Añadir entradas de manifiesto, pulse Finalizar y en la ventana Propiedades pulse Aceptar.
    Añadir dependencia de módulo
  18. Expanda EJBCounterWeb > 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.
  19. 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.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    /**
     * Este servlet muestra un bean de contador EJB3 con JPA.
     */
    
    public class EJBCount extends HttpServlet {
    
        private static final long serialVersionUID = -5983708570653958619L;
        
        // Utilizar inyección para obtener el ejb
        @EJB private LocalCounter statelessCounter;
        
        public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
    		String msg = null;
    		int ejbCount = 0;
    		
    		try {
    			ejbCount = statelessCounter.getTheValue();
    		} 
    		catch (RuntimeException e) {
    			msg = "Error - getTheValue() method on EJB failed!";
            	e.printStackTrace();
    		}
    		msg = "Valor de EJB Count para bean sin estado con 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 = statelessCounter.increment();
    		} 
    		catch (RuntimeException e) {
    			msg = "Error - increment() method on EJB failed!";
            	e.printStackTrace();
    		}
    		msg = "Valor de EJB Count para bean sin estado con JPA: " + ejbCount;
    		
    		// Establecer atributos y asignar el JSP.
            req.setAttribute("msg", msg);
            RequestDispatcher rd = getServletContext().getRequestDispatcher("/EJBCount.jsp");
            rd.forward(req, res);
    	}
        
    
    }
  20. En la vista Explorador empresarial, expanda EJBCounterWeb > Recursos Java > src > com.ibm.example.websphere.ejb3sample.counter y pulse el botón derecho del ratón en el archivo EJBCount.java y seleccione Ejecutar > Ejecutar en servidor y pulse Finalizar.
  21. La aplicación de contador se abrirá en un navegador web.
    Página web de EBJ 3.0
Ha completado la guía de aprendizaje del contador EJB 3.0.
< 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: exer14ejb3.html