Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [eclipselink-users] FW: Eclipselink 2 / JPA 2 integration with Spring on WebLogic 12.1.1

Michael,

                To minimize the issue matrix - Before you get into weaving which is required to instrument the entities for lazy loading among other things like change tracking – verify that your app works with straight – non-optimized EAGER loaded entities.

1)      Disable lazy loading (the default in an EE environment – by adding fetch=FetchType.EAGER to your mappings (temporarily) to see if you get past the 1st and 2nd exception – the IndirectList is a placeholder for lazy loading instrumentation (your model tree will temporarily load slower)

http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/trunk/examples/org.eclipse.persistence.example.jpa.server.entities/src/org/eclipse/persistence/example/jpa/server/business/Cell.java

 

2)      Turn weaving off or enable/disable the EclipseLink agent and enable the spring-agent*.jar – if you are running spring like an SE application (normally in EE you don’t need to specify the agent) – to get past the 3rd exception

Look for META-INF/services/ javax.persistence.spi.PersistenceProvider – which contains “org.eclipse.persistence.jpa.PersistenceProvider”

 

http://wiki.eclipse.org/Using_EclipseLink_JPA_Extensions_%28ELUG%29#eclipselink.weaving

 

 

thank you

/ Michael O’Brien

 

 

 

From: eclipselink-users-bounces@xxxxxxxxxxx [mailto:eclipselink-users-bounces@xxxxxxxxxxx] On Behalf Of Michael O'Brien
Sent: February 21, 2012 14:05
To: EclipseLink User Discussions
Subject: [eclipselink-users] FW: Eclipselink 2 / JPA 2 integration with Spring on WebLogic 12.1.1

 

Michael,

                I respond from the list – to allow any solution or parts of a solution to benefit a wider audience.

                Thank you

/ Michael O’Brien

 

From: Michael Gitelman [mailto:mgitelman@xxxxxxxxxxxxxxx]
Sent: February 21, 2012 13:54
To: Michael O'Brien
Subject: RE: Eclipselink 2 / JPA 2 integration with Spring on WebLogic 12.1.1

 

Hi Michael,

 

Thank you for your help. I think I am going somewhere. Let me clarify a couple of things regarding my environment:

 

1.       I now ran on WebLogic 12.1 (12c)  not on 10.3.3 anymore

2.       I deploy in exploded EAR. My entity classes are now under APP-INF/classes along with all other classes

3.       I put all <classes> into my persistence.xml

<?xml version="1.0" encoding="UTF-8"?>

<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence"

             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

             xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">

    <persistence-unit name="ConfigPropsPU" transaction-type="JTA">

        <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>

        <jta-data-source>jdbc/odev20122</jta-data-source>

        <class>dti.admin.cp.entity.ConfigEventHeader</class>

        <class>dti.admin.cp.entity.ConfigEventDetail</class>

        <class>dti.admin.cp.entity.ConfigEventClob</class>

        <class>dti.admin.cp.entity.ConfigEventDbLink</class>

        <class>dti.admin.cp.entity.ConfigEventDetailSql</class>

        <class>dti.admin.cp.entity.ConfigEventError</class>

        <class>dti.admin.cp.entity.ConfigEventHistory</class>

        <class>dti.admin.cp.entity.ConfigEventMode</class>

        <class>dti.admin.cp.entity.ConfigEventUser</class>

        <class>dti.admin.cp.entity.ConfigEventUtil</class>

        <class>dti.admin.cp.entity.ConfigEventUtilXref</class>

        <class>dti.admin.cp.entity.ConfigEventWarningDetail</class>

        <class>dti.admin.cp.entity.ConfigEventWarningMaster</class>

        <class>dti.admin.cp.entity.ConfigEventWarningSetup</class>

        <properties/>

    </persistence-unit>

</persistence>

 

This approach seems to be working to a certain degree as the Case 1 below would demonstrate: I pull my entities from the database but I still get errors.

 

The problems are different depending on using (or not using)  loadTimeWeaver. I isolated three separate cases:

Case 1. Use org.springframework.instrument.classloading.SimpleLoadTimeWeaver

Case 2. Use no loadTimeWeaver

Case 3. Use org.springframework.instrument.classloading.InstrumentationLoadTimeWeaver

 

Could you look at the errors below and let me know if you have any suggestions?

 

Case 1. Use org.springframework.instrument.classloading.SimpleLoadTimeWeaver

        <property name="loadTimeWeaver">

            <bean class="org.springframework.instrument.classloading.SimpleLoadTimeWeaver " />

        </property>

 

Results. All 882 entities are retrieved (see highlighted below) but I get error messages (

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transparent indirection.):

 

2012-02-21 12:45:57.879 -- dti.admin.cp.view.ViewEditConfigEvents -- ViewEditCon

figEvents()

2012-02-21 12:45:57.926 -- Calling getConfigEventHeaders()

