? Artículos técnicos Grupo Danysoft: ¿Cómo puede ayudarle JBuilder en sus Desarrollos Java? Oscar Cristóbal Ruiz Departamento Java – Equipo Grupo Danysoft Enero 2003 - (902) 123146 www.danysoft.com ¿Cómo puede ayudarle JBuilder en sus desarrollos Java? El presente artículo intenta mostrarle de qué forma puede ayudarle JBuilder en sus desarrollos Java. Procuraré ser concreto, centrarme en temas específicos, y no limitarme a enumerar una a una cada una de las utilidades que JBuilder ofrece, ya que ese tipo de documentos son a menudo bastante confusos y desorientan a aquellos que no conocen la herramienta. Voy a analizar varias áreas concretas del desarrollo Java, y mostrar que herramientas pone JBuilder a su disposición. Espero que de ese modo pueda conocer fácilmente qué es lo que JBuilder y Borland pueden hacer por usted. La razón por la que tomo esta perspectiva es la siguiente: La mayoría de los desarrolladores Java no están realizando una aplicación multicapa en la que se accede a un servidor J2EE que sirve páginas dinámicas JSP con applets embebidas, donde la lógica de negocio se encuentra en EJBs que residen en el Contenedor de EJBs del servidor, con EJBs de entidad que dan persistencia a los objetos de la aplicación y mejoran el rendimiento de la conexión con una Base de Datos remota vía JDBC. Esta aplicación multicapa también permite el acceso con una utilidad de escritorio, que utiliza Swing para mostrar los registros de la base de datos. A su vez, se dispone de un servidor de JMS, que permite comunicarse con el servidor de aplicaciones de forma asíncrona, y cuyas llamadas son recogidas por EJBs MessageDriven. Esta aplicación tiene acceso a otra plataforma .NET a través de CORBA y Servicios Web. Y además, accede a otros objetos remotos Java vía RMI-IIOP. Por supuesto, también se está desarrollando un interfaz para poder acceder al sistema con un dispositivo móvil PDA. El proyecto cuenta con una gran cantidad de desarrolladores, y por lo tanto se hace necesario el uso de un Sistema de Control de Versiones, como Rational Rose. Bien, si usted está involucrado en un proyecto de las dimensiones descritas arriba, ¡enhorabuena! Acaba de encontrar su herramienta de desarrollo Java adecuada. JBuilder le permitirá trabajar en todas esas áreas, con la mejor integración del mercado, editores gráficos para casi todo lo que pueda imaginar, cómodos y fáciles asistentes que le permitirán volver a casa mucho antes con la tranquilidad del trabajo bien hecho y terminado. Si este es su caso, contacte con Danysoft, en http://java.danysoft.com o envíenos un mail a java@danysoft.com. Podrá encontrar toda la información que necesite. Y si lo desea, le podemos enviar artículos e información adecuada a sus necesidades. Le mostraremos artículos que le citarán de la A a la Z todas las características de JBuilder, una a una. Pero quizá no tenga todas las necesidades de ese desarrollador. Quizá esté desarrollando una aplicación de escritorio, que debe manejar registros de una Base de Datos. © 2003 Grupo Danysoft - +34.916 638683 – www.danysoft.com – Página: 2 - 9 Quizá esté desarrollando una aplicación web. Esta aplicación residirá en el servidor de aplicaciones corporativo, y se pretende crear varias JSPs que muestren cierta información dinámica al usuario. O quizá esté comenzando a sumergirse en lo misterios del desarrollo J2EE, como desarrollador de EJBs. Si se encuentra en algunos de los últimos casos, quizá piense que trabajar con un editor de texto y con la línea de comando sea más que suficiente. Quizá incluso haya descargado de la web un entorno de desarrollo Java gratuito, con el que puede realizar TODO lo que necesita desde él. En definitiva; ¿hay algo más que escribir código y compilar? La respuesta es: EVIDENTEMENTE, SI. En este caso, estamos hablando de PRODUCTIVIDAD. No hay nada que no pueda hacer con su editor de texto y la línea de comandos... pero si usa la herramienta adecuada, el tiempo de desarrollo puede reducirse significativamente. Ahí entra JBuilder. Pretendo mostrarle cómo puede ayudarle JBuilder a desarrollar su aplicación. Voy a dividir el artículo en varias secciones, dependiendo del tipo de desarrollo que esté realizando. No quiero mostrarle la gran cantidad de utilidades que JBuilder le ofrece. Sólo quiero indicarle cómo puede ayudarle JBuilder en su proyecto. Desarrollo de interfaces gráficas JBuilder ofrece un cómodo diseñador gráfico, en el que puede insertar componentes gráficos y configurarlos visualmente, de este modo puede “dibujar” su aplicación. La siguiente figura le muestra el diseñador gráfico: © 2003 Grupo Danysoft - +34.916 638683 – www.danysoft.com – Página: 3 - 9 El área central es el editor gráfico propiamente dicho. Sobre él podrá encontrar la paleta de componentes, donde puede seleccionar los controles que quiere insertar en su aplicación. Se encuentran ordenados por pestañas, de modo que le sea más fácil su localización. Desde la paleta de componentes podrá acceder fácilmente a los controles AWT y Swing. La figura anterior muestra, por ejemplo, un JPanel en el que se incluyeron varios JButton, varios JLabel, un JTextField y un JList. Lo más interesante del diseñador es que puede trabajar sobre los componentes de forma visual. Puede cambiar el tamaño, la posición y la apariencia de sus controles con el ratón. A la derecha del área del diseñador, verá el Inspector de Objetos. Puede seleccionar un componente, y variar sus propiedades visualmente desde él: color, texto, tamaño preferido, restricciones de layout, etc.. Desde el Inspector también puede acceder a la gestión de eventos. JBuilder le ofrecerá un listado de los eventos disponibles para el objeto seleccionado. Con un doble clic, JBuilder creará de forma automática el código y métodos necesarios, de modo que usted sólo tenga que rellenar el método que recoge el evento. Además de componentes AWT y Swing, podrá encontrar todo tipo de componentes en la paleta de componentes: componentes de acceso a base de datos, CORBA, XML, etc. La paleta de componentes puede ser configurada para incluir sus propios componentes JavaBeans. Voy a detenerme algo más en los componentes de acceso a base de datos. JBuilder incluye los componentes DataExpress (conexión con Base de Datos), dbSwing (componentes gráficos basados en Swing) e InternetBeans (aplicaciones web de acceso a base de datos). Comentaré estos componentes en mayor profundidad en la siguiente sección. Para resumir, estoy hablando de productividad. No se trata de escribir código, y luego ejecutarlo para ver el resultado... se trata de “pintar” su interfaz gráfico, con la mayor flexibilidad posible. Desarrollo de aplicaciones de Acceso a Base de Datos En este caso, voy a destacar tres aspectos principales. En primer lugar, me gustaría indicar la suite de componentes que Borland incluye en JBuilder. DataExpress son unos componentes que cubren la lógica de conexión con una base de datos. Permiten realizar la conexión JDBC, y facilitan la realización de consultas, consumo de procedimientos almacenados, etc. Trabajando con el Diseñador gráfico, puede realizar la conexión y crear una consulta SQL de modo visual, como se muestra en las siguientes figuras. La primera de ellas muestra la configuración de una conexión con una base de datos, en este caso Interbase. La segunda muestra la creación visual de una consulta SQL. © 2003 Grupo Danysoft - +34.916 638683 – www.danysoft.com – Página: 4 - 9 En la paleta de componentes podrá también localizar los componentes dbSwing, que le proporcionan componentes gráficos específicos para aplicaciones de Bases de Datos. Creados sobre el API Swing, proporcionan una conectividad más cómoda con los datos a mostrar. Los componentes InternetBeans le facilitan la creación de aplicaciones web de acceso a bases de datos. Se trata de una librería de componentes para Servlets y una librería de tags para JSPs, que facilitan la creación de páginas dinámicas y la conectividad con DataExpress. El segundo aspecto a destacar son las interesantes facilidades que el diseñador gráfico proporciona para el desarrollo de este tipo de aplicaciones. En la siguiente figura se muestra un interfaz gráfico basado en componentes dbSwing. Como puede ver, ya se muestra el resultado de la consulta SQL en tiempo de desarrollo. Me gustaría aclarar que JBuilder no le encierra en DataExpress y dbSwing. Puede utilizar las APIs de Sun directamente, con Swing y JDBC. También se aventajará del © 2003 Grupo Danysoft - +34.916 638683 – www.danysoft.com – Página: 5 - 9 diseñador gráfico. La elección es suya, y Borland sólo pone a su disposición otro conjunto de componentes más, que puede utilizar si los necesita. En último lugar, me gustaría nombrar la herramienta “Explorador de bases de datos”. Esta herramienta le permite navegar por las tablas de una base de datos, ver sus procedimientos almacenados, e incluso introducir consultas SQL y ver sus resultados, como muestra la figura. Desarrollo de Aplicaciones Web Existen varias razones que hacen de JBuilder el entorno adecuado para el desarrollo de aplicaciones web. En primer lugar, JBuilder proporciona asistentes que le facilitan la creación de Servlets, applets y JSPs básicas sobre las que comenzar a construir sus aplicaciones. Para el desarrollo de Applets, destacaría la posibilidad de utilizar el Diseñador gráfico para crear el interfaz gráfico de modo visual. Además, JBuilder permite cambiar el JDK con el que se ejecutan sus aplicaciones. Esto le permitirá ejecutar sus applets en JDKs más antiguos para estudiar el comportamiento de su applet en distintos entornos. JBuilder tiene un navegador web completamente integrado en el IDE, por lo que puede visualizar sus aplicaciones web desde el entorno, lo que facilita enormemente el desarrollo, ya que no tiene que salir del IDE para testear su aplicación. © 2003 Grupo Danysoft - +34.916 638683 – www.danysoft.com – Página: 6 - 9 Además, ofrece el contenedor web Tomcat 3.3 y 4.0, lo que le permite ejecutar sus aplicaciones desde el IDE. La existencia de un contenedor web y un browser en JBuilder, hace posible depurar aplicaciones web desde el IDE. En las siguientes figuras aparece una aplicación web. La primera de ellas muestra una Servlet, servida desde el contenedor web Tomcat 4.0 de JBuilder, y mostrada en su browser integrado. La segunda, muestra el código de la anterior servlet, en el depurador de JBuilder. Para pasar de la vista de la aplicación al código, sólo es necesario hacer clic sobre la pestaña adecuada. Por último, JBuilder ofrece una gran integración con los principales servidores de aplicaciones. La siguiente sección ofrece una tabla con los servidores soportados. En el caso de que JBuilder soporte su servidor de aplicaciones, creará de modo automático los descriptores de despliegue necesarios para su servidor de aplicaciones, podrá usar un cómodo asistente para desplegar su aplicación web al servidor, y podrá lanzar el servidor desde el mismo entorno de desarrollo. Las siguientes dos figuras muestran el asistente de despliegue para Borland Enterprise Server y para un servidor Weblogic 6.1. © 2003 Grupo Danysoft - +34.916 638683 – www.danysoft.com – Página: 7 - 9 Desarrollo EJBs JBuilder 7 permite el fácil desarrollo de Enterprise JavaBeans. Proporciona soporte para las especificaciones 1.x y 2.0. Para las especificaciones 1.x, se dispone de diversos asistentes que permiten la generación del código básico a partir del cual desarrollar nuestras propias EJBs. Para el caso de creación de EJBs siguiendo la especificación 2.0, JBuilder 7 proporciona un potente diseñador visual two-way, de modo que cualquier cambio en el diseñador se verá inmediatamente reflejado en el código, y viceversa. Este diseñador permite trabajar de modo visual con las EJBs, facilitando el desarrollo de las mismas. JBuilder automatizará el trabajo repetitivo e incómodo de creación de descriptores de despliegue e interfaces, de modo que usted se puede centrar en codificar la verdadera lógica de negocio de su aplicación. Desde el diseñador de EJBs puede crear y modificar VISUALMENTE campos, métodos, indicar en qué interfaz debe aparecer un método determinado, crear relaciones entre EJBs, crear Entity Beans a partir de un esquema de una base de datos, y acceder en todo momento al código que esta siendo creado, incluso a los descriptores de despliegue. Por supuesto, una vez terminada su EJB, JBuilder le ayudará a desplegar su fichero JAR al servidor de aplicaciones con los asistentes de despliegue. La siguiente tabla le muestra los servidores soportados. © 2003 Grupo Danysoft - +34.916 638683 – www.danysoft.com – Página: 8 - 9 Servidor de Aplicaciones Principales APIs soportadas Borland Enterprise Server, AppServer Edition 5.0.2 EJB 1.1/J2EE 1.2 y EJB 2.0/J2EE 1.3 Borland AppServer 4.5 EJB 1.1 BEA Weblogic Server 7.0 EJB 1.1/J2EE 1.2 y EJB 2.0/J2EE 1.3 BEA Weblogic 6.1 EJB 1.1/J2EE 1.2 y EJB 2.0/J2EE 1.3 BEA Weblogic 5.1 y 6.0 EJB1.1 WebSphere 3.5 EJB 1.0 WebSphere 4.0 EJB 1.1 iPlanet Application Server 6.5 EJB 1.1 iPlanet Application Server 6.0 EJB 1.1 Oracle 9i Applications Server Conclusión Al escribir este artículo, pretendía mostrar a los desarrolladores individuales qué es lo que JBuilder puede hacer por ellos en su área de trabajo. JBuilder es una herramienta muy amplia, y contiene una gran cantidad de utilidades que a veces pueden desorientar debido a su gran número. JBuilder es una excelente herramienta de desarrollo Java, adecuada tanto para los desarrollos más complejos, como para aplicaciones sencillas. Contacte con nosotros, y le orientaremos sobre qué le puede ofrecer JBuilder en su caso particular. © 2003 Grupo Danysoft - +34.916 638683 – www.danysoft.com – Página: 9 - 9