Consumir Un Web Service Desde Oracle 9i Forms
Consumir Un Web Service Desde Oracle 9i Forms
Crear la forma
Se asume que para esta parte del ejercicio, ud tiene una instalación de Oracle Forms
9i funcionando correctamente .
Una vez ha creado el Web Service Stub, el siguiente paso es crear un formulario para
llamar el Web Service. Para hacer esto tan sencillo como sea posible, simplemente
adicionaremos un botón con el cual se llamará el Web Service y retornará la tasa de
cambio. Esto, por supuesto, puede ser elaborado acorde con las necesidades de su
aplicación.
Seleccione Start > Settings > Control Panel . Doble click en System, luego click
en la pestaña Advanced y entonces click en el botón Environment Variables. De
1. las variables del sistema, seleccione CLASSPATH y luego presione Edit. Adicione
el nombre del directorio completo al archivo JAR creado en el anterior paso 7.
Presione el boton OK para cerrar el diálogo.
El siguiente paso es actualizar el archivo de ambiente de Forms para indicar la
localización del archivo Jar , esto es, modificar el archivo default.env.
Adicione la ruta completa del directorio y el nombre de archivo del Jar a la entrada
2. CLASSPATH.
Ejm.
CLASSPATH =
D:\9.0.4.11.71\jdev\mywork\Webservice\Project1\deploy\archive1.jar;D:\...
3. Inicie Oracle9 i Forms y cree un nuevo formulario. Cree un bloque y un lienzo.
Seleccione Program > Import Java Classes y seleccione la clase Java creada en
4. JDeveloper. Presione Import. Esto creará un paquete PL/SQL para la clase Java
CurrencyExchangeServiceStub.
Cambie el campo Import Classes a java.lang.Float y presione Import. Esto creará
un paquete PL/SQL para la clase Java Float. Esto es necesario porque el
5. CurrencyExchangeServiceStub retorna un objeto de tipo Float. Este tipo de dato
no es nativo de Forms y por lo tanto debe ser importado el objeto Float.
Cambie el campo Import Classes a java.lang.Exception y presione Import. Esto
creará un paquete PL/SQL para la clase Java Exception. Aunque esto no es
6. esencial, facilita la captura y reporte de errores/excepciones. Presione luego Close
para ocultar el cuadro de diálogo.
7. Adicione un botón al liezo y en el trigger When-Button-Pressed adicione el
siguiente código:
DECLARE
jo ora_java.jobject;
rv ora_java.jobject;
ex ora_java.jobject;
BEGIN
jo := CurrencyExchangeServiceStub. new ;
--
--This will get the exchange rate from US Dollars to UK Sterling.
--
rv := CurrencyExchangeServiceStub.getRate ( jo,' USA ',' UK ' ) ;
message ( float_.floatValue ( rv )) ;
EXCEPTION
WHEN ORA_JAVA.JAVA_ERROR then
message ( ' Unable to call out to Java, ' || ORA_JAVA.LAST_ERROR ) ;
WHEN ORA_JAVA.EXCEPTION_THROWN then
ex := ORA_JAVA.LAST_EXCEPTION;
message ( Exception_.toString ( ex )) ;
END ;
Esto llamará la clase Java con dos parámetros y retornará la tasa de cambio, a
través de un mensaje de Forms.
Ejecute el formulario y presione el botón. Este ahora mostrará la tasa de cambio
8. de moneda US a UK.