2012-02-21 12:45:57.926 -- Calling getConfigEventHeaders() XXXXXXX

[EL Info]: 2012-02-21 12:45:58.317--ServerSession(24425507)--EclipseLink, versio

n: Eclipse Persistence Services - 2.3.2.v20111125-r10461

[EL Severe]: 2012-02-21 12:45:59.426--ServerSession(24425507)--Exception [Eclips

eLink-0] (Eclipse Persistence Services - 2.3.2.v20111125-r10461): org.eclipse.pe

rsistence.exceptions.IntegrityException

Descriptor Exceptions:

---------------------------------------------------------

 

Exception [EclipseLink-148] (Eclipse Persistence Services - 2.3.2.v20111125-r104

61): org.eclipse.persistence.exceptions.DescriptorException

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transpa

rent indirection.

Mapping: org.eclipse.persistence.mappings.OneToManyMapping[configEventDetailSqlL

ist]

Descriptor: RelationalDescriptor(dti.admin.cp.entity.ConfigEventDetail --> [Data

baseTable(CONFIG_EVENT_DETAIL)])

 

Exception [EclipseLink-148] (Eclipse Persistence Services - 2.3.2.v20111125-r104

61): org.eclipse.persistence.exceptions.DescriptorException

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transpa

rent indirection.

Mapping: org.eclipse.persistence.mappings.OneToManyMapping[configEventDetailList

]

Descriptor: RelationalDescriptor(dti.admin.cp.entity.ConfigEventHeader --> [Data

baseTable(CONFIG_EVENT_HEADER)])

 

Exception [EclipseLink-148] (Eclipse Persistence Services - 2.3.2.v20111125-r104

61): org.eclipse.persistence.exceptions.DescriptorException

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transpa

rent indirection.

Mapping: org.eclipse.persistence.mappings.OneToManyMapping[configEventUserList]

Descriptor: RelationalDescriptor(dti.admin.cp.entity.ConfigEventHeader --> [Data

baseTable(CONFIG_EVENT_HEADER)])

 

Exception [EclipseLink-148] (Eclipse Persistence Services - 2.3.2.v20111125-r104

61): org.eclipse.persistence.exceptions.DescriptorException

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transpa

rent indirection.

Mapping: org.eclipse.persistence.mappings.OneToManyMapping[configEventErrorList]

 

Descriptor: RelationalDescriptor(dti.admin.cp.entity.ConfigEventDetailSql --> [D

atabaseTable(CONFIG_EVENT_DETAIL_SQL)])

 

Runtime Exceptions:

---------------------------------------------------------

 

[EL Severe]: 2012-02-21 12:45:59.442--ServerSession(24425507)--Exception [Eclips

eLink-0] (Eclipse Persistence Services - 2.3.2.v20111125-r10461): org.eclipse.pe

rsistence.exceptions.IntegrityException

Descriptor Exceptions:

---------------------------------------------------------

 

Exception [EclipseLink-148] (Eclipse Persistence Services - 2.3.2.v20111125-r104

61): org.eclipse.persistence.exceptions.DescriptorException

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transpa

rent indirection.

Mapping: org.eclipse.persistence.mappings.OneToManyMapping[configEventDetailSqlL

ist]

Descriptor: RelationalDescriptor(dti.admin.cp.entity.ConfigEventDetail --> [Data

baseTable(CONFIG_EVENT_DETAIL)])

 

Exception [EclipseLink-148] (Eclipse Persistence Services - 2.3.2.v20111125-r104

61): org.eclipse.persistence.exceptions.DescriptorException

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transpa

rent indirection.

Mapping: org.eclipse.persistence.mappings.OneToManyMapping[configEventDetailList

]

Descriptor: RelationalDescriptor(dti.admin.cp.entity.ConfigEventHeader --> [Data

baseTable(CONFIG_EVENT_HEADER)])

 

Exception [EclipseLink-148] (Eclipse Persistence Services - 2.3.2.v20111125-r104

61): org.eclipse.persistence.exceptions.DescriptorException

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transpa

rent indirection.

Mapping: org.eclipse.persistence.mappings.OneToManyMapping[configEventUserList]

Descriptor: RelationalDescriptor(dti.admin.cp.entity.ConfigEventHeader --> [Data

baseTable(CONFIG_EVENT_HEADER)])

 

Exception [EclipseLink-148] (Eclipse Persistence Services - 2.3.2.v20111125-r104

61): org.eclipse.persistence.exceptions.DescriptorException

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transpa

rent indirection.

Mapping: org.eclipse.persistence.mappings.OneToManyMapping[configEventErrorList]

 

Descriptor: RelationalDescriptor(dti.admin.cp.entity.ConfigEventDetailSql --> [D

atabaseTable(CONFIG_EVENT_DETAIL_SQL)])

 

Runtime Exceptions:

---------------------------------------------------------

 

