Acceso a datos y Spring Framework
Para que los beans Spring accedan a un origen de datos, debe configurar esos beans de manera que Spring Framework delegue en el tiempo de ejecución de WebSphere Application Server y se integre con el mismo correctamente.
Spring Framework reinicia los beans Spring con una capa de gestión de contenedor que, en un entorno de aplicación empresarial, delega en el tiempo de ejecución de aplicación empresarial subyacente. Las secciones siguientes describen qué hay que tener en cuenta al configurar beans Spring que acceden a un origen de datos.
Acceso a orígenes de datos configurados en el servidor de aplicaciones
Para que una aplicación Spring acceda a un recurso, por ejemplo un origen de datos JDBC (Java™ Database Connectivity), la aplicación debe utilizar un proveedor de recursos que esté gestionado por el servidor de aplicaciones.
Para ello, consulte el tema Configuración del acceso a un origen de datos de aplicación Spring.
Conexiones JDBC nativas
WebSphere Application Server no soporta el uso de la clase NativeJdbcExtractor que Spring Framework proporciona, de modo que evite escenarios que utilicen esta clase. Las implementaciones de esta clase acceden a conexiones JDBC nativas y eluden las funciones de calidad de servicio del servidor de aplicaciones, por ejemplo el seguimiento y la reasociación de manejadores de conexiones, el compartimiento de conexiones, la gestión de agrupaciones de conexiones y la implicación en las transacciones.
Como alternativa, puede utilizar la clase WSCallHelper del servidor de aplicaciones para acceder a ampliaciones de proveedor no estándares de orígenes de datos.
Java Persistence API
WebSphere Application Server incluye dos proveedores JPA; uno basado en EclipseLinks para JPA 2.1 y otro basado en la implementación de Apache OpenJPA de JPA 2.0. Para obtener más información, consulte los enlaces relacionados.
Para utilizar Spring Framework con una implementación de JPA, es aconsejable utilizar JPA directamente en lugar de utilizar las clases ayudantes JPA proporcionadas con Spring Framework en el paquete org.springframework.orm.jpa.
<persistence-context-ref>
<persistence-context-ref-name>algún/nombre</persistence-context-ref-name>
<persistence-unit-name>nombre_pu</persistence-unit-name>
</persistence-context-ref>
donde nombre_pu es el nombre de la unidad de persistencia tal como se define en el archivo persistence.xml.<jee:jndi-lookup id="entityManager" jndi-name="algún/nombre" />
<persistence-unit-ref>
<persistence-unit-ref-name>algún/nombre_ref</persistence-unit-ref-name>
<persistence-unit-name>nombre_pu</persistence-unit-name>
</persistence-unit-ref>
El objeto EntityManagerFactory resultante está disponible con el ID "entityManagerFactory":<jee:jndi-lookup id="entityManagerFactory" jndi-name="algún/nombre_ref" />