2017-01-22 1 views
0

Ich habe Anwendung, die auf Weblogic 12.1.2 bereitgestellt wird und Wir möchten Entity Manager von Weblogic und nicht von org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean bereitgestellt werden. Ich habe unten versucht, aber einige Config fehlt.Zugriff auf Weblogic Server Entity Manager

Aktualisiert web.xml mit PSU Name

<persistence-context-ref> 
    <persistence-context-ref-name>persistance/PSU_NAME</persistence-context-ref-name> 
    <persistence-unit-name>PSU_NAME</persistence-unit-name> 
</persistence-context-ref> 

Aktualisiert application.xml mit

<jee:jndi-lookup id="entityManagerFactory" jndi-name="persistance/PSU_NAME"> 
</jee:jndi-lookup> 

Auf Deployment sagt es javax.persistence.EntityManager nicht injizieren werden kann. Ich denke, ich vermisse etwas.

HINWEIS: Ich weiß, wie man org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean und seine Arbeit gut funktioniert.

+0

Können Sie den Stacktrace buchen? Es gibt mehrere Gründe, warum Spring den EntityManager nicht injizieren kann und der Stacktrace Informationen darüber enthält. –

+0

Wenn die JNDI-Suche fehlschlägt, können Sie eine manuelle Suche in Ihrer eigenen Bean durchführen, um zu testen, welcher Name für die entityManagerFactory registriert ist. Apropos: Bist du sicher, persistance/PSU_NAME ist kein Tippfehler und sollte persistent * e * nce/PSU_NAME bleiben –

Antwort

0

Ich konnte das Problem durch

<persistence-context-ref> 
    <persistence-context-ref-name>PSU_NAME</persistence-context-ref-name> 
    <persistence-unit-name>PSU_NAME</persistence-unit-name> 
</persistence-context-ref> 

und

<jee:jndi-lookup id="emf" jndi-name="PSU_NAME" /> 

und Xmlns lösen: jee = "http://www.springframework.org/schema/jee"

Verwandte Themen