El objetivo principal es visualizar o publicar un StoreProcedure de SQLServer como WebService ,utilizando Jdeveloper para el encapsulamiento.
Uno de principales problemas que hay con Jdeveloper es que no puedes visualizar dichos objetos de forma natural, asi que debemos generar los archivos necesarios con la ayuda del Command Line, una vez generados debemos crear un Partner Link que haga referencia a nuestros objetos creados.
1.-Generación de Archivos (Command Line - Jdeveloper)
Accesamos a la consola de comandos
C:\[jdevstudio]\jdk\bin>
Necesitamos correr un script que incluye las librerias necesarias para crear nuestros objetos (WSDL y XSD ) , y necesitamos crear un archivo.properties donde especificaremos los parametros de conexion.
/* CreateSPFiles.properties */
ProductName=Microsoft SQL Server
DriverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver
ConnectionString=jdbc:sqlserver://[HOST]\\[INSTANCIA]:[PORT];databaseName=[DATABASE]
Username=[usuarioDB]
Password=[password]
ProcedureName=[nombre_storeprocedure]
ServiceName=[wsSPTest]
DatabaseConnection=[SqlConexion]
Destination=D:\\Atmorphius\\FilesSPTemp
/* Librerias */
[jdevhome]\integration\lib\DBAdapter.jar;
[jdevhome]\integration\lib\bpm-infra.jar;
[jdevhome]\integration\lib\orabpel.jar;
[jdevhome]\lib\xmlparserv2.jar;
[jdevhome]\lib\xschema.jar;
[jdevhome]\toplink\jlib\toplink.jar;
[jdevhome]\integration\lib\connector15.jar;
[jdevhome]\j2ee\home\applib\sqljdbc.jar
/* Script */
java -cp [Librerias] oracle.tip.adapter.db.sp.artifacts.GenerateArtifacts [Path] / [Archivo.properties]
Al final de la ejecucion deberemos de obtener 3 Archivos
-DBAdapterOutboundHeader.wsdl
-[ProcedureName].xsd
-[ServiceName].wsdl
Uno de principales problemas que hay con Jdeveloper es que no puedes visualizar dichos objetos de forma natural, asi que debemos generar los archivos necesarios con la ayuda del Command Line, una vez generados debemos crear un Partner Link que haga referencia a nuestros objetos creados.
1.-Generación de Archivos (Command Line - Jdeveloper)
Accesamos a la consola de comandos
C:\[jdevstudio]\jdk\bin>
Necesitamos correr un script que incluye las librerias necesarias para crear nuestros objetos (WSDL y XSD ) , y necesitamos crear un archivo.properties donde especificaremos los parametros de conexion.
/* CreateSPFiles.properties */
ProductName=Microsoft SQL Server
DriverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver
ConnectionString=jdbc:sqlserver://[HOST]\\[INSTANCIA]:[PORT];databaseName=[DATABASE]
Username=[usuarioDB]
Password=[password]
ProcedureName=[nombre_storeprocedure]
ServiceName=[wsSPTest]
DatabaseConnection=[SqlConexion]
Destination=D:\\Atmorphius\\FilesSPTemp
/* Librerias */
[jdevhome]\integration\lib\DBAdapter.jar;
[jdevhome]\integration\lib\bpm-infra.jar;
[jdevhome]\integration\lib\orabpel.jar;
[jdevhome]\lib\xmlparserv2.jar;
[jdevhome]\lib\xschema.jar;
[jdevhome]\toplink\jlib\toplink.jar;
[jdevhome]\integration\lib\connector15.jar;
[jdevhome]\j2ee\home\applib\sqljdbc.jar
/* Script */
java -cp [Librerias] oracle.tip.adapter.db.sp.artifacts.GenerateArtifacts [Path] / [Archivo.properties]
Al final de la ejecucion deberemos de obtener 3 Archivos
-DBAdapterOutboundHeader.wsdl
-[ProcedureName].xsd
-[ServiceName].wsdl
2.-Creando WebService
Una vez que ya tenemos los archivos, procedemos a generar nuestro proyecto BPEL, el primer paso es copiar los archivos al directorio de nuestra aplicación e importar nuestro nuevo XSD,una vez terminado este proceso,lo siguiente es generar nuestro Partner Link y un objeto Invoke para que nuestro WSDL nos regrese la informacion que muestra el StoreProcedure.
Copiamos los archivos a nuestro directorio de proyecto dentro de la carpeta bpel, damos un refresh a la pantalla para verificar que los archivos se hayan copiado correctamente,posteriormente creamos nuestro PartnerLink , el objeto Invoke y por ultimo los objetos de Asignacion de entrada y salida de información.
Creamos el Partner Link con el WSDL creado.
Ahora tenemos que modificar el esquema de entrada y salida de información para eso tenemos que verificar cuales son los datos de entrada y de salida de nuestro StoreProcedure, asi que procedemos a ejecutarlo y modificamos el esquema.
3.-Creando Conexion
Ahora necesitamos crear la conexion que vamos a usar para poder deployar nuestro servicio.
Crear Conexion MSSqlServer en Oracle SOA Suite
*** NOTA IMPORTANTE ***
todos los pasos para generar la conexion son correctos , la unica diferencia es el parametro de la Conexion Factory.
platformClassName = oracle.toplink.platform.database.SQLServerPlatform
Otra cosa tambien no menos importante es verificar el nombre con la cual vamos a crear la conexion , para este ejemplo usamos SqlConexion.
3.-Deploy del WebService sobre Oracle SOA Suite.
Para el caso de Mac Os X tuve problemas al querer generar los archivos , seguiré intentando , pero si ya tienes los archivos lo de menos es pasarlos a tu Mac y hacer el proceso de encapsulamiento.
0 comentarios:
Publicar un comentario