Oracle JDBC OCI & TAF
Actualmente estoy en un proyecto donde se quiere utilizar las caracteristicas de TAF -Transparent Application Failover- que tiene implementado Oracle en su driver JDBC OCI.
Los ejemplos y documentacion que encontre me ayudaron bastante para realizar una implementacion del CallBack, basicamente es implementando la clase OracleOCICallback, la cual captura los eventos y tipos del TAF, y alli uno puede programar lo que necesite o quiera..
Ahora muy lindo hasta aca..pero cuando quise poner todo en un ambiente con iAS -Oracle9i Applicacion Server- con Data Sources, me encontre con un pequeño inconveniente...que no sabia como registrar mi implementación del CallBack a la conexion que me retorna el Data Source, porque el cliente que consume las conexiones es el framework BC4J.
Asi que lo primero que se me ocurrio es crear alguna clase que intercepte la conexion, le setee el CallBack, y se lo pase al cliente (BC4J), y cuando estaba por hacer algunas pruebas, pense que no necesariamente el cliente seria BC4J, sino cualquier otra clase java que pida una conexion al Data Source, asi que lo mejor seria tener un propio Data Source que ya provea la conexion con el CallBack seteado.
Y justamente es lo que hice, extendi la clase DriverManagerDataSource y sobreescribi los metodos getConnection, para que retorne una conexion con mi implementacion del CallBack ;-)
En estos momentos lo estamos testeando...y cuando tenga los resultado, voy a contar como es que se puede hacer esto.
Actualmente estoy en un proyecto donde se quiere utilizar las caracteristicas de TAF -Transparent Application Failover- que tiene implementado Oracle en su driver JDBC OCI.
Los ejemplos y documentacion que encontre me ayudaron bastante para realizar una implementacion del CallBack, basicamente es implementando la clase OracleOCICallback, la cual captura los eventos y tipos del TAF, y alli uno puede programar lo que necesite o quiera..
Ahora muy lindo hasta aca..pero cuando quise poner todo en un ambiente con iAS -Oracle9i Applicacion Server- con Data Sources, me encontre con un pequeño inconveniente...que no sabia como registrar mi implementación del CallBack a la conexion que me retorna el Data Source, porque el cliente que consume las conexiones es el framework BC4J.
Asi que lo primero que se me ocurrio es crear alguna clase que intercepte la conexion, le setee el CallBack, y se lo pase al cliente (BC4J), y cuando estaba por hacer algunas pruebas, pense que no necesariamente el cliente seria BC4J, sino cualquier otra clase java que pida una conexion al Data Source, asi que lo mejor seria tener un propio Data Source que ya provea la conexion con el CallBack seteado.
Y justamente es lo que hice, extendi la clase DriverManagerDataSource y sobreescribi los metodos getConnection, para que retorne una conexion con mi implementacion del CallBack ;-)
En estos momentos lo estamos testeando...y cuando tenga los resultado, voy a contar como es que se puede hacer esto.
0 Comments:
Publicar un comentario
<< Home