Home UC3M
Home IT

Software de Comunicaciones - ITT Telemática

Desarrollo de una aplicación empresarial con J2EE


 Introducción

El objetivo de esta práctica es doble. Por un lado, reforzar los conceptos aprendidos en la práctica anterior (desarrollo, configuración y despliegue  de enterprise java beans) y por otro lado, ofrecer grados de libertad al programador para que diseñe su propia solución. Para ello, la estrategia didáctica elegida es enfrentar al alumno a los enunciados de examen de convocatorias anteriores.

La aplicación que se va a desarrollar en esta práctica se denomina Dia de las Letras Gallegas (DiaLetrasGalegas.ear), la cual contiene un bean de entidad (HomenajeadosBean) y un cliente. Opcionalmente, puede contener además otro bean de entidad (ContadorConsultasBean) con su respectivo cliente.

Recomendación: Si va a desarrollar la parte opcional, por lo menos, las interfaces y la clase del bean deberán estar organizadas dentro de paquetes. Por ejemplo, las interfaces y clases del ejercicio 1 pertenecen al paquete homenaje y las interfaces y clases del ejercicio 2 pertenecen al paquete contador.

Para aprobar la práctica es necesario realizar el ejercicio 1 (parte obligatoria). El ejercicio 2 es de carácter opcional para alcanzar la máxima puntuación. Ha de ser entregada antes de las 23:59 del día  23 de Abril del 2008  en formato zip.  El fichero comprimido debe contener todos los ficheros fuentes (incluyendo el .ear), necesarios para desplegar y/o construir la aplicación desarrollada.

Ejercicio 1: Componentes para la gestión de Homenajeados (examen junio 2007)


En el día de las Letras Gallegas, celebrado cada 17 de Mayo y coincidente con el día de Internet, la Real Academia de la Lengua Gallega desde 1963 ha homenajeado a destacados escritores del  ámbito de la literatura Gallega. Con este motivo, se le ha requerido como experto para crear un portal temático que permita gestionar diferentes aspectos de una forma dinámica y ágil haciendo uso de tecnología J2EE.  Más concretamente ha de trabajar con la siguiente estructura de base de datos:

CREATE TABLE HOMENAJEADOSBEAN(
     HOMENAJEADO varchar(50),
     ANHOHOMENAJE LONG CONSTRAINT pk PRIMARY KEY,
     ANHOMUERTE LONG
     URL varchar(50),
);

Que estará disponible a través del elemento jndi jdbc/HomenajeadosDB

Se le pide que:

  1. Cree  las interfaces (home y remote) de cliente de un componente J2EE HomenajeadosBean de tipo CMP que permita:
    • Introducir un nuevo homenajeado mediante un método de tipo create.  Recibirá aquellos parámetros (año del homenaje, año de la muerte, url, ... )  que le resulten necesarios para el estado del homenajeado.
    • Eliminar un homenajeado.
    • Obtener la url del homenajeado mediante un método que se llame obtenerUrl().

    • Obtener la información completa del homenajeado, mediante un único método llamado obtenerInfo().
    • Buscar un homenajeado a partir de su identificador.


  2.     .Implemente la clase  HomenajeadosBean de tal manera que dé soporte a los métodos descritos
    • El método de tipo create debe de comprobar la existencia de un mínimo de 10 años entre la fecha de defunción del escritor y la del homenaje, requisito indispensable para que se le pueda dedicar el día.

    Nota: Comente en el código qué métodos pertenecen al ciclo de la vida, cuáles son de negocio y cuáles permiten el acceso a la base de datos subyacente.


  3. Implemente un cliente web o de consola (ejecutable con appclient) que realice las siguientes operaciones:
    • Cree el siguiente par de homenajeados:
      • Rosalía de Castro  1963, 1885, http://es.wikipedia.org/wiki/Rosalía de Castro

      • Alfonso X el Sabio  1980, 1284, http://es.wikipedia.org/wiki/Alfonso X el Sabio

    • Busque, haciendo uso de las interfaces de componente,  al autor cuyo homenaje se realizó en el año 1980 e imprima haciendo uso del dispositivo estándar de salida  la  URL asociada a su página web.

    • Busque al autor cuyo homenaje se realizó en el año introducido por el usuario e imprima toda la información asociada con el mismo.
    • Elimine del sistema tanto a Rosalía de Castro como a Alfonso X el Sabio.

  4. Haciendo uso del deploytool, configure y despliegue la aplicación y compruebe que se ejecuta correctamente.
 
Ejercicio 2: Componentes para el registro de consultas  (examen septiembre 2007)


Tras haber comprobado el buen funcionamiento del componente HomenajeadosBean, se ha decidido extender el soporte ofrecido por la plataforma "Día das Letras Galegas", incorporando para ello un nuevo componente ContadorConsultasBean. Internamente, este bean se apoya en la siguiente tabla:

CREATE TABLE CONTADORCONSULTASBEAN(
             ANHODELHOMENAJE LONG pk PRIMARY KEY,
             NUMCONSULTAS LONG
);

y también en el componente HomenajeadosBean creado previamente, al que se puede acceder a través de ejb/HomenajeadosBean.

Se le pide que:

  1. Cree las interfaces de cliente del componente ContadorConsultasBean de tipo CMP de tal manera que:
    • Permita crear (a partir del año del homenaje) contadores.
    •  Permita eliminar contadores.

    •  Permita buscar un contador a partir del año del homenaje.

    •  Permita incrementar el valor del contador mediante un método void incrementarContador().

    •  Permita buscar mediante un método String obtenerUrlAsociada() la URL de un homenajeado asociado al contador. 

  2. Implemente el componente ContadorConsultasBean teniendo en cuenta que se trata de un bean de entidad de tipo CMP. 

  3. Implemente una página JSP (index.jsp)   que realice las siguientes acciones:

    • Cree a Rosalía de Castro y a su contador asociado. Utiliza la información proporcionada en el apartado anterior.
    •  Muestre por la salida estándar la URL asociada a Rosalía obtenida mediante el método obtenerUrlAsociada() del componente ContadorConsultasBean.
    • Elimine del sistema tanto a Rosalía de Castro como al contador que tenía asociado.

  4. Haciendo uso del deploytool, configure y despliegue la aplicación y compruebe que se ejecuta correctamente.
 Referencias