<Feb 21, 2012 12:45:59 PM EST> <Error> <javax.enterprise.resource.webcontainer.j

sf.application> <BEA-000000> <Error Rendering View[/facelets/viewConfigEvents.xh

tml]

javax.el.ELException: //C:/p4/DTI/Dev/OASIS-2012.2.0/oasis/web/eAdmin/exploded/e

Admin/ConfigProp.war/facelets/viewConfigEvents.xhtml @14,109 value="Entity List

-- Size: #{viewEditConfigEvents.configEventHeaders.size()}": javax.persistence.P

ersistenceException: Exception [EclipseLink-0] (Eclipse Persistence Services - 2

.3.2.v20111125-r10461): org.eclipse.persistence.exceptions.IntegrityException

Descriptor Exceptions:

---------------------------------------------------------

 

Exception [EclipseLink-148] (Eclipse Persistence Services - 2.3.2.v20111125-r104

61): org.eclipse.persistence.exceptions.DescriptorException

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transpa

rent indirection.

Mapping: org.eclipse.persistence.mappings.OneToManyMapping[configEventDetailSqlL

ist]

Descriptor: RelationalDescriptor(dti.admin.cp.entity.ConfigEventDetail --> [Data

baseTable(CONFIG_EVENT_DETAIL)])

 

Exception [EclipseLink-148] (Eclipse Persistence Services - 2.3.2.v20111125-r104

61): org.eclipse.persistence.exceptions.DescriptorException

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transpa

rent indirection.

Mapping: org.eclipse.persistence.mappings.OneToManyMapping[configEventDetailList

]

Descriptor: RelationalDescriptor(dti.admin.cp.entity.ConfigEventHeader --> [Data

baseTable(CONFIG_EVENT_HEADER)])

 

Exception [EclipseLink-148] (Eclipse Persistence Services - 2.3.2.v20111125-r104

61): org.eclipse.persistence.exceptions.DescriptorException

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transpa

rent indirection.

Mapping: org.eclipse.persistence.mappings.OneToManyMapping[configEventUserList]

Descriptor: RelationalDescriptor(dti.admin.cp.entity.ConfigEventHeader --> [Data

baseTable(CONFIG_EVENT_HEADER)])

 

Exception [EclipseLink-148] (Eclipse Persistence Services - 2.3.2.v20111125-r104

61): org.eclipse.persistence.exceptions.DescriptorException

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transpa

rent indirection.

Mapping: org.eclipse.persistence.mappings.OneToManyMapping[configEventErrorList]

 

Descriptor: RelationalDescriptor(dti.admin.cp.entity.ConfigEventDetailSql --> [D

atabaseTable(CONFIG_EVENT_DETAIL_SQL)])

 

Runtime Exceptions:

---------------------------------------------------------

 

        at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpress

ion.java:114)

        at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.

java:194)

        at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.

java:182)

        at javax.faces.component.UIOutput.getValue(UIOutput.java:169)

        at com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getValue(Ht

mlBasicInputRenderer.java:205)

        Truncated. see log file for complete stacktrace

Caused By: javax.persistence.PersistenceException: Exception [EclipseLink-0] (Ec

lipse Persistence Services - 2.3.2.v20111125-r10461): org.eclipse.persistence.ex

ceptions.IntegrityException

Descriptor Exceptions:

---------------------------------------------------------

 

Exception [EclipseLink-148] (Eclipse Persistence Services - 2.3.2.v20111125-r104

61): org.eclipse.persistence.exceptions.DescriptorException

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transpa

rent indirection.

Mapping: org.eclipse.persistence.mappings.OneToManyMapping[configEventDetailSqlL

ist]

Descriptor: RelationalDescriptor(dti.admin.cp.entity.ConfigEventDetail --> [Data

baseTable(CONFIG_EVENT_DETAIL)])

 

Exception [EclipseLink-148] (Eclipse Persistence Services - 2.3.2.v20111125-r104

61): org.eclipse.persistence.exceptions.DescriptorException

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transpa

rent indirection.

Mapping: org.eclipse.persistence.mappings.OneToManyMapping[configEventDetailList

]

Descriptor: RelationalDescriptor(dti.admin.cp.entity.ConfigEventHeader --> [Data

baseTable(CONFIG_EVENT_HEADER)])

 

Exception [EclipseLink-148] (Eclipse Persistence Services - 2.3.2.v20111125-r104

61): org.eclipse.persistence.exceptions.DescriptorException

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transpa

rent indirection.

Mapping: org.eclipse.persistence.mappings.OneToManyMapping[configEventUserList]

Descriptor: RelationalDescriptor(dti.admin.cp.entity.ConfigEventHeader --> [Data

baseTable(CONFIG_EVENT_HEADER)])

 

Exception [EclipseLink-148] (Eclipse Persistence Services - 2.3.2.v20111125-r104

61): org.eclipse.persistence.exceptions.DescriptorException

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transpa

