Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Actualización de planes de activación en EAR/EJB

...

  • Introducción
  • Planes de Activación de Apache Geronimo v1.1
  • Conoce Planes de Activación con Ejemplo (Se incluirán ejemplos completos)
    • Activando y Desactivando a un Simple HolaMundo (módulo war,web.xml,geronimo-web.xml)
    • Activando y Desactivando AddressBook (JAR con EJB,ejb-jar.xml,openejb.xml)
  • Discusión
  • Conclusión

Introducción

...

A continuación se muestran los pasos para entender al plan de activación para el ejemplo "HolaMundo"
.Crea una carpeta llamada <app_home> en tu directorio de trabajo
2.Abre un nuevo archivo de texto, llamándolo "HolaMundo.jsp", dentro del directorio <app_home>
3.Copia y pega al siguiente código en el archivo "HolaMundo.jsp".

HolaMundo.jsp

Code Block
xml
xml
borderStylesolid
titleHolaMundo.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>¡HolaMundo!</title>
</head>
<body bgcolor="#707DB8">
     <h1>
        <font face="courier" color="white">
                 Hola mundo desde GERONIMO V1.1!
         </font>
       </h1>
          <font face="courier" color="white"> ${datetime}</font>
</html>

...

geronimo-web.xml

Code Block
xml
xml
borderStylesolid
titlegeronimo-web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-1.1">
  <dep:environment xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.1">
    <dep:moduleId>
      <dep:groupId>geronimo</dep:groupId>
      <dep:artifactId>HolaMundo</dep:artifactId>
      <dep:version>1.1</dep:version>
      <dep:type>war</dep:type>
    </dep:moduleId>
  </dep:environment>

  <context-root>/hola</context-root>

</web-app>

7.Abre otro nuevo archivo de texto y guárdalo dentro del directorio <app_home\WEB_INF>, llamándolo "web.xml".
8.Copia y Pega al siguiente código xml en el archivo previo, y posteriormente guárdalo.

web.xml

Code Block
xml
xml
borderStylesolid
titleweb.xml
<?xml version="1.0" encoding="UTF-8"?>

<web-app version="2.4"

   xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
   http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

    <welcome-file-list>
         <welcome-file>HolaMundo.jsp</welcome-file>
    </welcome-file-list>

</web-app>

Plan de activación para geronimo-application.xml y openejb-jar.xml

El siguiente ejemplo es una libreta de direcciones Email que cubre como activar Aplicaciones J2EE en una computadora con Apache Geronimo V1.1. El ejemplo AddressBook ha usado JSP, Struts EJB y mysql como la base de datos. Aquí se asume que tienes el conocimiento básico y experiencia sobre EJB, JSP y servlets con otros servidores de aplicaciones.
AddressBook usa JSP principalmente para la lógica de presentación y su código HTML. Servlets crean la capa controlador de una arquitectura Modelo-Vista-Controlador (MVC) típica, y funciona como la interfaz entre las capas de presentación y modelo.
La arquitectura de tres capas se muestran en la siguiente figura.

El siguiente diagrama muestra como se organiza el código en la aplicación

Code Block
java
java

AddressBook
       |_org.apache.geronimo.sample.addressbook.ejb
       |                                           |_AddressBookEntryBean.java
       |                                           |_AddressBookSessionBean.java
       |_org.apache.geronimo.sample.addressbook.struts
       |                                           |_AddressBookEntryForm.java
       |                                           |_CreateEntry.java
       |                                           |_EditEntry.java
       |                                           |_ListAddress.java
       |                                           |_SaveEntry.java
       |_org.apache.geronimo.sample.addressbook.pages
       |                                           |_EditAddressBook.jsp
       |                                           |_footer.jsp
       |                                           |_ListAddressBookPage.jsp
       |                                           |_navigation.jsp
       |                                           |_site-template.jsp
       |
       |_resource
          |_ear
          |   |_META_INF
          |   |   |_application.xml
          |   |   |_geronimo-application.xml
          |   |_mysql-plan.xml
          |   |_tranql-connector-1.0-SNAPSHOT.rar
          |
          |_ejb
          |  |_META_INF
          |      |_openejb-jar.xml
          |_merge
          |   |_README.txt
          |   |_servlets.xml
          |   |_servlets-mappings.xml
          |   |_struts-controller.xml
          |   |_strust-data-sources.xml
          |   |_struts-forms.xml
          |   |_struts-plugins.xml
          |   |_taglibs.xml
          |
          |_webapp
             |_images
             |_pages
             |_style
             |
             |_WEB_INF
             |  |_classes
             |   |      |_resources
             |   |          |_application.properties
             |   |_conf
             |   |    |_struts-config.xml
             |   |    |_validation.xml
             |   |
             |   |_tld
             |       |_geronimo-jetty.xml
             |       |_tiles-defs.xml
             |       |_validator-

...

rules.xml
             |_index.jsp


JSP y Struts

Las clases de acción Struts se encuentran en el directorio AddressBook/src/org/apache/geronimo/sample/addressbook/struts. Los JSPs se encuentran en el directorio AddressBook/src/webapp/pages.

EJB
Apache Geronimo usa OpenEJB como el sistema contenedor de EJB. El ejemplo contiene dos EJBs:

Container-managed entity EJB
Stateless session EJB

Activando un Pool de Conexiones perfilado-para-Aplicación

Un pool de conexiones perfilado para las peticiones de una Aplicación, es visible sólo para la aplicación que le activó. Para activar un pool de conexiones de esa índole, debes seguir los pasos seguientes.

1.Especificar al módulo conector en el descriptor de activación de la aplicación.
2.Especificar al plan de activación del conector en el descriptor de activación de aplicación propio-de-geronimo.
3.Empaquetar al EAR de la aplicación.

Especificar al Módulo Conector en el Descriptor de Activación de la Aplicación

El descriptor de activación de aplicación (AddressBook/resources/ear/META-INF/application.xml) debería definir al módulo conector TranQL, como se muestra a continuación.

Code Block
xml
xml
borderStylesolid

<application 
       xmlns="http://java.sun.com/xml/ns/j2ee"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
       http://java.sun.com/xml/ns/j2ee/application_1_4.xsd"
       version="1.4">
    <module>
        <ejb>addressbook-ejb.jar</ejb>
    </module>
    <module>
        <web>
            <web-uri>addressbook.war</web-uri>
            <context-root>/addressbook</context-root>
        </web>
    </module>
    <module>
	    <connector>tranql-connector-1.1.rar</connector>
    </module>
</application>

NOTA : Es obligatorio el empaquetar al archivo RAR conector junto con el archivo EAR de aplicación.

Especificar al Plan de Activación del Conector en el Descriptor de Activación de Aplicación propio-de-Geronimo.

Especifica al archivo del plan de activación del conector en el Descriptor de Activación de Aplicación propio de Geronimo (AddressBook/resources/ear/ear/META-INF/geronimo-application.xml) como se muestra a continuación.

Plan de Activación para Módulo RAR

Plan de Activación para JAR conteniendo un Módulo EJB

Activación y Desactivación del ejemplo AddressBook