cancel
Showing results for 
Search instead for 
Did you mean: 

Issue with Repository Services and Hibernate

jjf
Champ in-the-making
Champ in-the-making
I am running a Quartz batch job which uses the Repository Services to add user's to Alfresco.  After getting through a number of users, the job terminates with the following error:

java.lang.NoSuchMethodError: java.lang.Object.getHibernateLazyInitializer()Lorg/hibernate/proxy/LazyInitializer;
   at org.hibernate.proxy.HibernateProxy$$EnhancerByCGLIB$$f0b7b04d.getHibernateLazyInitializer(<generated>)
   at org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:274)
   at org.hibernate.type.EntityType.resolve(EntityType.java:303)
   at org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:116)
   at org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:842)
   at org.hibernate.loader.Loader.doQuery(Loader.java:717)
   at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224)
   at org.hibernate.loader.Loader.loadCollection(Loader.java:1919)
   at org.hibernate.loader.collection.CollectionLoader.initialize(CollectionLoader.java:36)
   at org.hibernate.persister.collection.AbstractCollectionPersister.initialize(AbstractCollectionPersister.java:520)
   at org.hibernate.event.def.DefaultInitializeCollectionEventListener.onInitializeCollection(DefaultInitializeCollectionEventListener.java:60)
   at org.hibernate.impl.SessionImpl.initializeCollection(SessionImpl.java:1676)
   at org.hibernate.collection.AbstractPersistentCollection.forceInitialization(AbstractPersistentCollection.java:454)
   at org.hibernate.engine.StatefulPersistenceContext.initializeNonLazyCollections(StatefulPersistenceContext.java:755)
   at org.hibernate.event.def.DefaultLoadEventListener.assembleCacheEntry(DefaultLoadEventListener.java:547)
   at org.hibernate.event.def.DefaultLoadEventListener.loadFromSecondLevelCache(DefaultLoadEventListener.java:474)
   at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:328)
   at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:123)
   at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:82)
   at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:862)
   at org.hibernate.impl.SessionImpl.immediateLoad(SessionImpl.java:820)
   at org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:62)
   at org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:98)
   at org.hibernate.proxy.CGLIBLazyInitializer.intercept(CGLIBLazyInitializer.java:158)
   at org.hibernate.proxy.HibernateProxy$$EnhancerByCGLIB$$32d831a1.getEntries(<generated>)
   at org.alfresco.repo.domain.hibernate.PermissionsDaoComponentImpl.createSimpleNodePermissionEntry(PermissionsDaoComponentImpl.java:538)
   at org.alfresco.repo.domain.hibernate.PermissionsDaoComponentImpl.getPermissions(PermissionsDaoComponentImpl.java:177)
   at org.alfresco.repo.security.permissions.impl.PermissionServiceImpl$NodeTest.getDenied(PermissionServiceImpl.java:958)
   at org.alfresco.repo.security.permissions.impl.PermissionServiceImpl$NodeTest.evaluate(PermissionServiceImpl.java:748)
   at org.alfresco.repo.security.permissions.impl.PermissionServiceImpl$NodeTest.evaluate(PermissionServiceImpl.java:728)
   at org.alfresco.repo.security.permissions.impl.PermissionServiceImpl.hasPermission(PermissionServiceImpl.java:451)
   at org.alfresco.repo.security.permissions.impl.PermissionServiceImpl.hasPermission(PermissionServiceImpl.java:632)
   at org.alfresco.repo.security.permissions.impl.acegi.ACLEntryAfterInvocationProvider.decide(ACLEntryAfterInvocationProvider.java:456)
   at org.alfresco.repo.security.permissions.impl.acegi.ACLEntryAfterInvocationProvider.decide(ACLEntryAfterInvocationProvider.java:216)
   at net.sf.acegisecurity.afterinvocation.AfterInvocationProviderManager.decide(AfterInvocationProviderManager.java:107)
   at net.sf.acegisecurity.intercept.AbstractSecurityInterceptor.afterInvocation(AbstractSecurityInterceptor.java:329)
   at net.sf.acegisecurity.intercept.method.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:82)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
   at org.alfresco.repo.security.permissions.impl.ExceptionTranslatorMethodInterceptor.invoke(ExceptionTranslatorMethodInterceptor.java:49)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
   at org.alfresco.repo.audit.AuditComponentImpl.auditImpl(AuditComponentImpl.java:219)
   at org.alfresco.repo.audit.AuditComponentImpl.audit(AuditComponentImpl.java:165)
   at org.alfresco.repo.audit.AuditMethodInterceptor.invoke(AuditMethodInterceptor.java:69)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
   at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
   at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:176)
   at $Proxy14.query(Unknown Source)


There are a number of other threads which mention this error and the suggested fix seems to be to add the "-server" parameter to Tomcat.  However, I am not running Tomcat, I am running Weblogic.  Any ideas?  Is this an issue with the version of Hibernate included with Alfresco?  Perhaps there's another way to add users to Alfresco without using the repository services? 

Also, I browsed through the SVN repository but could not find any fixes in there.

Thanks.
2 REPLIES 2

steve
Champ in-the-making
Champ in-the-making
Hi,

You can add the -server option to the JAVA_OPTS settings in Weblogic by editing the startWeblogic.cmd / startWeblogic.sh scripts in the Weblogic domain's bin directory.

This Wiki page may be of use: http://wiki.alfresco.com/wiki/Install_BEA_Weblogic

Steve

jjf
Champ in-the-making
Champ in-the-making
Thanks Steve.  This has resolved the issue.