rent indirection.

Mapping: org.eclipse.persistence.mappings.OneToManyMapping[configEventErrorList]

 

Descriptor: RelationalDescriptor(dti.admin.cp.entity.ConfigEventDetailSql --> [D

atabaseTable(CONFIG_EVENT_DETAIL_SQL)])

 

Runtime Exceptions:

---------------------------------------------------------

 

        at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(En

tityManagerSetupImpl.java:517)

        at org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.get

DatabaseSession(EntityManagerFactoryDelegate.java:188)

        at org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.cre

ateEntityManagerImpl(EntityManagerFactoryDelegate.java:277)

        at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createE

ntityManagerImpl(EntityManagerFactoryImpl.java:294)

        at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createE

ntityManager(EntityManagerFactoryImpl.java:272)

        Truncated. see log file for complete stacktrace

Caused By: Exception [EclipseLink-0] (Eclipse Persistence Services - 2.3.2.v2011

1125-r10461): org.eclipse.persistence.exceptions.IntegrityException

Descriptor Exceptions:

---------------------------------------------------------

 

Exception [EclipseLink-148] (Eclipse Persistence Services - 2.3.2.v20111125-r104

61): org.eclipse.persistence.exceptions.DescriptorException

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transpa

rent indirection.

Mapping: org.eclipse.persistence.mappings.OneToManyMapping[configEventDetailSqlL

ist]

Descriptor: RelationalDescriptor(dti.admin.cp.entity.ConfigEventDetail --> [Data

baseTable(CONFIG_EVENT_DETAIL)])

 

Exception [EclipseLink-148] (Eclipse Persistence Services - 2.3.2.v20111125-r104

61): org.eclipse.persistence.exceptions.DescriptorException

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transpa

rent indirection.

Mapping: org.eclipse.persistence.mappings.OneToManyMapping[configEventDetailList

]

Descriptor: RelationalDescriptor(dti.admin.cp.entity.ConfigEventHeader --> [Data

baseTable(CONFIG_EVENT_HEADER)])

 

Exception [EclipseLink-148] (Eclipse Persistence Services - 2.3.2.v20111125-r104

61): org.eclipse.persistence.exceptions.DescriptorException

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transpa

rent indirection.

Mapping: org.eclipse.persistence.mappings.OneToManyMapping[configEventUserList]

Descriptor: RelationalDescriptor(dti.admin.cp.entity.ConfigEventHeader --> [Data

baseTable(CONFIG_EVENT_HEADER)])

 

Exception [EclipseLink-148] (Eclipse Persistence Services - 2.3.2.v20111125-r104

61): org.eclipse.persistence.exceptions.DescriptorException

Exception Description: The container policy [IndirectListContainerPolicy(class o

rg.eclipse.persistence.indirection.IndirectList)] is not compatible with transpa

rent indirection.

Mapping: org.eclipse.persistence.mappings.OneToManyMapping[configEventErrorList]

 

Descriptor: RelationalDescriptor(dti.admin.cp.entity.ConfigEventDetailSql --> [D

atabaseTable(CONFIG_EVENT_DETAIL_SQL)])

 

Runtime Exceptions:

---------------------------------------------------------

 

        at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initial

izeDescriptors(DatabaseSessionImpl.java:535)

        at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initial

izeDescriptors(DatabaseSessionImpl.java:476)

        at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initial

izeDescriptors(DatabaseSessionImpl.java:435)

        at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.postCon

nectDatasource(DatabaseSessionImpl.java:676)

        at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.loginAn

dDetectDatasource(DatabaseSessionImpl.java:621)

        Truncated. see log file for complete stacktrace

> 

2012-02-21 12:45:59.504 -- Calling getConfigEventHeaders()

2012-02-21 12:45:59.504 -- Calling getConfigEventHeaders() XXXXXXX

[EL Info]: 2012-02-21 12:45:59.629--ServerSession(24425507)--EclipseLink, versio

n: Eclipse Persistence Services - 2.3.2.v20111125-r10461

[EL Info]: 2012-02-21 12:46:00.176--ServerSession(24425507)--file:/C:/p4/DTI/Dev

/OASIS-2012.2.0/oasis/web/eAdmin/exploded/eAdmin/APP-INF/classes/_ConfigPropsPU

login successful

2012-02-21 12:46:00.301 -- dti.admin.cp.dao.ConfigEventHeaderDao -- Retrieving a

List ConfigEventHeaders...

2012-02-21 12:46:02.707 -- getConfigEventHeaders():configEventHeaders.size() 882

 

2012-02-21 12:46:02.707 -- Calling getConfigEventHeaders()

2012-02-21 12:46:02.707 -- Calling getConfigEventHeaders() XXXXXXX

2012-02-21 12:46:02.723 -- dti.admin.cp.dao.ConfigEventHeaderDao -- Retrieving a

