Guillaume,
It looks like you aren't picking up the OpenJPA enhanced class files for the
store. After the annotated JPA classes are compiled an OpenJPA class
enhancer is executed ( adding in all the OpenJPA persistence management to
the class file ).
Per Matthieu's email - did you run the build on the bpel-store as a
stand-alone build?
Lance
On 1/8/07, Guillaume Nodet <[EMAIL PROTECTED]> wrote:
I have update my local copy of Ode (I was using a few days old version).
Just changing the dao artifacts in the pom and deploying to servicemix
(svn head),
i have the following exception:
ERROR - AutoDeploymentService - Failed to update Component:
OdeBpelEngine
org.apache.ode.bpel.iapi.ContextException: DbError
at org.apache.ode.store.ProcessStoreImpl.exec(
ProcessStoreImpl.java:480)
at org.apache.ode.store.ProcessStoreImpl.loadAll(
ProcessStoreImpl.java:409)
at org.apache.ode.jbi.OdeLifeCycle.initBpelServer(
OdeLifeCycle.java:254)
at org.apache.ode.jbi.OdeLifeCycle.init(OdeLifeCycle.java:117)
at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.init(
ComponentMBeanImpl.java:201)
at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.doStart(
ComponentMBeanImpl.java:287)
at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.start(
ComponentMBeanImpl.java:216)
at org.apache.servicemix.jbi.framework.InstallationService.install
(InstallationService.java:331)
at
org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(
AutoDeploymentService.java:276)
at
org.apache.servicemix.jbi.framework.AutoDeploymentService.updateExternalArchive
(AutoDeploymentService.java:201)
at
org.apache.servicemix.jbi.container.JBIContainer.updateExternalArchive(
JBIContainer.java:473)
at
org.apache.servicemix.jbi.container.JBIContainer.updateExternalArchive(
JBIContainer.java:483)
at
org.apache.servicemix.jbi.framework.AdminCommandsService.installComponent(
AdminCommandsService.java:73)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(
NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(
DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.commons.beanutils.MethodUtils.invokeMethod(
MethodUtils.java:216)
at org.apache.servicemix.jbi.management.BaseStandardMBean.invoke(
BaseStandardMBean.java:316)
at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(
DynamicMetaDataImpl.java:213)
at com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java
:220)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(
DefaultMBeanServerInterceptor.java:815)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(
JmxMBeanServer.java:784)
at javax.management.remote.rmi.RMIConnectionImpl.doOperation(
RMIConnectionImpl.java:1408)
at javax.management.remote.rmi.RMIConnectionImpl.access$100(
RMIConnectionImpl.java:81)
at
javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(
RMIConnectionImpl.java:1245)
at java.security.AccessController.doPrivileged(Native Method)
at
javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(
RMIConnectionImpl.java:1348)
at javax.management.remote.rmi.RMIConnectionImpl.invoke(
RMIConnectionImpl.java:782)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(
NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(
DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java
:294)
at sun.rmi.transport.Transport$1.run(Transport.java:153)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(
TCPTransport.java:460)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(
TCPTransport.java:701)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.util.concurrent.ExecutionException:
<4|true|0.9.6-incubating-SNAPSHOT>
org.apache.openjpa.persistence.ArgumentException: The type "class
org.apa
che.ode.store.jpa.DeploymentUnitDaoImpl" has not been enhanced.
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java
:205)
at java.util.concurrent.FutureTask.get(FutureTask.java:80)
at org.apache.ode.store.ProcessStoreImpl.exec(
ProcessStoreImpl.java:478)
... 39 more
Caused by: <4|true|0.9.6-incubating-SNAPSHOT>
org.apache.openjpa.persistence.ArgumentException: The type "class
org.apache.ode.store.jpa.DeploymentUnitDaoImpl"
has not been enhanced.
at org.apache.openjpa.meta.ClassMetaData.resolveMeta(
ClassMetaData.java:1590)
at org.apache.openjpa.meta.ClassMetaData.resolve(
ClassMetaData.java:1564)
at org.apache.openjpa.meta.MetaDataRepository.processBuffer(
MetaDataRepository.java:654)
at org.apache.openjpa.meta.MetaDataRepository.resolveMeta(
MetaDataRepository.java:554)
at org.apache.openjpa.meta.MetaDataRepository.resolve(
MetaDataRepository.java:479)
at org.apache.openjpa.meta.MetaDataRepository.getMetaData(
MetaDataRepository.java:283)
at
org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getClassMetaData(
JPQLExpressionBuilder.java:162)
at
org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.resolveClassMetaData(
JPQLExpressionBuilder.java:131)
at
org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getCandidateMetaData(
JPQLExpressionBuilder.java:211)
at
org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getCandidateMetaData(
JPQLExpressionBuilder.java:181)
at
org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getCandidateType(
JPQLExpressionBuilder.java:174)
at org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.access$500
(JPQLExpressionBuilder.java:61)
at
org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder$ParsedJPQL.populate(
JPQLExpressionBuilder.java:1653)
at org.apache.openjpa.kernel.jpql.JPQLParser.populate(
JPQLParser.java:52)
at
org.apache.openjpa.kernel.ExpressionStoreQuery.populateFromCompilation(
ExpressionStoreQuery.java:145)
at org.apache.openjpa.kernel.QueryImpl.newCompilation(
QueryImpl.java:595)
at org.apache.openjpa.kernel.QueryImpl.compileForCompilation(
QueryImpl.java:577)
at org.apache.openjpa.kernel.QueryImpl.compileForExecutor(
QueryImpl.java:604)
at org.apache.openjpa.kernel.QueryImpl.getOperation(QueryImpl.java
:1417)
at org.apache.openjpa.kernel.DelegatingQuery.getOperation(
DelegatingQuery.java:120)
at org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java
:202)
at org.apache.openjpa.persistence.QueryImpl.getResultList(
QueryImpl.java:251)
at
org.apache.ode.store.jpa.ConfStoreConnectionJpa.getDeploymentUnits(
ConfStoreConnectionJpa.java:67)
at org.apache.ode.store.ProcessStoreImpl$5.call(
ProcessStoreImpl.java:411)
at org.apache.ode.store.ProcessStoreImpl$Callable.call(
ProcessStoreImpl.java:595)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java
:269)
at java.util.concurrent.FutureTask.run(FutureTask.java:123)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(
ThreadPoolExecutor.java:650)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(
ThreadPoolExecutor.java:675)
... 1 more
However, I have no idea how to solve that atm, as I have never
used OpenJpa yet. Anyone ?
On 1/8/07, Roger Menday <[EMAIL PROTECTED]> wrote:
> Hi Guillaume,
> > Deployment works fine for me, as soon as I remove some
> > dependencies from the pom
> Which dependencies should I remove please ?
> > (servicemix-* should all be at
> > provided scope).
> servicemix-jbi and -core are both duplicated in my pom - one has scope
> "provided".
>
> I think I have cleaned this up, but I still seem to be getting problems
> - such as :
>
> Caused by: java.lang.NoClassDefFoundError
> at
> org.hibernate.proxy.CGLIBLazyInitializer.getProxyFactory(
CGLIBLazyInitializer.java:116)
> ... 20 more
> 8/01/2007 16:20:47 org.apache.commons.logging.impl.SLF4JLog error
> SEVERE: CGLIB Enhancement failed:
> org.apache.ode.daohib.bpel.hobj.HCorrelator
> java.lang.NoClassDefFoundError
> at
> org.hibernate.proxy.CGLIBLazyInitializer.getProxyFactory(
CGLIBLazyInitializer.java:116)
> at
> org.hibernate.proxy.CGLIBProxyFactory.postInstantiate(
CGLIBProxyFactory.java:41)
> at
> org.hibernate.tuple.PojoEntityTuplizer.buildProxyFactory(
PojoEntityTuplizer.java:161)
> at
> org.hibernate.tuple.AbstractEntityTuplizer.<init>(
AbstractEntityTuplizer.java:131)
> at
> org.hibernate.tuple.PojoEntityTuplizer.<init>(PojoEntityTuplizer.java
:55)
> at org.hibernate.tuple.TuplizerLookup.create(TuplizerLookup.java:64)
>
> (I am using the SVN head version of servicemix) ....
>
> I would be very grateful for any suggestions ...
>
> Thanks,
>
> Roger
> >
> > On 1/8/07, Roger Menday <[EMAIL PROTECTED]> wrote:
> >>
> >> Hi Matthieu,
> >>
> >> Is it possible to add the migration to OpenJPA to the JBI module as
> >> well ?
> >>
> >> I'm trying to deploy the latest ODE to servicemix and getting a
number
> >> of hibernate exceptions, and I don't know where to start to make them
go
> >> away.
> >>
> >> thanks !
> >>
> >> Roger
> >> > Hi all,
> >> >
> >> > The world as you know it has just changed. Well, at least some part
of
> >> > it.
> >> > I've just committed the change in ODE from Hibernate to OpenJPA so
now
> >> > the
> >> > WAR produced by the build uses OpenJPA by default. It seems to work
> >> > properly
> >> > from what I've tried. I have a feeling that it's not using the
> >> > transaction
> >> > manager properly yet and it's in autocommit but I'm not quite sure,
I
> >> > still
> >> > have to work on that. But most processes should work anyway.
> >> >
> >> > In case of emergency, you can set the system property
> >> > 'ode.persistence' to
> >> > 'hibernate' and it will switch back to Hibernate after a restart.
But
> >> > if you
> >> > find a bug, fixing it or yelling would be better anyway.
> >> >
> >> > Last but not least, I had to fight a lot with Maven to get things
> >> roughly
> >> > working. However the enhancement of persistence classes in the
> >> bpel-store
> >> > won't work if you run a global build. You will have to build
> >> bpel-store
> >> > individually first and then build everything. For some reason
> >> > maven.plugin.classpath doesn't get set properly when doing a
reactor
> >> > build,
> >> > if somebody knows a workaround, that would be great.
> >> >
> >> > Thanks to Lance for doing most of the JPA migration work!
> >> >
> >> > Matthieu
> >> >
> >>
> >>
> >>
> >
> >
>
>
>
>
--
Cheers,
Guillaume Nodet