I don't know if this can help, but verify the javassist version you have in your application is conformed to the latest Tapestry version => 3.9.0.GA
Regards Christophe. 2009/10/21 Xuan Tran Le <xua...@myvietnam.net> > Hi dear, > > I'm running Tapestry 5.1.0.5 on IBM Websphere Portal 6.1 and I have an > error: when create object "ActionResponse", it throws java.lang.VerifyError > (please ignore why it cause java.lang.VerifyError). I wanna say that in > RecursiveServiceCreationCheckWrapper.createObject() method you catch only > RuntimeException, this is your code: > ---------------- > public Object createObject() > { > if (locked) > throw new > IllegalStateException(IOCMessages.recursiveServiceBuild(serviceDef)); > > // Set the lock, to ensure that recursive service construction > fails. > > locked = true; > > try > { > return delegate.createObject(); > } > catch (RuntimeException ex) > { > logger.error(IOCMessages.serviceConstructionFailed(serviceDef, > ex), ex); > > // Release the lock on failure; the service is now in an unknown > state, but we may > // be able to continue from here. > > locked = false; > > throw ex; > } > > } > ---------------- > and it cause "locked" variable not be changed to "false", it means that > "locked" is "true" now. Then when later it try to create this object again, > then it cause > IllegalStateException(IOCMessages.recursiveServiceBuild(serviceDef)). > > I think that you should change > RecursiveServiceCreationCheckWrapper.createObject() method by catch > Throwable insteads of RuntimeException. > > This is the full stacktrace: > > [10/21/09 11:16:29:015 ICT] 00000039 SystemOut O 2009-10-21 > 11:16:28,968 > ERROR [WebContainer : 0] TapestryModule.RequestExceptionHandler > (DefaultRequestExceptionHandler.java:62) - Processing of request failed > with uncaught exception: class loading constraint violated (class: > $ActionResponse_124754f5af3 method: > setEvent(Ljavax/xml/namespace/QName;Ljava/io/Serializable;)V) at pc: 0 > java.lang.VerifyError: class loading constraint violated (class: > $ActionResponse_124754f5af3 method: > setEvent(Ljavax/xml/namespace/QName;Ljava/io/Serializable;)V) at pc: 0 > at java.lang.J9VMInternals.verifyImpl(Native Method) > at java.lang.J9VMInternals.verify(J9VMInternals.java:68) > at java.lang.J9VMInternals.initialize(J9VMInternals.java:129) > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) > at > > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:67) > at > > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > at java.lang.reflect.Constructor.newInstance(Constructor.java:522) > at > > org.apache.tapestry5.ioc.internal.ModuleImpl.createProxyInstance(ModuleImpl.java:490) > at > > org.apache.tapestry5.ioc.internal.ModuleImpl.createProxy(ModuleImpl.java:449) > at > org.apache.tapestry5.ioc.internal.ModuleImpl.access$900(ModuleImpl.java:32) > at > org.apache.tapestry5.ioc.internal.ModuleImpl$4.invoke(ModuleImpl.java:297) > at > > org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:68) > at > > org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68) > at > > org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:941) > at > org.apache.tapestry5.ioc.internal.ModuleImpl.create(ModuleImpl.java:321) > at > org.apache.tapestry5.ioc.internal.ModuleImpl.access$100(ModuleImpl.java:32) > at > org.apache.tapestry5.ioc.internal.ModuleImpl$1.invoke(ModuleImpl.java:181) > at > > org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withWrite(ConcurrentBarrier.java:140) > at > org.apache.tapestry5.ioc.internal.ModuleImpl$2.invoke(ModuleImpl.java:197) > at > > org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85) > at > > org.apache.tapestry5.ioc.internal.ModuleImpl.findOrCreate(ModuleImpl.java:203) > at > org.apache.tapestry5.ioc.internal.ModuleImpl.getService(ModuleImpl.java:98) > at > > org.apache.tapestry5.ioc.internal.RegistryImpl.getService(RegistryImpl.java:320) > at > > org.apache.tapestry5.ioc.internal.RegistryImpl.getService(RegistryImpl.java:566) > at > > org.apache.tapestry5.ioc.internal.ObjectLocatorImpl.getService(ObjectLocatorImpl.java:44) > at > > org.apache.tapestry5.ioc.internal.services.MasterObjectProviderImpl$1.invoke(MasterObjectProviderImpl.java:56) > at > > org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:68) > at > > org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68) > at > > org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:941) > at > > org.apache.tapestry5.ioc.internal.services.MasterObjectProviderImpl.provide(MasterObjectProviderImpl.java:41) > at > > $MasterObjectProvider_124754f5a1a.provide($MasterObjectProvider_124754f5a1a.java) > at > > org.apache.tapestry5.ioc.internal.RegistryImpl.getObject(RegistryImpl.java:696) > at > > org.apache.tapestry5.ioc.internal.ObjectLocatorImpl.getObject(ObjectLocatorImpl.java:49) > at > > org.apache.tapestry5.ioc.internal.util.InternalUtils$4.run(InternalUtils.java:319) > at > > org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:52) > at > > org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:50) > at > > org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:68) > at > > org.apache.tapestry5.ioc.internal.OperationTrackerImpl.run(OperationTrackerImpl.java:48) > at > > org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.run(PerThreadOperationTracker.java:56) > at > org.apache.tapestry5.ioc.internal.RegistryImpl.run(RegistryImpl.java:936) > at > > org.apache.tapestry5.ioc.internal.util.InternalUtils.injectIntoFields(InternalUtils.java:304) > at > > org.apache.tapestry5.ioc.internal.ConstructorServiceCreator.createObject(ConstructorServiceCreator.java:64) > at > > org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45) > at > > org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:68) > at > > org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68) > at > > org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:941) > at > > org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49) > at > > org.apache.tapestry5.ioc.internal.SingletonServiceLifecycle.createService(SingletonServiceLifecycle.java:29) > at > > org.apache.tapestry5.ioc.internal.LifecycleWrappedServiceCreator.createObject(LifecycleWrappedServiceCreator.java:46) > at > > org.apache.tapestry5.ioc.internal.AdvisorStackBuilder.createObject(AdvisorStackBuilder.java:60) > at > > org.apache.tapestry5.ioc.internal.InterceptorStackBuilder.createObject(InterceptorStackBuilder.java:52) > at > > org.apache.tapestry5.ioc.internal.RecursiveServiceCreationCheckWrapper.createObject(RecursiveServiceCreationCheckWrapper.java:60) > at > > org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:45) > at > > org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:68) > at > > org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68) > at > > org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:941) > at > > org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:49) > at > > org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.obtainObjectFromCreator(JustInTimeObjectCreator.java:68) > at > > org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:57) > at > > $GenericRequestResponseService_124754f5a89.delegate($GenericRequestResponseService_124754f5a89.java) > at > > $GenericRequestResponseService_124754f5a89.getGenericResponse($GenericRequestResponseService_124754f5a89.java) > at > > com.mvnsoft.mvncms.tapestry5.base.BasePage.getGenericResponse(BasePage.java:69) > at > com.mvnsoft.mvncms.tapestry5.base.BasePage.activate(BasePage.java:105) > at > > com.mvnsoft.mvncms.tapestry5.base.BasePage.dispatchComponentEvent(BasePage.java) > at > > com.mvnsoft.mvncms.tapestry5.pages.publishadmin.Index.dispatchComponentEvent(Index.java) > ....................... > [10/21/09 11:27:44:890 ICT] 00000039 SystemOut O > ===java.lang.RuntimeException: Exception constructing service > 'GenericRequestResponseService': Construction of service > 'GenericRequestResponseService' has failed due to recursion: the service > depends on itself in some way. Please check > > com.mvnsoft.mvncms.tapestry5.services.GenericRequestResponseServiceImplPortlet() > (at GenericRequestResponseServiceImplPortlet.java:30) via > > com.mvnsoft.mvncms.tapestry5.services.MvnPublishAdminPortletModule.bind(ServiceBinder) > (at MvnPublishAdminPortletModule.java:30) for references to another service > that is itself dependent on service 'GenericRequestResponseService'. >