Para la nueva Base de Datos en RAC usa esta wiki: Crear fuente de datos RAC en Weblogic 12c

Crear fuente de datos en Weblogic 12c BBDD ISIS

PEDRO DELGADO YARZA 2014/01/29 13:50

Las fuentes de datos son nuestro punto de conexión entre las aplicaciones web y la base de datos. Dichas fuentes deberán ser dadas de alta en el servidor antes de intentar acceder a base de datos desde nuestra aplicación.

Tendremos en cuenta la siguiente normativa a la hora de crear las fuentes de datos:

- Se crean por defecto las fuentes de datos XA.

- Si la aplicación accede a un DB-LINK, la configuración es NO_XA, con lo siguiente:

<driver-name>oracle.jdbc.OracleDriver</driver-name>

y

<global-transactions-protocol>TwoPhaseCommit</global-transactions-protocol>

- Si tiene timers de EJB y DB-LINK, tendrá el siguiente error:

Caused by: javax.transaction.xa.XAException: JDBC driver does not support XA, hence cannot be a participant in two-phase commit. To force this participation, set the GlobalTransactionsProtocol attribute to LoggingLastResource (recommended) or EmulateTwoPhaseCommit for the Data Source = XXXXX DataSource

la configuración buena es:

<driver-name>oracle.jdbc.OracleDriver</driver-name>

y

<global-transactions-protocol>EmulateTwoPhaseCommit</global-transactions-protocol>

En esta guía vamos a ver los pasos que hay que dar para crear una nueva fuente de datos y asociarla posteriormente a nuestro proyecto FundeWeb 2.0.

El primer paso que debemos hacer para crear el origen de datos es arrancar el servidor desde nuestro entorno de desarrollo.

Tras ello abrimos el navegador y entramos en la consola de administración a través de la URL: http://localhost:7001/console e introducimos el usuario y contraseña.

Una vez dentro del servidor tendremos que encontrar la opción de menú “Orígenes de datos” que está situada o bien en el árbol de la izquierda dentro del menú Servicios o bien en el menú central en la columna con el mismo nombre.

Una vez dentro del menú, veremos una tabla en la que se nos mostrarán todas las fuentes de datos que tenemos dadas de alta en nuestro servidor. Si es la primera vez que entramos en él, no habrá ninguna.

Ahora hacemos clic sobre el botón Nuevo y en el menú desplegable que aparece seleccionamos la primera opción Origen de datos genérico

A partir de este momento entramos en el Wizard de creación de fuentes de datos para Weblogic.

El primer paso a seguir, como muestra el menú a continuación, es introducir los datos que identificarán nuestro origen de datos en las aplicaciones, para ello especificamos el nombre y la ruta JNDI que lo identifica. Tras introducirlo pulsamos el botón de Siguente

En el siguiente menú se nos pide que indiquemos el driver que utilizaremos para conectar con la base de datos, nosotros dejaremos seleccionado el que se marca por defecto *Oracle's Driver (Thin XA) for Instance connections; Versions:9.0.1 and later y pulsaremos en Siguiente

El siguiente menú nos indicará las opciones para gestión de transacciones a nivel de servidor que podemos configurar. Debido al controlador indicado con anterioridad, no existe una configuración editable para esto por lo que no tenemos opciones que configurar. Pulsamos el botón Siguiente para continuar.

NOTA: Que no haya configuración para la gestión de transacciones no significa que el servidor no las gestione, sino que utiliza la configuración por defecto.

En el siguiente apartado del wizard podremos especificar el punto de acceso a la base de datos, para ello deberemos indicar la ruta de acceso, nombre de base de datos, usuario y password para nuestro origen de datos tal y como muestra la imagen a continuación y pulsamos Siguiente

La siguiente pantalla nos muestra un resumen de los datos introducidos durante el la creación del origen de datos y nos permite realizar una prueba sobre la base de datos para comprobar que la configuración es la correcta, para ello deberemos pulsar el botón Probar configuración.

Tras ello pulsamos en Siguiente para seguir avanzando en el Wizard. OJO no darle al botón Terminar porque aún no hemos acabado la configuración, aunque tras este paso el origen de datos ya estaría creado.

En este último paso asociamos el origen de datos creado en el punto anterior con la instancia del servidor sobre la que queremos que actúe, en nuestro caso sólo existirá una llamada AdminServer salvo que añadamos instancias adicionales de manera manual.

