[JBoss Seam] - Re: Migration from seam 1.2.1, jboss 4.0.5 to seam 2.0.1 jbo
by gjeudy
Thanks Pete,
I did that but, loo and behold! the commandButtons now work even though I haven't changed anything else than removing h:message for attribute...
I'm still getting a duplicate method getId() at startup with 2 JPA Entity classes which I didnt get in jboss 4.0.2, now I guess this might not be a seam specific issue. Since the issue only appears on 2 Entity classes I expect these should be fixable and not become a show stopper to the upgrade to seam 2.0.1, jboss 4.2.2.
One of the faulty JPA entity looks like this:
@Entity
| @Name("productLookup")
| @DiscriminatorValue("PRS")
| public class ProductImpl extends SpecificationImpl implements Product {
|
| }
getId() method is implemented in SpecificationImpl
public java.lang.Long getId() {
| return specificationId;
| }
The method getId() is declared on Specification interface implemented by SpecificationImpl.
SpecificationImpl has no superclass (i.e. Object)
Product interface extends Specification interface which extends in turn ReferenceDomain interface. I noticed the later 2 interfaces also extends java.io.Serializable. I think I read somewhere only concrete JPA Entity classes should implement Serializable, is this what could be wrong here ?
Below is the stacktrace:
2008-02-12 13:27:08,417 ERROR [org.hibernate.proxy.pojo.BasicLazyInitializer] Javassist Enhancement failed: com.archinsurance.entity.reference.impl.ProductImpl
| java.lang.RuntimeException: duplicate method: getId in com.archinsurance.entity.reference.impl.ProductImpl_$$_javassist_81
| at javassist.util.proxy.ProxyFactory.createClass3(ProxyFactory.java:342)
| at javassist.util.proxy.ProxyFactory.createClass2(ProxyFactory.java:312)
| at javassist.util.proxy.ProxyFactory.createClass(ProxyFactory.java:271)
| at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.getProxyFactory(JavassistLazyInitializer.java:138)
| at org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.postInstantiate(JavassistProxyFactory.java:42)
| at org.hibernate.tuple.entity.PojoEntityTuplizer.buildProxyFactory(PojoEntityTuplizer.java:162)
| at org.hibernate.tuple.entity.AbstractEntityTuplizer.<init>(AbstractEntityTuplizer.java:135)
| at org.hibernate.tuple.entity.PojoEntityTuplizer.<init>(PojoEntityTuplizer.java:55)
| at org.hibernate.tuple.entity.EntityEntityModeToTuplizerMapping.<init>(EntityEntityModeToTuplizerMapping.java:56)
| at org.hibernate.tuple.entity.EntityMetamodel.<init>(EntityMetamodel.java:295)
| at org.hibernate.persister.entity.AbstractEntityPersister.<init>(AbstractEntityPersister.java:434)
| at org.hibernate.persister.entity.SingleTableEntityPersister.<init>(SingleTableEntityPersister.java:109)
| at org.hibernate.persister.PersisterFactory.createClassPersister(PersisterFactory.java:55)
| at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:226)
| at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1294)
| at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:713)
| at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:127)
| at org.jboss.ejb3.entity.PersistenceUnitDeployment.start(PersistenceUnitDeployment.java:246)
| 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.jboss.ejb3.ServiceDelegateWrapper.startService(ServiceDelegateWrapper.java:103)
| at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
| at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
| 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.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
| at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
| at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
| at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
| at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978)
| at $Proxy0.start(Unknown Source)
| at org.jboss.system.ServiceController.start(ServiceController.java:417)
| at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
| at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
| at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
| at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
| at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
| at $Proxy372.start(Unknown Source)
| at org.jboss.ejb3.JmxKernelAbstraction.install(JmxKernelAbstraction.java:120)
| at org.jboss.ejb3.Ejb3Deployment.startPersistenceUnits(Ejb3Deployment.java:627)
| at org.jboss.ejb3.Ejb3Deployment.start(Ejb3Deployment.java:351)
| at org.jboss.ejb3.Ejb3Module.startService(Ejb3Module.java:91)
| at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
| at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
| 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.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
| at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
| at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
| at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
| at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978)
| at $Proxy0.start(Unknown Source)
| at org.jboss.system.ServiceController.start(ServiceController.java:417)
| at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
| at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
| at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
| at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
| at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
| at $Proxy33.start(Unknown Source)
| at org.jboss.ejb3.EJB3Deployer.start(EJB3Deployer.java:512)
| 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.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
| at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
| at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
| at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
| at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
| at org.jboss.mx.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:97)
| at org.jboss.system.InterceptorServiceMBeanSupport.invokeNext(InterceptorServiceMBeanSupport.java:238)
| at org.jboss.wsf.container.jboss42.DeployerInterceptor.start(DeployerInterceptor.java:87)
| at org.jboss.deployment.SubDeployerInterceptorSupport$XMBeanInterceptor.start(SubDeployerInterceptorSupport.java:188)
| at org.jboss.deployment.SubDeployerInterceptor.invoke(SubDeployerInterceptor.java:95)
| at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
| at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
| at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
| at $Proxy34.start(Unknown Source)
| at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1025)
| at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1015)
| at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:819)
| at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782)
| at sun.reflect.GeneratedMethodAccessor26.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
| at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
| at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
| at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
| at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
| at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
| at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
| at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
| at $Proxy9.deploy(Unknown Source)
| at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:421)
| at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:610)
| at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:263)
| at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.loop(AbstractDeploymentScanner.java:274)
| at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.run(AbstractDeploymentScanner.java:225)
| Caused by: javassist.bytecode.DuplicateMemberException: duplicate method: getId in com.archinsurance.entity.reference.impl.ProductImpl_$$_javassist_81
| at javassist.bytecode.ClassFile.testExistingMethod(ClassFile.java:593)
| at javassist.bytecode.ClassFile.addMethod(ClassFile.java:577)
| at javassist.util.proxy.ProxyFactory.override(ProxyFactory.java:655)
| at javassist.util.proxy.ProxyFactory.overrideMethods(ProxyFactory.java:629)
| at javassist.util.proxy.ProxyFactory.make(ProxyFactory.java:550)
| at javassist.util.proxy.ProxyFactory.createClass3(ProxyFactory.java:333)
| ... 116 more
| 2008-02-12 13:27:08,433 WARN [org.hibernate.tuple.entity.PojoEntityTuplizer] could not create proxy factory for:com.archinsurance.entity.reference.impl.ProductImpl
| org.hibernate.HibernateException: Javassist Enhancement failed: com.archinsurance.entity.reference.impl.ProductImpl
| at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.getProxyFactory(JavassistLazyInitializer.java:145)
| at org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.postInstantiate(JavassistProxyFactory.java:42)
| at org.hibernate.tuple.entity.PojoEntityTuplizer.buildProxyFactory(PojoEntityTuplizer.java:162)
| at org.hibernate.tuple.entity.AbstractEntityTuplizer.<init>(AbstractEntityTuplizer.java:135)
| at org.hibernate.tuple.entity.PojoEntityTuplizer.<init>(PojoEntityTuplizer.java:55)
| at org.hibernate.tuple.entity.EntityEntityModeToTuplizerMapping.<init>(EntityEntityModeToTuplizerMapping.java:56)
| at org.hibernate.tuple.entity.EntityMetamodel.<init>(EntityMetamodel.java:295)
| at org.hibernate.persister.entity.AbstractEntityPersister.<init>(AbstractEntityPersister.java:434)
| at org.hibernate.persister.entity.SingleTableEntityPersister.<init>(SingleTableEntityPersister.java:109)
| at org.hibernate.persister.PersisterFactory.createClassPersister(PersisterFactory.java:55)
| at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:226)
| at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1294)
| at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:713)
| at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:127)
| at org.jboss.ejb3.entity.PersistenceUnitDeployment.start(PersistenceUnitDeployment.java:246)
| 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.jboss.ejb3.ServiceDelegateWrapper.startService(ServiceDelegateWrapper.java:103)
| at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
| at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
| 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.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
| at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
| at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
| at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
| at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978)
| at $Proxy0.start(Unknown Source)
| at org.jboss.system.ServiceController.start(ServiceController.java:417)
| at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
| at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
| at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
| at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
| at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
| at $Proxy372.start(Unknown Source)
| at org.jboss.ejb3.JmxKernelAbstraction.install(JmxKernelAbstraction.java:120)
| at org.jboss.ejb3.Ejb3Deployment.startPersistenceUnits(Ejb3Deployment.java:627)
| at org.jboss.ejb3.Ejb3Deployment.start(Ejb3Deployment.java:351)
| at org.jboss.ejb3.Ejb3Module.startService(Ejb3Module.java:91)
| at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
| at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
| 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.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
| at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
| at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
| at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
| at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978)
| at $Proxy0.start(Unknown Source)
| at org.jboss.system.ServiceController.start(ServiceController.java:417)
| at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
| at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
| at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
| at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
| at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
| at $Proxy33.start(Unknown Source)
| at org.jboss.ejb3.EJB3Deployer.start(EJB3Deployer.java:512)
| 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.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
| at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
| at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
| at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
| at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
| at org.jboss.mx.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:97)
| at org.jboss.system.InterceptorServiceMBeanSupport.invokeNext(InterceptorServiceMBeanSupport.java:238)
| at org.jboss.wsf.container.jboss42.DeployerInterceptor.start(DeployerInterceptor.java:87)
| at org.jboss.deployment.SubDeployerInterceptorSupport$XMBeanInterceptor.start(SubDeployerInterceptorSupport.java:188)
| at org.jboss.deployment.SubDeployerInterceptor.invoke(SubDeployerInterceptor.java:95)
| at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
| at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
| at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
| at $Proxy34.start(Unknown Source)
| at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1025)
| at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1015)
| at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:819)
| at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782)
| at sun.reflect.GeneratedMethodAccessor26.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
| at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
| at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
| at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
| at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
| at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
| at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
| at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
| at $Proxy9.deploy(Unknown Source)
| at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:421)
| at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:610)
| at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:263)
| at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.loop(AbstractDeploymentScanner.java:274)
| at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.run(AbstractDeploymentScanner.java:225)
| Caused by: java.lang.RuntimeException: duplicate method: getId in com.archinsurance.entity.reference.impl.ProductImpl_$$_javassist_81
| at javassist.util.proxy.ProxyFactory.createClass3(ProxyFactory.java:342)
| at javassist.util.proxy.ProxyFactory.createClass2(ProxyFactory.java:312)
| at javassist.util.proxy.ProxyFactory.createClass(ProxyFactory.java:271)
| at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.getProxyFactory(JavassistLazyInitializer.java:138)
| ... 113 more
| Caused by: javassist.bytecode.DuplicateMemberException: duplicate method: getId in com.archinsurance.entity.reference.impl.ProductImpl_$$_javassist_81
| at javassist.bytecode.ClassFile.testExistingMethod(ClassFile.java:593)
| at javassist.bytecode.ClassFile.addMethod(ClassFile.java:577)
| at javassist.util.proxy.ProxyFactory.override(ProxyFactory.java:655)
| at javassist.util.proxy.ProxyFactory.overrideMethods(ProxyFactory.java:629)
| at javassist.util.proxy.ProxyFactory.make(ProxyFactory.java:550)
| at javassist.util.proxy.ProxyFactory.createClass3(ProxyFactory.java:333)
| ... 116 more
Any help is appreciated,
Thanks,
-Guillaume
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4128911#4128911
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4128911
18 years, 2 months
[JBoss Messaging] - Re: Reliable delivery
by vc123
"ataylor" wrote : The first thing I notice is that you are setting the timetolive on send to 1000ms, this means that most of these messages could expire and never be consumed, set this to 0.
|
Removing timetolive did the trick. Apparently, expiring messages was killing the GC.
Now, the picture's as follows:
|
| -- Sender
| Sent per sec: 11417
| Sent per sec: 13772
| Sent per sec: 11489
| Sent per sec: 10700
| Sent per sec: 11397
| Sent per sec: 12361
| Sent per sec: 12043
| Sent per sec: 7591
| Sent per sec: 6297
| Sent per sec: 1126
| Sent per sec: 921
| Sent per sec: 1024
| Sent per sec: 870
| ...
|
| Sent per sec: 803
| Sent per sec: 373
| Sent per sec: 716
| Sent per sec: 768
| Sent per sec: 307
| Sent per sec: 768
| Sent per sec: 665
| Sent per sec: 460
| Sent per sec: 460
| Sent per sec: 563
|
| -- Receiver
| Received per sec: 12205
| Received per sec: 10278
| Received per sec: 9535
| Received per sec: 9949
| Received per sec: 9254
| Received per sec: 9110
| Received per sec: 7416
| Received per sec: 5673
| Received per sec: 3976
| Received per sec: 450
| Received per sec: 400
| Received per sec: 400
| Received per sec: 400
| Received per sec: 407
| ....
|
| Received per sec: 400
| Received per sec: 200
| Received per sec: 400
| Received per sec: 400
| Received per sec: 200
| Received per sec: 400
| Received per sec: 200
| Received per sec: 400
| Received per sec: 185
|
As soon as paging starts, the message s/r rate gets limited by the DB and falls down dramatically.
"ataylor" wrote :
| Also you are sending messages as quickly as possible which isn't a true representation of what would happen in a real live deployment.
|
Unfortunately, it is close to real life: our data soruces are capable of generating several K worth of 1K messages/s, so we need to understand the messaging system limits in order to be able to sustain the data flow.
"ataylor" wrote :
| You are basically saturating the server with messages. i.e. if the max size of Q1 is 2000 messages, as soon as the consumer falls this many behind the producer the messages are paged to the database, slowing everything down. Try experimenting with the destination paging parameters(see the users guide) and add a throttle to your sender.
I am not sure why the consumer falls behind so quickly. True, the producer does not do much, but neither does the consumer, and yet it is about 30% slower than the producer which leads to the queue explosion.
For comparison, the same test program run with SwiftMQ :
| -- Sender
| Sent per sec: 42514
| Sent per sec: 43396
| Sent per sec: 43816
| Sent per sec: 44270
| Sent per sec: 44444
| Sent per sec: 43650
| Sent per sec: 44212
| Sent per sec: 43810
| Sent per sec: 44092
| Sent per sec: 43420
| Sent per sec: 43831
| Sent per sec: 43370
| Sent per sec: 43816
| Sent per sec: 44198
| Sent per sec: 43982
| Sent per sec: 43242
| ...
| Sent per sec: 44326
| Sent per sec: 43464
| Sent per sec: 43702
|
| -- Receiver
| Received per sec: 42808
| Received per sec: 43986
| Received per sec: 43652
| Received per sec: 44426
| Received per sec: 43966
| Received per sec: 43680
| Received per sec: 44176
| Received per sec: 43709
| Received per sec: 43986
| Received per sec: 43832
| Received per sec: 43364
| Received per sec: 43673
| Received per sec: 43816
| Received per sec: 44264
| Received per sec: 43826
| Received per sec: 43314
| ....
|
| Received per sec: 44077
| Received per sec: 43806
| Received per sec: 43496
|
The consumer always manages to keep up with the producer.
VJ
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4128904#4128904
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4128904
18 years, 2 months
[JBoss Seam] - Exadel, JBoss and Seam (Repost)
by gavin.king@jboss.com
For those who have not yet seen the announcement here:
http://www.theserverside.com/news/thread.tss?thread_id=44506
Let me give a quick summary of what is happening, and what it means for Seam users:
* The Exadel RichFaces JSF component suite, and the Exadel Studio Pro eclipse plugin suite are being released into open source as "JBoss RichFaces" and "Red Hat Developer Studio" under LGPL and GPL licenses respectively. Ajax4JSF, which was already open source, will also be hosted at JBoss.
* The existing team at Exadel will continue to develop RichFaces, RHDS and Ajax4JSF.
* Existing functionality in JBoss IDE will be integrated with Exadel Studio Pro and maintained by the existing JBoss IDE team.
* Future development of the combined toolset will emphasize support for Seam and also Hibernate. The goal here is to build a deeply integrated and insanely productive development environment that is comparable to Microsoft's .Net.
* Existing JSF components in Seam will be migrated to the Ajax4JSF CDK (component development kit).
* Since a vibrant JSF ecosystem is of absolutely critical importance to Seam, we will continue to work with the development teams of other component suites (icefaces, trinidad, woodstock, etc) to ensure that Seam and the JSF tooling works well with these products. IMO, there will never be a single dominant vendor in this space, since UI is such a personal thing. We will also be working to make it easier to use different component suites together. For example, Trinidad and RichFaces can already co-exist, but we've got some ideas for making the experience of using them together even better.
* Exadel and JBoss hope to make a big contribution to the next revision of JSF, slated for Java EE 6.
I would like to welcome the Exadel folks to the Seam community!
In case you havn't noticed, this is the best thing that has ever happened to Seam, and is going to take us to the next level on productivity. I've personally dreamed of an opportunity to lead an effort like this for a Long Time :-)
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4025121#4025121
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4025121
18 years, 2 months