2009-10-28 6 views
1

Comment activer la journalisation de débogage pour OpenJPA lors de l'exécution d'une application dans WebLogic 11g? J'ai essayé les étapes données par Logging JPA SQL with Weblogic 10.3, mais aucune instruction de journal OpenJPA n'apparaît dans le journal du serveur. J'ai également passé en revue la documentation de WebLogic concernant la configuration de la journalisation, mais je ne sais pas comment activer la journalisation de débogage pour ce sous-système particulier (JPA). Des idées?JPA Connexion à WebLogic 11g (10.3.1)

Répondre

4

BAH! Je viens de corriger ce problème, et sa cause est assez frustrante! Lorsque j'ai configuré la journalisation de mon serveur via la console WebLogic ([mon domaine] -> Environnement -> Serveurs -> [mon serveur] -> onglet Journalisation), j'ai défini "Gravité minimale pour consigner" à "Trace" et "Niveau de gravité" pour le fichier journal du serveur à "Déboguer" (les deux sont des options sous "Avancé"). Notamment, la case de sélection "Niveau de gravité" ne fournit pas d'option "Trace". Ainsi, lorsque j'ai enregistré la configuration, le niveau de journalisation du serveur était défini sur Debug. J'ai appris depuis que la journalisation de Kodo (et d'OpenJPA?) Est au niveau de trace, ce qui explique pourquoi je ne pouvais pas voir de journalisation JPA, même après avoir activé le débogage pour le sous-système JPA via l'onglet "Debug". La description à côté de la zone de sélection "Niveau de gravité" indique que "Par défaut, tous les messages vont dans le fichier journal", donc si je n'avais pas essayé de configurer la journalisation, je n'aurais pas rencontré ce problème. Pour voir la trace de Kodo se connecter dans le journal du serveur, j'ai dû ouvrir mon fichier config.xml (user_projects \ domaines [mon domaine] \ config \ config.xml) et supprimer l'élément sous.

Par conséquent, je ne comprends pas pourquoi la console WebLogic ne fournit pas de "Trace" comme option pour les cases de sélection "Niveau de gravité" sous la section "Avancé" de l'onglet Enregistrement. Est-ce un oubli ou est-ce que je manque une bonne raison pour l'omission?

+0

Ce problème a été corrigé dans WebLogic 10.3.3. –

0

Est-ce que vous essayez d'activer la journalisation détaillée en utilisant la propriété suivante dans votre fichier persistence.xml:

<persistence xmlns="http://java.sun.com/xml/ns/persistence" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    version="1.0"> 
    <persistence-unit name="example-logging" transaction-type="RESOURCE_LOCAL"> 
     <properties> 
      <property name="openjpa.Log" value="SQL=TRACE"/> 
     </properties> 
    </persistence-unit> 
</persistence> 
+0

Oui, mais cet avertissement WebLogic ouvre une session lorsque je spécifie la propriété openjpa.Log: Même lorsque j'ai activé le débogage pour le sous-système JPA dans la console WebLogic, je n'ai toujours pas vu Messages du journal relatifs à JPA dans le journal du serveur – Allen

+0

Vous avez donc activé le débogage pour le sous-système JPA via la console. Pouvez-vous confirmer que vous avez ajouté 'SQL = TRACE' à la propriété' openjpa.Log'? Je ne peux pas vérifier maintenant mais ce serait une régression étrange entre 10.3 et 10.3.1. –

+0

Merci pour l'aide de Pascal ... J'ai juste corrigé le problème et fourni une réponse. – Allen

0

Réglages pour EclipseLink:

<persistence xmlns="http://java.sun.com/xml/ns/persistence" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    version="1.0"> 
    <persistence-unit name="example-logging" transaction-type="RESOURCE_LOCAL"> 
     <properties> 
      <property name="eclipselink.logging.level" value="FINE" /> 
      <property name="eclipselink.logging.level.sql" value="FINE" /> 
     </properties> 
    </persistence-unit> 
</persistence> 
Questions connexes