List ConfigEventHeaders...

2012-02-21 12:46:04.004 -- getConfigEventHeaders():configEventHeaders.size() 882

 

Case 2. No loadTimeWeaver – I get java.lang.IllegalStateException: Cannot apply class transformer witho

ut LoadTimeWeaver specified:

 

 

<Feb 21, 2012 12:52:42 PM> <SEVERE> <org.springframework.web.context.ContextLoad

er initWebApplicationContext> <Context initialization failed>

org.springframework.beans.factory.BeanCreationException: Error creating bean wit

h name 'configEventHeaderDao': Injection of persistence dependencies failed; nes

ted exception is org.springframework.beans.factory.BeanCreationException: Error

creating bean with name 'emf' defined in class path resource [dti/applicationCon

text-ConfigProp.xml]: Invocation of init method failed; nested exception is java

.lang.reflect.UndeclaredThrowableException

        at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProc

essor.postProcessPropertyValues(PersistenceAnnotationBeanPostProcessor.java:341)

 

        at org.springframework.beans.factory.support.AbstractAutowireCapableBean

Factory.populateBean(AbstractAutowireCapableBeanFactory.java:1064)

        at org.springframework.beans.factory.support.AbstractAutowireCapableBean

Factory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)

        at org.springframework.beans.factory.support.AbstractAutowireCapableBean

Factory.createBean(AbstractAutowireCapableBeanFactory.java:456)

        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getOb

ject(AbstractBeanFactory.java:291)

        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr

y.getSingleton(DefaultSingletonBeanRegistry.java:222)

        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBe

an(AbstractBeanFactory.java:288)

        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean

(AbstractBeanFactory.java:190)

        at org.springframework.beans.factory.support.DefaultListableBeanFactory.

preInstantiateSingletons(DefaultListableBeanFactory.java:563)

        at org.springframework.context.support.AbstractApplicationContext.finish

BeanFactoryInitialization(AbstractApplicationContext.java:872)

        at org.springframework.context.support.AbstractApplicationContext.refres

h(AbstractApplicationContext.java:423)

        at org.springframework.web.context.ContextLoader.createWebApplicationCon

text(ContextLoader.java:276)

        at org.springframework.web.context.ContextLoader.initWebApplicationConte

xt(ContextLoader.java:197)

        at dti.core.webapp.OasisContextLoaderListener.contextInitialized(OasisCo

ntextLoaderListener.java:44)

        at weblogic.servlet.internal.EventsManager$FireContextListenerAction.run

(EventsManager.java:582)

        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate

dSubject.java:321)

        at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:

120)

        at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:

57)

        at weblogic.servlet.internal.EventsManager.executeContextListener(Events

Manager.java:233)

        at weblogic.servlet.internal.EventsManager.notifyContextCreatedEvent(Eve

ntsManager.java:190)

        at weblogic.servlet.internal.EventsManager.notifyContextCreatedEvent(Eve

ntsManager.java:175)

        at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAp

pServletContext.java:1730)

        at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletCon

text.java:2740)

        at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.jav

a:1704)

        at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:781)

        at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleSta

teDriver.java:213)

        at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleSta

teDriver.java:208)

        at weblogic.application.utils.StateMachineDriver.nextState(StateMachineD

river.java:35)

        at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStat

eDriver.java:70)

        at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedMod

uleDriver.java:212)

        at weblogic.application.internal.ExtensibleModuleWrapper.start(Extensibl

eModuleWrapper.java:111)

        at weblogic.application.internal.flow.ModuleListenerInvoker.start(Module

ListenerInvoker.java:124)

        at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleSta

teDriver.java:213)

        at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleSta

teDriver.java:208)

        at weblogic.application.utils.StateMachineDriver.nextState(StateMachineD

river.java:35)

        at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStat

eDriver.java:70)

        at weblogic.application.internal.flow.StartModulesFlow.activate(StartMod

ulesFlow.java:24)

        at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.ja

va:729)

        at weblogic.application.utils.StateMachineDriver.nextState(StateMachineD

river.java:35)

        at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.

java:258)

        at weblogic.application.internal.EarDeployment.activate(EarDeployment.ja

va:61)

        at weblogic.application.internal.DeploymentStateChecker.activate(Deploym

entStateChecker.java:165)

        at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(Ap

pContainerInvoker.java:79)

        at weblogic.deploy.internal.targetserver.operations.AbstractOperation.ac

tivate(AbstractOperation.java:582)

        at weblogic.deploy.internal.targetserver.operations.ActivateOperation.ac

tivateDeployment(ActivateOperation.java:148)

        at weblogic.deploy.internal.targetserver.operations.ActivateOperation.do

Commit(ActivateOperation.java:114)

        at weblogic.deploy.internal.targetserver.operations.AbstractOperation.co

mmit(AbstractOperation.java:335)

        at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploym

