|
Buscador
Secciones
Registro
¡Colabora!
Ganamos
Servicios
|
Inicio > Tutoriales > Lenguajes orientados a objeto > Java > J2EE > Construir Aplicaciones EJB con JBoss, Lomboz y Eclipse
Ahora descomprime este fichero en tu directorio home.
[vishal@localhost eclipse]$ unzip eclipse-SDK-2.1-linux-gtk.zip
Archive: eclipse-SDK-2.1-linux-gtk.zip
Archive: eclipse-SDK-2.1-linux-gtk.zip
inflating: eclipse/plugins/org.eclipse.core.boot_2.1.0/boot.jar
inflating: eclipse/plugins/org.eclipse.core.boot_2.1.0/splash.bmp
inflating: eclipse/plugins/org.eclipse.core.boot_2.1.0/boot.xml
inflating: eclipse/plugins/org.eclipse.core.boot_2.1.0/plugin.properties
-----------------------------------------------------------------------------
----------------------------------------------------------------------------
-------------------------------------------------------------------------
inflating: eclipse/install.ini
inflating: eclipse/startup.jar
inflating: eclipse/readme/readme_eclipse.html
Una vez que lo hayas descomprimido tendrás un directorio llamado eclipse en tu directorio home. Entra en ese directorio y ejecuta el fichero de script llamado eclipse:
[vishal@localhost eclipse]$ cd eclipse
[vishal@localhost eclipse]$ ls
cpl-v10.html features install.ini plugins startup.jar
eclipse icon.xpm notice.html readme workspace
[vishal@localhost eclipse]$ ./eclipse
Esto ejecutará el IDE en tu ordenador. Familiarízate con este entorno: ![]()
|
|
Nota del Traductor:
Si has instalado una versión de JBOSS posterior a la 3.2.1 no te aparecerá el enlace a service=Hypersonic; (en las últimas versiones de JBOSS, éste viene configurado, por motivos de seguridad, para que no se pueda acceder la base de datos mediante TCP-IP). Para activar la conexión TCP-IP de la base de datos sigue estos pasos:
|
Crear el Esquema de la Base de DatosComo mencionamos en la página anterior, el esquema de nuestro inventario está compuesto de cinco relaciones. Cargaremos este esquema en la base de datos interna Hypersonic:
Para hacer esto, utilizaremos los siguientes ficheros de script:
myStoreSchema.script - para crear el esquema de la base de datos.
myStoreSchema.data - para rellenar las tablas con datos.
myStoreSchemaDrop.script - para limpiar/borrar todas las tablas utilizadas en el tutorial.Primero copia estos tres ficheros al directorio $JBOSS_HOME/server/default/data/hypersonic/. En este ejemplo está en /opt/jboss/jboss-3.2.1/server/default/data/hypersonic/
Ahora accede al HSQL Database Manager utilizando la consola JMX-Management Console que has visto arriba.
|
Nota:
Por favor, borra/elimina cualquier tabla existente en la base de datos que pueda tener los mismos nombres, o naturalmente obtendrás errores cuando ejecutes los scripts. |
En el menú File del SQL Database Manager selecciona Open Script.. y selecciona el script myStoreSchema.script.

Después de pulsar Open pulsa sobre Execute SQL Statement y aparecerá la siguiente pantalla:

Ve a Go to View > Refresh Tree. Si puedes ver las cinco nuevas tablas es que tu esquema está listo, y es hora de rellenarlo con datos.
Ve a Go to File > Open Script.. > selecciona myStoreSchema.data y pulsa Open.. > Execute SQL Statement.

Ahora tus datos están cargados en la base de datos, para poder verificarlo sólo ejecuta cualquier consulta para ver resultados como estos:

