Oracle
 sql >> Base de données >  >> RDS >> Oracle

Problème lors du déploiement de la guerre du serveur de console JBPM 5.4 sur le serveur d'applications Websphere avec le pack de fonctionnalités JPA2 pour utiliser la base de données Oracle

<jta-data-source>java:comp/...</jta-data-source> ne fonctionne pas bien avec Hibernate JPA géré par conteneur. WebSphere Application Server doit appeler createContainerEntityManagerFactory avant de faire presque tout le reste dans l'application car cet appel peut enregistrer un ClassFileTransformer qui doit modifier les bytecodes d'entité.

Vos options sont :

  1. Supprimer l'utilisation de <jta-data-source>java:comp/...</jta-data-source> et utilisez un nom JNDI de l'espace de noms du serveur (par exemple, <jta-data-source>jdbc/myds</jta-data-source> ).

  2. Désactivez JPA géré par conteneur pour l'application comme décrit dans APAR PM26361 . (Cet APAR décrit les problèmes de performances causés par l'appel à createContainerEntityManagerFactory lors du démarrage de l'application, mais la propriété peut également être utilisée pour éviter ce problème.) Bien entendu, la désactivation de JPA géré par le conteneur signifie que vous ne pouvez plus utiliser @PersistenceUnit /@PersistenceContext annotations ou <persistence-unit-ref> /<persistence-context-ref> .