entCommit(DeploymentManager.java:844)

        at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeplo

ymentList(DeploymentManager.java:1253)

        at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(

DeploymentManager.java:440)

        at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.com

mit(DeploymentServiceDispatcher.java:163)

        at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallb

ackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:195)

        at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallb

ackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:13)

        at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallb

ackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:68)

        at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTunin

gWorkManagerImpl.java:545)

        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)

        at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)

Caused by: org.springframework.beans.factory.BeanCreationException: Error creati

ng bean with name 'emf' defined in class path resource [dti/applicationContext-C

onfigProp.xml]: Invocation of init method failed; nested exception is java.lang.

reflect.UndeclaredThrowableException

        at org.springframework.beans.factory.support.AbstractAutowireCapableBean

Factory.initializeBean(AbstractAutowireCapableBeanFactory.java:1412)

        at org.springframework.beans.factory.support.AbstractAutowireCapableBean

Factory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)

        at org.springframework.beans.factory.support.AbstractAutowireCapableBean

Factory.createBean(AbstractAutowireCapableBeanFactory.java:456)

        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getOb

ject(AbstractBeanFactory.java:291)

        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr

y.getSingleton(DefaultSingletonBeanRegistry.java:222)

        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBe

an(AbstractBeanFactory.java:288)

        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean

(AbstractBeanFactory.java:190)

        at org.springframework.orm.jpa.EntityManagerFactoryUtils.findEntityManag

erFactory(EntityManagerFactoryUtils.java:99)

        at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProc

essor.findNamedEntityManagerFactory(PersistenceAnnotationBeanPostProcessor.java:

510)

        at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProc

essor.findEntityManagerFactory(PersistenceAnnotationBeanPostProcessor.java:492)

        at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProc

essor$PersistenceElement.resolveEntityManager(PersistenceAnnotationBeanPostProce

ssor.java:656)

        at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProc

essor$PersistenceElement.getResourceToInject(PersistenceAnnotationBeanPostProces

sor.java:629)

        at org.springframework.beans.factory.annotation.InjectionMetadata$Inject

edElement.inject(InjectionMetadata.java:147)

        at org.springframework.beans.factory.annotation.InjectionMetadata.inject

(InjectionMetadata.java:84)

        at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProc

essor.postProcessPropertyValues(PersistenceAnnotationBeanPostProcessor.java:338)

 

        ... 56 more

Caused by: java.lang.reflect.UndeclaredThrowableException

        at $Proxy117.addTransformer(Unknown Source)

        at org.eclipse.persistence.jpa.PersistenceProvider.createContainerEntity

ManagerFactory(PersistenceProvider.java:234)

        at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.cr

eateNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:225)

        at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPro

pertiesSet(AbstractEntityManagerFactoryBean.java:308)

        at org.springframework.beans.factory.support.AbstractAutowireCapableBean

Factory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1469)

        at org.springframework.beans.factory.support.AbstractAutowireCapableBean

Factory.initializeBean(AbstractAutowireCapableBeanFactory.java:1409)

        ... 70 more

Caused by: java.lang.reflect.InvocationTargetException

        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.

java:39)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces

sorImpl.java:25)

        at java.lang.reflect.Method.invoke(Method.java:597)

        at org.springframework.orm.jpa.persistenceunit.DefaultPersistenceUnitMan

ager$Jpa2PersistenceUnitInfoDecorator.invoke(DefaultPersistenceUnitManager.java:

431)

        ... 76 more

Caused by: java.lang.IllegalStateException: Cannot apply class transformer witho

ut LoadTimeWeaver specified

        at org.springframework.orm.jpa.persistenceunit.SpringPersistenceUnitInfo

.addTransformer(SpringPersistenceUnitInfo.java:109)

        ... 81 more

 

Case 3. I use org.springframework.instrument.classloading.InstrumentationLoadTimeWeaver

         <property name="loadTimeWeaver">

            <bean class="org.springframework.instrument.classloading.InstrumentationLoadTimeWeaver"/>

        </property>  

 

The problem here is java.lang.IllegalStateException: Must start with Java agent to use In

strumentationLoadTimeWeaver. See Spring documentation

 

 

<Feb 21, 2012 1:43:33 PM> <SEVERE> <org.springframework.web.context.ContextLoade

r initWebApplicationContext> <Context initialization failed>

org.springframework.beans.factory.BeanCreationException: Error creating bean wit

h name 'configEventHeaderDao': Injection of persistence dependencies failed; nes

ted exception is org.springframework.beans.factory.BeanCreationException: Error

creating bean with name 'emf' defined in class path resource [dti/applicationCon

text-ConfigProp.xml]: Invocation of init method failed; nested exception is java

.lang.reflect.UndeclaredThrowableException

        at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProc

essor.postProcessPropertyValues(PersistenceAnnotationBeanPostProcessor.java:341)

 

        at org.springframework.beans.factory.support.AbstractAutowireCapableBean

