Antes de empezar este ejercicio, debe completar el .
La aplicación visualiza una lista de todos los registros de empleados actuales del directorio. Los registros se visualizan en un componente JTable (employeesTable) con columnas ordenables, que incluyen el apellido, el nombre, el correo electrónico y el ID de empleado. Para obtener los registros de la tabla, debe enlazar la employeesTable con un objeto de datos devuelto por el origen de datos del servicio Web de ejemplo.
En este ejercicio, debe realizar los dos pasos siguientes:
Para obtener un objeto de datos local con el que pueda funcionar employeesTable, deberá utilizar el editor visual par añadir un origen de datos a la aplicación. El origen de datos se conecta al proxy de servicio Web de ejemplo y descubre los métodos de servicio disponibles para su aplicación. A continuación elegirá el método de servicio getLightEmployeeRecord que el origen de datos ha dejado disponible. Finalmente, enlazará la employeesTable de la aplicación con los campos devueltos en el objeto de datos de fila (lightEmployeeRecordRows).
Puede crear todos estos orígenes de datos y objetos de datos rápida y fácilmente utilizando las clases de enlazador incorporadas del editor visual Java. El editor visual proporciona un conjunto de interfaces y clases genéricas que se generan en el proyecto al enlazar componentes visuales con fábricas de datos. Las clases de enlazador se generan por omisión en un paquete llamado jve.generated. El editor visual proporciona las clases de enlazador como implementación genérica que puede personalizar y mejorar para ajustarla a las necesidades de la aplicación. Esta guía de aprendizaje muestra el poder y la flexibilidad de una utilización simple y básica de las clases de enlazador predeterminadas.
Importante: antes de empezar este ejercicio, es muy recomendable leer los temas de ayuda que se indican a continuación. Estos temas pueden ayudarle a aprender más acerca de la funcionalidad y la lógica que hay tras los objetos de datos, los orígenes de datos y los enlazadores proporcionados por el editor visual Java:
En esta guía de aprendizaje utilizará un origen de datos de servicio Web, varios tipos de objetos de datos y varios tipos de enlazadores en la aplicación. Cuando se añaden instancias de estos objetos a la aplicación, el editor visual añade las clases necesarias al paquete jve.generated del proyecto, en el que puede ampliar, sustituir o reescribir la lógica de enlace de datos. El editor visual Java suministra soporte visual para los objetos de enlace mostrando en el área de diseño de la vista de diseño los objetos de datos, los orígenes de datos y los enlazadores utilizados por la aplicación. El editor visual traza líneas entre los componentes visuales y los objetos de datos y los orígenes de datos para mostrar los enlaces actuales para cualquier objeto seleccionado.
El diagrama siguiente es una visión general simple de cómo interactúan los componentes visuales, enlazadores, objetos de datos y orígenes de datos. La aplicación que se construye en esta guía de aprendizaje ilustra una utilización ligeramente más compleja y creativa de los enlazadores. Este diagrama no representa exactamente los enlazadores, objetos de datos y orígenes de datos de la aplicación de ejemplo que está construyendo.
Figura 1. Este diagrama ilustra una relación de ejemplo entre componentes visuales, enlazadores, objetos de datos y orígenes de datos.
En la figura 1, cada componente visual tiene su propio enlazador que lo asocia con un objeto de datos o, en el caso del botón, con un origen de datos. Los enlazadores de los campos e texto enlazan el campo con una propiedad determinada del objeto de datos. Tanto el objeto de datos de fila como el objeto de datos de este diagrama obtienen los datos de llamadas directas a un servicio del origen de datos. El Objeto de datos para los campos de texto utiliza un valor clave de la fila seleccionada en la tabla como su argumento para llamar a Service2, que devuelve un registro completo que presumiblemente incluye más información acerca de la fila seleccionada en la tabla. Este registro completo, a su vez, se utiliza como el argumento para el enlazador de acción del botón cuando llama a Service3, que puede ser un método que actualiza los valores entrados en los campos. Para obtener una explicación más detallada de los objetos de datos, enlazadores de datos y orígenes de datos, siga los enlaces proporcionados anteriormente.
Para trabajar con el servicio Web que se está ejecutando en un servidor, la aplicación Java necesita un proxy Java o un cliente para interactuar con él. Utilizando un archivo WSDL, puede generar un proxy Java en el proyecto Java utilizando el asistente Cliente de servicio Web. El proyecto MyDirectory incluye el archivo EmployeeDirectory.wsdl que utilizará para generar este proxy. Después de generar el proxy Java, puede crear un origen de datos que representa el servicio Web y empiece a enlazar componentes visuales.
Importante: El archivo WSDL que se utiliza en este ejercicio presupone que ha desplegado el servicio Web en una instalación local de WebSphere Application Server y ha utilizado el puerto por omisión para localhost (http://localhost:9080). Si desplegó el archivo EAR de forma distinta, debe editar el archivo WSDL en consecuencia antes de continuar.
Para generar un proyx Java de servicio Web en el proyecto:
Puesto que employeesTable es el primer componente visual que está enlazando en esta aplicación, debe crear un origen de datos que señale al proxy de servicio Web de ejemplo que acaba de añadir al proyecto. Al enlazar otros componentes visuales en ejercicios posteriores, reutilizará este origen de datos. En este paso, se añade el origen de datos de servicio Web y el objeto de datos lightEmployeeRecordRows.
Para enlazar la tabla de empleados:
Sugerencia: puesto que está enlazando una tabla, el recuadro de diálogo Objeto de datos de origen de datos nuevo solo visualiza servicios que devuelven objetos de datos de fila. En este caso, el método getLightEmployeeRecords() es el único servicio disponible que devuelve una matriz de objetos.
Sugerencia: cuando haya terminado de enlazar la tabla, siempre puede volver a las propiedades de enlace y redenominar y reordenar las columnas en cualquier momento.
Ahora, employeesTable está enlazada al objeto de datos
lightEmployeeRecordRows mediante un JRowTableBinder. Si pulsa el objeto de datos
lightEmployeeRecordRows en el área de formato libre, el editor visual traza una línea desde el
objeto de datos a la tabla. En la línea, JRowTableBinder está representado por el icono del
enlazador de tabla
. Otra
línea indica que el objeto de datos utiliza webServiceDataSource como el origen de datos.
Examine los cambios en el proyecto y la aplicación. Durante este ejercicio ha añadido el origen de datos del servicio Web, un objeto de datos de fila y un enlazador que enlaza employeesTable con el objeto de datos de fila. Examine el paquete nuevo (jve.generated) que se ha creado en el proyecto para albergar todas las clases de enlazador generadas por el editor visual Java. Fíjese también en el paquete nuevo (directory.service) que alberga el proxy Java para el servicio Web.
Ahora, cuando ejecute la aplicación , el servicio Web poblará la tabla de empleados con los registros de empleado existentes.