APIs de Java para XML

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.

COMPARTE ESTE ARTÍCULO

COMPARTIR EN FACEBOOK
COMPARTIR EN TWITTER
COMPARTIR EN LINKEDIN
COMPARTIR EN WHATSAPP
ARTÍCULO ANTERIOR

SIGUIENTE ARTÍCULO