Zona HTML Zona Java Zona PHP Zona ASP Zona Bases de datos
-Tutoriales

APIs de Java para XML


Un Escenario de Ejemplo

. Introducción

El siguiente escenario es un ejemplo de cómo podrían usarse los APIs de Java para XML y cómo trabajan juntos. Parte de la riqueza de los APIs de Java para XML es que en muchos casos ofrecen formas alternativas para hacer algo dejándonos así personalizar nuestro código para encontrar las necesidades individuales. Esta sección apuntará algunos ejemplos en que se podría haber utilizado un API alternativo y también ofrece las razones por las que un API u otro podría ser una mejor elección.

. Escenario

Supongamos que el propietario de una cadena de cafeterías, llamada "The Coffee Break", quiere ampliar la línea de cafés que vende. Ha instruido a su manager de negocio para que encuentre nuevos suministradores de café y obtenga sus precios al por mayor. "The Coffee Break" puede analizar los precios y decidir qué nuevos cafés quiere traer y a qué compañías quiere comprárselos. El manager asigna la tarea al ingeniero de software de la compañía, que decide que la mejor forma de localizar nuevos suministradores de cafés es buscarlos en el registro de negocios ebXML, donde el "The Coffee Break" ya está registrado.

El ingeniero usa JAXR para enviar una consulta buscando suministradores de café al por mayor. JAXR envía mensajes usando JAXM en segundo plano, lo que se asegura que el registro será capaz de recibirlo y entenderlo.

El registro ebXML recibirá la consulta y aplicará el criterio de búsqueda del código JAXR a la información que tiene sobre las organizaciones registradas. Cuando se complete la búsqueda, el registro enviará de vuelta una lista de los distribuidores que venden café al por mayor.

El siguiente paso del ingeniero es diseñar una petición de lista de precios y eviarla a cada uno de los distribuidores usando JAXM. Escribe una aplicación que obtiene una conexión con el servicio de mensajería de la compañía para poder enviar la petición. Luego crea un mensaje JAXM, le añade la petición y lo envía.

Cada distribuidor de café recibe la petición y antes de enviar los precios actuales, comprueba su servicio de stocks usando JAX-RPC para obtener los plazos de entrega y precios para los los cafés. Basándose en los número obtenidos, los distribuidores envían a "The Coffee Break" sus precios revisados en una hoja de precios XML. Los vendedores usan XML porque de esa forma pueden usar una formato que es conveniente para ellos y que sus compradores pueden procesar fácilmente incluso si están utilizando diferentes sistemas de información.

. Comparar Precios y Pedir Cafés

El ingeniero decide usar JAXB para procesar las listas de precios. Las lista de distribuidores que devolvió el registro contenía información de cómo obtener las DTDs que usan los distribuidores, y convenientemente, todos usan un formulario estándard para la lista de precios. Como todos usan un DTD estándar, el ingeniero puede crear un conjunto de clases a partir del DTD que aplica a la lista de precios de todos los suministradores. (De otro modo, debería usar SAX o DOM para hacer el procesamiento). La aplicación del ingeniero trabajará con cada café como un objeto que tiene una propiedad price y una propiedad name. Después de ejemplarizar las clases, la aplicación obtiene los precios de los objetos Coffee y compara los precios envíados por los diferentes vendedores.

Cuando el propietario y el manager del negocio deciden con qué suministrador hacer negocios, basándose en la comparación de precios del ingeniero, están listos para envíar el pedido. Con JAXB, el ingeniero crea un nuevo formulario de pedido XML basándose en las clases generadas desde el DTD de la lista de precios. Este nuevo formulario de pedido que contiene sólo los cafés que el propietario quiere comprar, se envía a los suministradores mediante JAXM. Cada suministrador reconocerá la recepción del pedido mediante JAXM.

. Vender Cafés por Internet

Mientras tanto, el "The Coffee Break" se ha estado preparando para extender su línea de cafés. Necesita publicar un nuevo formulario de pedido/lista de precios en HTML para su web site. Pero antes de poder hacer esto, la compañía necesita determinar el precio que cobrará. El ingeniero usa los mismos objetos creados para comparar precios y compone un formulario completo para aceder a cada precio y multiplicarlo por el 125% para llegar al precio que cobrará el "The Coffee Break". Con unas pocas modificaciones, la lista de precios al detalle se convertirá en el formulario de pedido online.

Con los objetos conteniendo los nuevos precios al detalle, el ingeniero puede usar la tecnología "JavaServer Pages TM" (JSP) para crear un formulario de pedido HTML que los clientes pueden usar para pedir cafés online. El ingeniero accede a los objetos desde la página JSP e inserta el nombre y el precio de cada objeto Coffee en una tabla HTML sobre la página JSP. El cliente introduce la cantidas de cada café que quiere pedir y pulsa el botón Submit para enviar el pedido.

. Conclusión

Aunque este escenario se ha simplificado para mantenerlo breve, ilustra cómo las tecnologías XML están subiendo en el mundo de los servicios web. Y ahora, con los APIs de Java para XML y la plataforma J2EE, se hace sencillo implementar servicios Web y escribir aplicaciones que sean clientes de servicios Web.

 
Patrocinados
 

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