[Logo] Terracotta Discussion Forums (LEGACY READ-ONLY ARCHIVE)
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 
[Expert]
DistributableBeanFactoryMixin not found  XML
Forum Index -> Terracotta for Spring
Author Message
ulsa

neo

Joined: 10/19/2006 10:28:07
Messages: 3
Offline

I try the 2.1.3 samples for Terracotta Spring, but can't get them to work. They all seem to have problems loading the DistributableBeanFactoryMixin class.

This is from the tomcat nodes startup sequence:

Code:
 AW::WARNING - could not load class [com/tcspring/DistributableBeanFactoryMixin]
 as a resource in loader [WebappClassLoader
   delegate: false
   repositories:
     /WEB-INF/classes/
 ----------> Parent Classloader:
 org.apache.catalina.loader.StandardClassLoader@11e9862
 ]
 


I don't do anything funny, just start the sample server and then each node, as per instructions. When the nodes start, it complains about the missing class, but then happily continues the startup. The sample then fails to behave as it should.

The events sample publishes the events only to the current node. The coordinator sample nodes both say they are active, and the counter differs wildly between the nodes. The webflow sample sometimes crashes due to missing flow execution id. In short, the samples don't work.

This is the stacktrace found in one of the clients' log:

Code:
 2006-10-19 19:38:48,250 [main] INFO com.terracottatech.dso.instrumentation - Loading aspect module [com.tc.object.config.SpringAspectModule]
  in loader org.apache.catalina.loader.WebappClassLoader@31659353
 2006-10-19 19:38:48,265 [main] ERROR com.terracottatech.dso.instrumentation - Aspect module [com.tc.object.config.SpringAspectModule]
  could not be deployed in org.apache.catalina.loader.WebappClassLoader@31659353;
  Can't get ClassInfo for com/tcspring/DistributableBeanFactoryMixin; java.io.IOException: Class not found
 java.io.IOException: Class not found
 	at com.tc.asm.ClassReader.readClass(ClassReader.java:259)
 	at com.tc.asm.ClassReader.<init>(ClassReader.java:236)
 	at com.tc.aspectwerkz.reflect.impl.asm.AsmClassInfo.getClassInfo(AsmClassInfo.java:311)
 	at com.tc.aspectwerkz.reflect.impl.asm.AsmClassInfo.createClassInfoFromStream(AsmClassInfo.java:734)
 	at com.tc.aspectwerkz.reflect.impl.asm.AsmClassInfo.getClassInfo(AsmClassInfo.java:263)
 	at com.tc.aspectwerkz.definition.deployer.MixinDefinitionBuilder.<init>(MixinDefinitionBuilder.java:31)
 	at com.tc.aspectwerkz.definition.deployer.StandardAspectModuleDeployer.addMixin(StandardAspectModuleDeployer.java:113)
 	at com.tc.object.config.SpringAspectModule.buildDefinitionForGetBeanProtocol(SpringAspectModule.java:103)
 	at com.tc.object.config.SpringAspectModule.deploy(SpringAspectModule.java:26)
 	at com.tc.aspectwerkz.definition.deployer.StandardAspectModuleDeployer.loadModule(StandardAspectModuleDeployer.java:140)
 	at com.tc.aspectwerkz.definition.deployer.StandardAspectModuleDeployer.doDeploy(StandardAspectModuleDeployer.java:131)
 	at com.tc.aspectwerkz.definition.deployer.StandardAspectModuleDeployer.deploy(StandardAspectModuleDeployer.java:67)
 	at com.tc.object.bytecode.hook.impl.DefaultWeavingStrategy.transform(DefaultWeavingStrategy.java:84)
 	at com.tc.object.bytecode.hook.impl.DSOContextImpl.preProcess(DSOContextImpl.java:138)
 	at com.tc.object.bytecode.hook.impl.ClassProcessorHelper.defineClass0Pre(ClassProcessorHelper.java:418)
 	at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
 	at java.security.SecureClassLoader.defineClass(Unknown Source)
 	at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1812)
 	at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:866)
 	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1319)
 	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1198)
 	at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1034)
 	at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:932)
 	at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3917)
 	at org.apache.catalina.core.StandardContext.__tc_wrapped_start(StandardContext.java:4201)
 	at org.apache.catalina.core.StandardContext.start(StandardContext.java)
 	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
 	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
 	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
 	at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:608)
 	at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:535)
 	at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470)
 	at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1122)
 	at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
 	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
 	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1021)
 	at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
 	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
 	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
 	at org.apache.catalina.core.StandardService.start(StandardService.java:450)
 	at org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
 	at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 	at java.lang.reflect.Method.invoke(Unknown Source)
 	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:294)
 	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:432)
 