Ahora sí, pulsamos en Terminar y tendremos nuestro origen de datos creado y asociado a nuestra instancia del servidor.

El primer paso que debemos hacer para crear el origen de datos es arrancar el servidor desde nuestro entorno de desarrollo.

Tras ello abrimos el navegador y entramos en la consola de administración a través de la URL: http://localhost:7001/console e introducimos el usuario y contraseña.

Una vez dentro del servidor tendremos que encontrar la opción de menú “Orígenes de datos” que está situada o bien en el árbol de la izquierda dentro del menú Servicios o bien en el menú central en la columna con el mismo nombre.

Una vez dentro del menú, veremos una tabla en la que se nos mostrarán todas las fuentes de datos que tenemos dadas de alta en nuestro servidor. Si es la primera vez que entramos en él, no habrá ninguna.

Ahora hacemos clic sobre el botón Nuevo y en el menú desplegable que aparece seleccionamos la primera opción Origen de datos genérico

A partir de este momento entramos en el Wizard de creación de fuentes de datos para Weblogic.

El primer paso a seguir, como muestra el menú a continuación, es introducir los datos que identificarán nuestro origen de datos en las aplicaciones, para ello especificamos el nombre y la ruta JNDI que lo identifica. Tras introducirlo pulsamos el botón de Siguente

En el siguiente menú se nos pide que indiquemos el driver que utilizaremos para conectar con la base de datos, nosotros dejaremos seleccionado el que se marca por defecto *Oracle's Driver (Thin) for Instance connections; Versions:9.0.1 and later y pulsaremos en Siguiente

El siguiente menú nos indicará las opciones para gestión de transacciones a nivel de servidor que podemos configurar. En este caso, tenemos que tener marcada casilla Soporta Transacciones Globales y la opción Confirmación en Una Fase. Pulsamos el botón Siguiente para continuar.

NOTA: Que no haya configuración para la gestión de transacciones no significa que el servidor no las gestione, sino que utiliza la configuración por defecto.

En el siguiente apartado del wizard podremos especificar el punto de acceso a la base de datos, para ello deberemos indicar la ruta de acceso, nombre de base de datos, usuario y password para nuestro origen de datos tal y como muestra la imagen a continuación y pulsamos Siguiente

La siguiente pantalla nos muestra un resumen de los datos introducidos durante el la creación del origen de datos y nos permite realizar una prueba sobre la base de datos para comprobar que la configuración es la correcta, para ello deberemos pulsar el botón Probar configuración.

Tras ello pulsamos en Siguiente para seguir avanzando en el Wizard. OJO no darle al botón Terminar porque aún no hemos acabado la configuración, aunque tras este paso el origen de datos ya estaría creado.

En este último paso asociamos el origen de datos creado en el punto anterior con la instancia del servidor sobre la que queremos que actúe, en nuestro caso sólo existirá una llamada AdminServer salvo que añadamos instancias adicionales de manera manual.

Ahora sí, pulsamos en Terminar y tendremos nuestro origen de datos creado y asociado a nuestra instancia del servidor.

El ejemplo de abajo no es para reemplazar vuestro actual fichero persistence.xml. Además es un ejemplo para aplicaciones FundeWeb 2.x, NO para aplicaciones FundeWeb 1.x.

Para añadir el origen de datos a nuestro proyecto simplemente tenemos que introducirlo en el fichero persistence.xml situado en la ruta: src\main\resources\META-INF

El código a añadir para este ejemplo sería:

             <provider>org.hibernate.ejb.HibernatePersistence</provider>
		<jta-data-source>jdbc/Prototipo DataSource</jta-data-source>
		<properties>
			<property name="hibernate.hbm2ddl.auto" value="validate"/>
         	        <property name="hibernate.show_sql" value="false"/>
         	        <property name="hibernate.format_sql" value="true"/>
 
			<!-- Añadir el esquema por defecto de la Base de Datos -->
			<property name="hibernate.default_schema" value="FUNDEWEB"/>
 
			<property name="hibernate.dialect" value="org.hibernate.dialect.Oracle10gDialect"/> 
 
			<!-- Weblogic --> 
			<property name="hibernate.transaction.jta.platform"
				value="org.hibernate.service.jta.platform.internal.WeblogicJtaPlatform"/>
 
		</properties>
  • fdw2.0/fundeweb2.0/gt/crear_fuente_de_datos_en_el_servidor_weblogic.txt
  • Última modificación: 06/06/2019 12:32
  • por JUAN FELIPE MOLINA HERNANDEZ