Factory.populateBean(AbstractAutowireCapableBeanFactory.java:1064)

        at org.springframework.beans.factory.support.AbstractAutowireCapableBean

Factory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)

        at org.springframework.beans.factory.support.AbstractAutowireCapableBean

Factory.createBean(AbstractAutowireCapableBeanFactory.java:456)

        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getOb

ject(AbstractBeanFactory.java:291)

        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr

y.getSingleton(DefaultSingletonBeanRegistry.java:222)

        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBe

an(AbstractBeanFactory.java:288)

        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean

(AbstractBeanFactory.java:190)

        at org.springframework.beans.factory.support.DefaultListableBeanFactory.

preInstantiateSingletons(DefaultListableBeanFactory.java:563)

        at org.springframework.context.support.AbstractApplicationContext.finish

BeanFactoryInitialization(AbstractApplicationContext.java:872)

        at org.springframework.context.support.AbstractApplicationContext.refres

h(AbstractApplicationContext.java:423)

        at org.springframework.web.context.ContextLoader.createWebApplicationCon

text(ContextLoader.java:276)

        at org.springframework.web.context.ContextLoader.initWebApplicationConte

xt(ContextLoader.java:197)

        at dti.core.webapp.OasisContextLoaderListener.contextInitialized(OasisCo

ntextLoaderListener.java:44)

        at weblogic.servlet.internal.EventsManager$FireContextListenerAction.run

(EventsManager.java:582)

        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate

dSubject.java:321)

        at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:

120)

        at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:

57)

        at weblogic.servlet.internal.EventsManager.executeContextListener(Events

Manager.java:233)

        at weblogic.servlet.internal.EventsManager.notifyContextCreatedEvent(Eve

ntsManager.java:190)

        at weblogic.servlet.internal.EventsManager.notifyContextCreatedEvent(Eve

ntsManager.java:175)

        at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAp

pServletContext.java:1730)

        at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletCon

text.java:2740)

        at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.jav

a:1704)

        at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:781)

        at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleSta

teDriver.java:213)

        at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleSta

teDriver.java:208)

        at weblogic.application.utils.StateMachineDriver.nextState(StateMachineD

river.java:35)

        at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStat

eDriver.java:70)

        at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedMod

uleDriver.java:212)

        at weblogic.application.internal.ExtensibleModuleWrapper.start(Extensibl

eModuleWrapper.java:111)

        at weblogic.application.internal.flow.ModuleListenerInvoker.start(Module

ListenerInvoker.java:124)

        at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleSta

teDriver.java:213)

        at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleSta

teDriver.java:208)

        at weblogic.application.utils.StateMachineDriver.nextState(StateMachineD

river.java:35)

        at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStat

eDriver.java:70)

        at weblogic.application.internal.flow.StartModulesFlow.activate(StartMod

ulesFlow.java:24)

        at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.ja

va:729)

        at weblogic.application.utils.StateMachineDriver.nextState(StateMachineD

river.java:35)

        at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.

java:258)

        at weblogic.application.internal.EarDeployment.activate(EarDeployment.ja

va:61)

        at weblogic.application.internal.DeploymentStateChecker.activate(Deploym

entStateChecker.java:165)

        at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(Ap

pContainerInvoker.java:79)

        at weblogic.deploy.internal.targetserver.BasicDeployment.activate(BasicD

eployment.java:192)

        at weblogic.deploy.internal.targetserver.BasicDeployment.activateFromSer

verLifecycle(BasicDeployment.java:369)

        at weblogic.management.deploy.internal.DeploymentAdapter$1.doActivate(De

ploymentAdapter.java:51)

        at weblogic.management.deploy.internal.DeploymentAdapter.activate(Deploy

mentAdapter.java:200)

        at weblogic.management.deploy.internal.AppTransition$2.transitionApp(App

Transition.java:30)

        at weblogic.management.deploy.internal.ConfiguredDeployments.transitionA

pps(ConfiguredDeployments.java:240)

        at weblogic.management.deploy.internal.ConfiguredDeployments.activate(Co

nfiguredDeployments.java:169)

        at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(Conf

iguredDeployments.java:123)

        at weblogic.management.deploy.internal.DeploymentServerService.resume(De

ploymentServerService.java:186)

        at weblogic.management.deploy.internal.DeploymentServerService.start(Dep

loymentServerService.java:94)

        at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)

        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)

        at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)

Caused by: org.springframework.beans.factory.BeanCreationException: Error creati

ng bean with name 'emf' defined in class path resource [dti/applicationContext-C

onfigProp.xml]: Invocation of init method failed; nested exception is java.lang.

reflect.UndeclaredThrowableException

        at org.springframework.beans.factory.support.AbstractAutowireCapableBean

