Llamadas a procedimientos almacenados desde Java
Publicado por Luis (1 intervención) el 19/01/2009 16:45:16
Hola a tod@s, a ver quién me puede ayudar con esta duda que tengo, he echado un vistazo en internet y no he encontrado ningún ejemplo. Os cuento mi caso:
En el Iseries tenemos un RPG que puede ser llamado pasándole una serie de parámetros, hasta aquí todo bien. El caso, es que ahora queremos llamar desde Java a un procedimiento almacenado creado en el Iseries pasándole los parámetros para que el procedure llame al RPG. Por otro lado, en todo este proceso queremos mantener la transaccionalidad, o sea, imaginemos que desde Java llamamos al procedimiento almacenado, el procedimiento llama al RPG para que este inserte en la tabla que corresponda. Pero por otro motivo el Java da un error antes de finalizar el proceso, en este caso nos gustaría que se hiciese Rollback en el RPG también.
He estado viendo varias opciones por ahí pero aún no he llegado a la solución para este problema.
He visto este comando STRCMTCTL , pero creo que solo lo puedo utilizar desde un CL, he pensado llamar desde Java directamente al RPG pero el caso es, que este RPG no lo podemos modificar ya que es propiedad de una aplicación que hemos comprado.
¿Hay alguna opción al crear el procedure para especificar que se mantenga la transaccionalidad tanto del programa externo que llama al procedimiento como al rpg que llama dicho procedure?
¿A alguién se le ocurre como podría hacerlo?
Muchas gracias.
Un saludo.
En el Iseries tenemos un RPG que puede ser llamado pasándole una serie de parámetros, hasta aquí todo bien. El caso, es que ahora queremos llamar desde Java a un procedimiento almacenado creado en el Iseries pasándole los parámetros para que el procedure llame al RPG. Por otro lado, en todo este proceso queremos mantener la transaccionalidad, o sea, imaginemos que desde Java llamamos al procedimiento almacenado, el procedimiento llama al RPG para que este inserte en la tabla que corresponda. Pero por otro motivo el Java da un error antes de finalizar el proceso, en este caso nos gustaría que se hiciese Rollback en el RPG también.
He estado viendo varias opciones por ahí pero aún no he llegado a la solución para este problema.
He visto este comando STRCMTCTL , pero creo que solo lo puedo utilizar desde un CL, he pensado llamar desde Java directamente al RPG pero el caso es, que este RPG no lo podemos modificar ya que es propiedad de una aplicación que hemos comprado.
¿Hay alguna opción al crear el procedure para especificar que se mantenga la transaccionalidad tanto del programa externo que llama al procedimiento como al rpg que llama dicho procedure?
¿A alguién se le ocurre como podría hacerlo?
Muchas gracias.
Un saludo.
Valora esta pregunta


0