[jboss-jira] [JBoss JIRA] Closed: (JBAOP-549) javassist.bytecode.DuplicateMemberException: for loadtime instrumentation of classes loaded by hibernate.

Kabir Khan (JIRA) jira-events at lists.jboss.org
Thu Mar 27 05:36:40 EDT 2008


     [ http://jira.jboss.com/jira/browse/JBAOP-549?page=all ]

Kabir Khan closed JBAOP-549.
----------------------------

    Resolution: Rejected

> javassist.bytecode.DuplicateMemberException: for loadtime instrumentation of classes loaded by hibernate.
> ---------------------------------------------------------------------------------------------------------
>
>                 Key: JBAOP-549
>                 URL: http://jira.jboss.com/jira/browse/JBAOP-549
>             Project: JBoss AOP
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>         Environment: Windows OS, JDK 5.x , hibernate as ORM 
>            Reporter: Bahata Mukhopadhyay
>
> Hi
> I am getting the following exceptions , when trying to use loadtime instrumentation of my dao objects which are getting loaded using hibernate.
> The exception occurs both in Habanero and Alegrias . I need to use Jboss Pojo cache in fron of hibermnate, not as second level cache.
> Please help.
> (Also note that , I was trying to use AOPC to do compile time instrumentation. It had no problem. But as we have FAT/SMART clients in our application,
> and need to transfer serialized copies of the POJOs stored in cache, I was having a problem as the classes weaved with AOPC were having the class-interceptors as their field. So I was getting a Not-Serializable exception .  I wanted to check with load time instrumentation to avoid that problem)
> javassist.bytecode.DuplicateMemberException: duplicate method: _getAdvisor in ft.oots.adt.dao.Alert$$EnhancerByCGLIB$$c2fd0509
> 	at javassist.bytecode.ClassFile.testExistingMethod(ClassFile.java:559)
> 	at javassist.bytecode.ClassFile.addMethod(ClassFile.java:539)
> 	at javassist.CtClassType.addMethod(CtClassType.java:1170)
> 	at org.jboss.aop.instrument.ClassicInstrumentor.addHelperClass(ClassicInstrumentor.java:187)
> 	at org.jboss.aop.instrument.ClassicInstrumentor.doSetupBasics(ClassicInstrumentor.java:157)
> 	at org.jboss.aop.instrument.Instrumentor.setupBasics(Instrumentor.java:887)
> 	at org.jboss.aop.instrument.Instrumentor.instrumentIntroductions(Instrumentor.java:366)
> 	at org.jboss.aop.instrument.Instrumentor.transform(Instrumentor.java:717)
> 	at org.jboss.aop.AspectManager.translate(AspectManager.java:909)
> 	at org.jboss.aop.AspectManager.transform(AspectManager.java:821)
> 	at org.jboss.aop.standalone.AOPTransformer.aspectTransform(AOPTransformer.java:88)
> 	at org.jboss.aop.standalone.AOPTransformer.transform(AOPTransformer.java:75)
> 	at sun.instrument.TransformerManager.transform(TransformerManager.java:122)
> 	at sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:155)
> 	at java.lang.ClassLoader.defineClass1(Native Method)
> 	at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
> 	at sun.reflect.GeneratedMethodAccessor36.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:585)
> 	at net.sf.cglib.core.ReflectUtils.defineClass(ReflectUtils.java:384)
> 	at net.sf.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:219)
> 	at net.sf.cglib.proxy.Enhancer.createHelper(Enhancer.java:377)
> 	at net.sf.cglib.proxy.Enhancer.createClass(Enhancer.java:317)
> 	at org.hibernate.proxy.CGLIBLazyInitializer.getProxyFactory(CGLIBLazyInitializer.java:126)
> 	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)
> 	at org.hibernate.tuple.EntityMetamodel.<init>(EntityMetamodel.java:257)
> 	at org.hibernate.persister.entity.AbstractEntityPersister.<init>(AbstractEntityPersister.java:412)
> 	at org.hibernate.persister.entity.SingleTableEntityPersister.<init>(SingleTableEntityPersister.java:108)
> 	at org.hibernate.persister.PersisterFactory.createClassPersister(PersisterFactory.java:55)
> 	at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:216)
> 	at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1176)
> 	at ft.hibernate.HibernateUtil.<clinit>(HibernateUtil.java:18)
> 	at ft.oots.controller.DatabaseController.getUser(DatabaseController.java:867)
> 	at ft.oots.controller.DatabaseController.verifyUser(DatabaseController.java:398)
> 	at ft.oots.controller.LoginController.verifyUser(LoginController.java:73)
> 	at ft.oots.controller.ServerController.validateUser(ServerController.java:204)
> 	at ft.oots.controller.LoginController.showLoginScreen(LoginController.java:58)
> 	at ft.oots.Application.showLoginScreen(Application.java:178)
> 	at ft.oots.Application.<init>(Application.java:120)
> 	at ft.oots.Application.main(Application.java:522)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list