La siguiente Clase debe ser activada como web service dentro de Axis, si requiere mayor información sobre como activar("deploy") clases en Axis se recomienda Guia de Axis ( http://www.osmosislatina.com/axis ) .
Dicha Clase ya se encuentra activada("deployed") como web service en instalación de Tomcat bajo : |
El código fuente de esta Clase también será utilizado para generar un archivo WSDL ("Web-Services Description Language"), el cual permitirá accesar este web service de clientes escritos en distintos lenguajes.
package com.osmosislatina.xml.soap; import java.util.*; public class CotizacionPetroleo { protected String tipo; protected int volumen; protected double precioActual; protected double precioVolumen; protected double precioTotal; private double valorTipo(String tipo) { // Esta información debería ser extraída de una Base de Datos // por razones ilustrativas se fijan los precios en la función /*************************************/ /****** INICIA TABLA DE PRECIOS ******/ /*************************************/ Hashtable mercado = new Hashtable(); mercado.put("Azteca",new Double(11.22)); mercado.put("Bolivar",new Double(8.56)); mercado.put("Brent",new Double(15.23)); mercado.put("Mexico",new Double(12.45)); mercado.put("Texas-L",new Double(16.32)); /*************************************/ /***** TERMINA TABLA DE PRECIOS ******/ /*************************************/ // Extrear Informacion Double extraccion = (Double) mercado.get(tipo); double precioActual = extraccion.doubleValue(); return precioActual; } public double cotizacion(String tipo, int barriles) { precioActual = valorTipo(tipo); precioTotal = precioActual * barriles; return precioTotal; } } |
El primer paso es declarar las librerías ("packages") que serán utilizadas por dicha Clase.
Se inicia la definición del método valorTipo
el cual retorna un determinado precio en base al nombre del petróleo introducido.
Dentro del método cotización se realiza un calculo en base al número de barriles solicitados.
NOTA: Nótese que la Clase anterior no hace uso de ninguna librería/clase de Axis, esta Clase podría ser cualquier mecanismo/funcionamiento que ya este definido dentro de su sistema, el único paso especifico de web services es activar ("deploy") dicha Clase dentro del "SOAP Engine", en este caso Axis.
template
, XPath, Condicionales y Ciclos en XSL.