Any ideas?

Ulrik Sandberg (http://www.jayway.se)
Spring-LDAP project member
tgautier

seraphim

Joined: 06/05/2006 12:19:26
Messages: 1781
Offline

Hi Ulsa!

It is possible that you may have run into a known bug in our installation process. By any chance did you happen to install either of the Sessions or DSO product after you installed the Spring product?

If so that may be the source of the error.

You can easily fix this problem by re-installing the Spring product.

Let me know how it goes.

Thanks,

Taylor
[WWW]
ulsa

neo

Joined: 10/19/2006 10:28:07
Messages: 3
Offline

A re-install of Terracotta Spring solved the problem. Many thanks.

Actually, I couldn't just re-install. The installer claimed it couldn't back up the existing installation directory, perhaps due to temp files from my earlier samples runs. I had to uninstall and then install again.

Ulrik Sandberg (http://www.jayway.se)
Spring-LDAP project member
tgautier

seraphim

Joined: 06/05/2006 12:19:26
Messages: 1781
Offline

Ugh, that's too bad. I'll let the team know about that issue too.

I'm glad things are working now.

Taylor
[WWW]
grose

journeyman

Joined: 08/04/2006 07:58:08
Messages: 17
Location: Terracotta, Inc.
Offline

Ulsa,

As you've seen, there's a known "bug" related to having the "wrong" tc.jar, which must be consistent across Terracotta components. Re-install ing Terracotta for Spring in your case should solve this and did.

Regards,

Gordon

Gordon Rose
Sr. Systems Engineer
Terracotta, Inc.
ulsa

neo

Joined: 10/19/2006 10:28:07
Messages: 3
Offline

I have more information regarding the installation problems. Here goes:

It seems Terracotta Sessions is the cause of the Terracotta Spring problems that I described above. A re-installation of Terracotta Spring will make Terracotta Spring run properly, but then Terracotta Sessions stops working. It simply doesn't start. I don't know the reason for this.

Uninstalling Terracotta Sessions seems to remove some files from the vendor directory that Terracotta Spring needs. So, my impression is that uninstalling Terracotta Sessions corrupts a previously working Terracotta Spring.

After re-installing Terracotta Sessions, it is possible to start, but of course it has then corrupted the Terracotta Spring installation again.

The solution I found was to install Terracotta Sessions in another location than Terracotta DSO and Terracotta Spring. It then uses its own common, vendor and jre. I can run Terracotta Spring as well as DSO, and I can start Terracotta Sessions.

Ulrik Sandberg (http://www.jayway.se)
Spring-LDAP project member
tgautier

seraphim

Joined: 06/05/2006 12:19:26
Messages: 1781
Offline

Ulsa,

Thanks for the update. In fact what you describe is exactly the bug - the installers all try to install Terracotta into the same directory and unfortunately some important files get overwritten.

Basically what it means is that the last product you install will function correctly, so if you need more than one product the current workaround is to install the products into a different location - just as you discovered.

This problem will be fixed in our next release - we apologize for any inconvenience in the meantime.

Taylor
[WWW]
 
Forum Index -> Terracotta for Spring
Go to:   
Powered by JForum 2.1.7 © JForum Team