Asegurate de 'aceptar' (Options->commit) para grabar tu esquema en la base de datos.
|
Nota:
Apaga el servidor JBOSS ya que posteriormente los ejecutaremos desde dentro de Eclipse |
Instalar LombozPara poder ejecutar JBOSS desde dentro de Eclipse necesitarás un plug-in, y para este tutorial hemos utilizado Lomboz que está disponible en http://sourceforge.net/projects/lomboz o en http://www.objectlearn.com/index.jsp.
|
Nota:
Para este tutorial hemos utilizado el paquete lomboz.21_02.zip. |
Ahora descomprime este fichero en un directorio temporal; tendrás un directorio llamado plugins. Ve al directorio plugins/com.objectlearn.jdt.j2ee/servers. Este directorio contiene ficheros de configuración para varios servidores. Para este tutorial puedes utilizar este:
jboss321all.server.
|
Nota:
Si hay varios ficheros de configuración, el plug-in adoptará el primer fichero de configuración que haya dentro del directorio eclipse/plugins/com.objectlearn.jdt.j2ee/servers/, en orden alfabético, por eso renombra todos los ficheros de configuración con la extensión .bak. Esto es sólo para evitar resbalones mientras aprendemos. |
Ahora copia el fichero
jboss321all.server al directorio servers:
cd plugins/
[vishal@localhost plugins]$ ls
com.objectlearn.jdt.j2ee
[vishal@localhost com.objectlearn.jdt.j2ee]$ cd servers
[vishal@localhost servers$ ls
jboss244.server.bak jboss303Tomcat4112.server.bak
jboss300all.server.bak jboss321all.server
tomcat403.server.bak weblogic70.server
jboss300.server.bak tomcat410.server x.log
Aquí puedes ver un fragmento del fichero
jboss321all.server utilizado para la configuración:

Puedes modificar las distintas configuraciones de este fichero de acuerdo a tu entorno (por ejemplo, el número de puerto).
Una vez que has grabado este fichero bajo el directorio com.objectlearn.jdt.j2ee/servers, copia el directorio com.objectlearn.jdt.j2ee bajo el directorio $HOME/eclipse/plugins/, donde $HOME es tu directorio home.
[vishal@localhost temp/plugins] mv com.objectlearn.jdt.j2ee /home/vishal/eclipse/plugins/.
Configuración de LombozAhora ejecuta Eclipse para configurar Lomboz en $HOME/eclipse/eclipse.
Ve al ménú Windows > Open Perspective > Java como se ve en la siguiente figura:

Ve de nuevo al menú Window > Customize Perspective > Other.

Selecciona el sub-nodo Lomboz Actions.

Pulsa OK. Ahora tendrás un nuevo icono en el menú superior parecido a este:
Pulsa sobre este icono y tendrás una ventana Lomboz J2EE View en tu entorno:

Ahora ya está disponible la vista Lomboz J2EE. Ve a Window > Customize Perspective. Selecciona File > New sub node. Selecciona todos los nodos que empiecen con Lomboz.

Selecciona Window > Show view. Seleciona Console, Se mostrará la vista Lomboz J2EE y otras más como se ve en la figura:

Ahora pulsa OK. Tendrás todas estas opciones bajo File > New > y aparecerá el menú Lomboz, o pulsando con el botón derecho en el Package Explorer aparecerá un menú desplegable.


Configurar JBOSS para ejecutarlo desde dentro de EclipsePrimero tenemos que configurar la selecciones de desarrolo Java, porque Lomboz requiere diferentes directorios para los códigos fuente y binario.
Ve a Window > Preferences > Java > New Project.
Introduce src y bin como nombres de esas carpetas, que serán por defecto. Por favor, no modifiques estos nombres ya que son necesarios para algunas de las tareas de Lomboz.
También debes asegurarte de que la variable de entorno JRE_LIB apunta a la librería JRE.

Ve a Window > Preferences.

Ve al nodo Lomboz bajo la ventana Preferences. Asegurate de que la variable Tools.jar está seleccionada a $JAVA_HOME/lib/tools.jar.

Ve al sub-nodo server definitions bajo el nodo Lomboz. Selecciona JBOSS 3.2.ALL bajo Server types y el resto de las opciones se rellenarán después de cargar el fichero de configuración del servidor creado para este tutorial:
jboss321all.server.

Ahora, bajo Server Definitions, ve a Classpath y asegurate de que todos los paths son correctos. Si hay una mala selección de un path, se mostrará un cruz roja sobre los iconos jar en la subsección Server libraries / Client libraries.

Desde aquí se pueden añadir o eliminar librerías. Asegurate de pulsar Apply para aceptar todos los cambios antes de alterar cualquier opción.
Ahora verifica tus variables de classpath.
Ve a Window > Preferences > Java > Classpath Variables:

Configura todas estas variables del Classpath de acuerdo a tu entorno.
Probar tu ConfiguraciónCrear un proyecto J2EE de prueba para probar tu configuración.
Ve a File > New > Lomboz J2EE Project.

Introduce Test como nombre de proyecto y pulsa Next.
Chequea aquí tu configuración; si tienes Test/src en la carpeta build path y Test/bin en default output está todo bien.

Ahora pulsa en la pestaña Libraries en el Project Creation Wizard. Debido a Bug en Eclipse 2.1 está librería está mal configurada. Por eso, seleccionala y eliminala.

Ahora añade una nueva librería > Add Library.. > Selecciona JRE System library > Next.

Selecciona Default library y pulsa Finish y la nueva librería estará configurada.

|
Nota:
Tendrás que repetir este paso siempre que crees un nuevo proyecto J2EE, debido al bug en Eclipse 2.1 |
Ahora pulsa Next, ve a Web Module > Add.. >, introduce como Module Name OnlineBank y pulsa OK.

Ve a la pestaña Ejb Modules, pulsa Add.. >, e introduce MyBank como Module Name y luego pulsa OK.

Ve a Targeted Server > Add.. > 'JBOSS 3.2.1 ALL'.
|
Nota:
JBOSS 3.2.1 ALL no es el nombre del fichero, sino el nombre asignado al servidor en el fichero jboss321all.server utilizado para su configuración.
<serverDefinition
name="JBOSS 3.2.1 ALL"
ejbModules="true"
|

Pulsa Finish. Ahora tendrás todos estos directorios y librerías bajo el directorio Test en el Package Explorer.


|
Nota:
Si estás interesado en Ant (del proyecto Jakarta) observa que ámbos módulos tienen un fichero build.xml que Ant utiliza para construir la aplicación. |
Ahora ve a Window > Show View > Lomboz J2EE View. La vista Lomboz J2EE tendrá un proyecto Test con dos módulos MyBank y OnlineBank que utilizan JBOSS 3.2.1 como su servidor por defecto:

Es la hora de crear un EJB; ve a File > New > Lomboz EJB, añade un nombre de paquete au.com.tusc; añade MySession en Name. Selecciona la opción Stateless Session EJB.

Esto creará un fichero llamado MySessionBean.java en el paquete au.com.tusc como se observa en la siguiente figura.
|
Nota:
Esto generará el nombre del bean, el nombre JNDI y el tipo del bean. Al nombre del fichero también se le ha añadido la palabra Bean, ya que sólo dimos el nombre MySession. Debes ser cuidadoso con las convenciones de nombrado, ya que sólo necesitas el nombre del bean en el wizard. No añadas la palabra Bean al nombre ya que el wizard lo hace por tí. |

Ahora añadiremos un método de negocio mediante el wizard:
Ve al fichero MySessionBean.java en la ventana Package Explorer y expándelo, pulsa con el botón derecho sobre el nodo MySessionBean como se muestra en la siguiente figura, selecciona New > Lomboz EJB Method wizard. En la firma del método pon public String learnJ2EE(String messg), selecciona el tipo de método como Business Method y el Interface Type como Remote Interface.

Esto generará la firma requerida para tu método de negocio en tu clase bean. Ahora añade esta línea al método:
/**
* @ejb.interface-method
* tview type="remote"
*
**/
public String learnJ2EE (String messg) {
return "Me too! "
}
Graba el fichero. Ahora generaremos el resto de ficheros requeridos para desplegar este Bean (Interfaces Home y Remote junto con las clases de ayuda utilizando Xdoclet).
Primero añade este bean al módulo: Ve a Package Explorer > Test > MySessionBean.java > MySessionBean, pulsa en él con el botón derecho y aparecerá un menú. Ve a Lomboz J2EE en ese menú, y selecciona Add EJB to module'.

Ve a Package Explorer > Test > MyBank (que es un directorio) pulsa con el botón derecho sobre él, aparecerá un menú. Ve a Lomboz J2EE en ese menú, y selecciona Generate EJB classes. Esto generará los interfaces necesarios, las clases de ayuda y los ficheros relacionados con el despliegue; es decir, los descriptores de despliegue:

Creará un nuevo directorio llamado ejbsrc, que tendrá un nuevo paquete llamado au.com.tusc, y bajo este los interfaces remoto y home, junto las clases de ayuda necesarias.
|
Nota:
No editarás ninguno de los ficheros generados por Xdoclet bajo el directorio ejbsrc en ningún momento de este tutorial. Porque cada vez que utilizas la opción Generate EJB Classes, generará los interfaces y las clases de ayuda necesarias que hemos mencionado arriba. Estos ficheros los genera Xdoclet, después de analizar tus clases bean, que se han creado en el wizard de Lomboz. Xdoclet mira las distintas etiquetas y métodos declarados en la clase bean y genera los ficheros adecuados. Como resultado, sólo tienes que añadir los métodos de negocio y sus respectivas implementaciones en la clase bean, y el resto se lo dejas a Xdoclet. Por eso, en ningún momento del desarrollo necesitarás (y no deberás) editar cualquier fichero generado. Lo verás más claro según avances por el tutorial. |
Debajo del directorio MyBank > META-INF también encontrarás 15 ficheros, que incluyen ejb-jar.xml, jboss.xml y ejb-generate.xml. Inicialmente había 6 ficheros; estos nuevos ficheros extras son necesarios para desplegar el bean:

Ahora despleguemos este bean sin entrar en más detalles del despliegue. Ve a la vista Lomboz J2EE en tu espacio de trabajo y expande Test > y luego MyBank. Habrá añadido au.com.tusc.MySessionBean a tu módulo MyBank EJB. Pulsa con el botón derecho en el icono JBOSS 3.2.1 ALL como se muestra en la siguiente figura.

Aparecerá un menu; selecciona la opción Debug Server. Arrancará el servidor en modo Debug y después de arrancarlo mostrará este mensaje en la consola bajo tu espacio de trabajo:

Ve a la vista Lomboz J2EE View >, expande Test >, selecciona MyBank y pulsa en él con el botón derecho; a parecerá un menú; selecciona la opción Deploy:

Una vez desplegado el bean, en la consola verás un mensaje que lo confirma:

Ahora crearemos un cliente para acceder a este bean desplegado en el servidor de aplicaciones JBOSS. Ve a Package Explorer > Test > src, pulsa con el botón derecho y aparecerá un menú; selecciona EJB Test client. Introduce test como nombre de paquete y Client como nombre de cliente:

Selecciona EjbHome como MySessionHome y Ejb Interface como MySession. Finaliza como se muestra en la figura:

Ahora que hemos generado el cliente, es hora de llamar a los métodos de negocio del bean desplegado. Necesitamos algún código para llamar al método del bean:

Teclea estas líneas en el método testBean():
public void testBean() {
try {
au.com.tusc.MySession myBean = getHome().create();
//--------------------------------------
//This is the place you make your calls.
//System.out.println(myBean.callYourMethod());
String request = "I'm tired of 'Hello, world' examples..";
System.out.println("Request from client : " + request);
System.out.println("Message from server : " + myBean.learnJ2EE(request) );
} catch (RemoteException e) {
e.printStackTrace();
} catch (CreateException e) {
e.printStackTrace();
} catch (NamingException e) {
e.printStackTrace();
}
}
Ahora selecciona Client dentro del Package Explorer. Ve al menú superior y pulsa sobre el botón con este icono:
En este icono ve a > Run as > Java Application.

Tu cliente va a realizar un petición y los resultados se mostrarán en la consola del espacio de trabajo, de esta forma:

|
Nota:
Ignora las excepciones, que sólo indican que te falta org.apache.log4j.Property en la path del cliente. Cubriremos esto más adelante ya que no afecta a la funcionalidad del bean. |
Has creado un bean y has podido realizarle una petición, Enhorabuena!!
| Leer comentarios (72) | |
| Escribir comentario | |
| Puntuación: |
|
| Votar | |
| Recomendar este tutorial | |
| Estadísticas |
Copyright © 1999-2006
Programación en castellano.
Todos los derechos reservados.
Formulario de Contacto -
Datos legales -
Publicidad
Hospedaje web y servidores dedicados linux por
Ferca Network