Factory.initializeBean(AbstractAutowireCapableBeanFactory.java:1412)

        at org.springframework.beans.factory.support.AbstractAutowireCapableBean

Factory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)

        at org.springframework.beans.factory.support.AbstractAutowireCapableBean

Factory.createBean(AbstractAutowireCapableBeanFactory.java:456)

        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getOb

ject(AbstractBeanFactory.java:291)

        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr

y.getSingleton(DefaultSingletonBeanRegistry.java:222)

        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBe

an(AbstractBeanFactory.java:288)

        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean

(AbstractBeanFactory.java:190)

        at org.springframework.orm.jpa.EntityManagerFactoryUtils.findEntityManag

erFactory(EntityManagerFactoryUtils.java:99)

        at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProc

essor.findNamedEntityManagerFactory(PersistenceAnnotationBeanPostProcessor.java:

510)

        at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProc

essor.findEntityManagerFactory(PersistenceAnnotationBeanPostProcessor.java:492)

        at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProc

essor$PersistenceElement.resolveEntityManager(PersistenceAnnotationBeanPostProce

ssor.java:656)

        at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProc

essor$PersistenceElement.getResourceToInject(PersistenceAnnotationBeanPostProces

sor.java:629)

        at org.springframework.beans.factory.annotation.InjectionMetadata$Inject

edElement.inject(InjectionMetadata.java:147)

        at org.springframework.beans.factory.annotation.InjectionMetadata.inject

(InjectionMetadata.java:84)

        at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProc

essor.postProcessPropertyValues(PersistenceAnnotationBeanPostProcessor.java:338)

 

        ... 55 more

Caused by: java.lang.reflect.UndeclaredThrowableException

        at $Proxy69.addTransformer(Unknown Source)

        at org.eclipse.persistence.jpa.PersistenceProvider.createContainerEntity

ManagerFactory(PersistenceProvider.java:234)

        at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.cr

eateNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:225)

        at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPro

pertiesSet(AbstractEntityManagerFactoryBean.java:308)

        at org.springframework.beans.factory.support.AbstractAutowireCapableBean

Factory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1469)

        at org.springframework.beans.factory.support.AbstractAutowireCapableBean

Factory.initializeBean(AbstractAutowireCapableBeanFactory.java:1409)

        ... 69 more

Caused by: java.lang.reflect.InvocationTargetException

        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.

java:39)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces

sorImpl.java:25)

        at java.lang.reflect.Method.invoke(Method.java:597)

        at org.springframework.orm.jpa.persistenceunit.DefaultPersistenceUnitMan

ager$Jpa2PersistenceUnitInfoDecorator.invoke(DefaultPersistenceUnitManager.java:

431)

        ... 75 more

Caused by: java.lang.IllegalStateException: Must start with Java agent to use In

strumentationLoadTimeWeaver. See Spring documentation.

        at org.springframework.instrument.classloading.InstrumentationLoadTimeWe

aver.addTransformer(InstrumentationLoadTimeWeaver.java:87)

        at org.springframework.orm.jpa.persistenceunit.SpringPersistenceUnitInfo

.addTransformer(SpringPersistenceUnitInfo.java:111)

        ... 80 more

 

Best regards,

 

 

Michael Gitelman

mgitelman@xxxxxxxxxxxxxxx

 

Delphi Technology, Inc.

One Washington Mall, Suite 3

Boston, MA  02108

O: 617 259 1256

F: 617 778 2296

www.delphi-tech.com

 

Experience, Innovation... Results.

From: Michael O'Brien [mailto:Michael.F.Obrien@xxxxxxxxx]
Sent: Friday, February 17, 2012 6:58 PM
To: Michael Gitelman
Cc: EclipseLink User Discussions
Subject: RE: Eclipselink 2 / JPA 2 integration with Spring on WebLogic 12.1.1

 

Michael,

                That approach is for Java EE EJB proxies.  Where are you running Spring from? If from the modules directory on WebLogic – then we would be at the same EJB level classloader.  But I suspect that you are including Spring with your WAR right? In that case you need to develop for a web only level.  You can also try a shared library if this works for you.

                I assume this is all on an older WebLogic 10.3.3?

                From your error it looks like the @Autowired spring bean for your EMF has issues because the path to the jar containing your entities is not found .

                I would start with either verifying that the entity library is found or placing your entities directly in the war (use many <class> instead of <jar-file> to start so that the persistence unit gets predeployed properly and then packaging separately.

                Also, check your manifest – I had to add a reference as follows to pick up jars in addition to the <jar-file> property

Class-Path: org.obrienlabs.distributed.CollatzModel.jar

 

                Note: WebLogic actually uses an older (BEA era) version of the DI mechanism the AOP Pitchfork framework when doing EE instrumentation.  You should be fine using Spring 2.5 out of the box in WLS without packaging your own version of the library – unless you need to use Spring 3.x

 

                / Michael O’Brien

 


Back to the top