Details
-
Bug
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
5.0
-
None
-
Mac OS X, JBoss 4.0.5
Description
I've hit the same problem had the same problem with Tapestry 5 in
JBoss 4.0.5. When I put the
Tapestry jars in the deployed file I get the stack trace below. It
shows that tapestry ioc is loaded up but
for some reason the class loader can't find org/apache/tapestry/
services/ApplicationGlobals.
I had tapestry-ioc.jar and tapestry-core.jar in an exploded WAR's WEB-
INF/lib/, inside an exploded EAR
file.
13:34:00,549 INFO [TomcatDeployer] deploy, ctxPath=/jumpstart5-min,
warUrl=file:/blah/blah/
jumpstart5-min/exploded/jumpstart5-min.ear/jumpstart5-min.war/
13:34:01,509 ERROR [[/jumpstart5-min]] Exception starting filter app
java.lang.RuntimeException: Error invoking service builder method
org.apache.tapestry.services.TapestryModule.buildInfrastructure(Log,
Collection) (for service
'tapestry.Infrastructure'): Error invoking service contribution method
org.apache.tapestry.services.TapestryModule.contributeInfrastructure
(Configuration, ServiceLocator,
TypeCoercer, PropertyAccess): Error building service proxy for
service 'tapestry.ApplicationGlobals' (at
org.apache.tapestry.services.TapestryModule.buildApplicationGlobals
()): Unable to create class
$ApplicationGlobals_110d2b2dad0: by java.lang.NoClassDefFoundError:
org/apache/tapestry/services/
ApplicationGlobals
at
org.apache.tapestry.ioc.internal.ServiceBuilderMethodInvoker.createObjec
t
(ServiceBuilderMethodInvoker.java:263)
at
org.apache.tapestry.ioc.internal.SingletonServiceLifecycle.createService
(SingletonServiceLifecycle.java:31)
at
org.apache.tapestry.ioc.internal.LifecycleWrappedServiceCreator.createOb
ject
(LifecycleWrappedServiceCreator.java:50)
at
org.apache.tapestry.ioc.internal.InterceptorStackBuilder.createObject
(InterceptorStackBuilder.java:55)
at
org.apache.tapestry.ioc.internal.OneShotServiceCreator.createObject
(OneShotServiceCreator.java:56)
at $Infrastructure_110d2b2dacd._delegate
($Infrastructure_110d2b2dacd.java)
at $Infrastructure_110d2b2dacd.setMode
($Infrastructure_110d2b2dacd.java)
at
org.apache.tapestry.internal.TapestryAppInitializer.setupServices
(TapestryAppInitializer.java:
118)
at org.apache.tapestry.internal.TapestryAppInitializer.<init>
(TapestryAppInitializer.java:69)
at org.apache.tapestry.internal.TapestryAppInitializer.<init>
(TapestryAppInitializer.java:56)
at org.apache.tapestry.TapestryFilter.init
(TapestryFilter.java:70)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter
(ApplicationFilterConfig.java:223)
at
org.apache.catalina.core.ApplicationFilterConfig.setFilterDef
(ApplicationFilterConfig.java:304)
at org.apache.catalina.core.ApplicationFilterConfig.<init>
(ApplicationFilterConfig.java:77)
at org.apache.catalina.core.StandardContext.filterStart
(StandardContext.java:3634)
at org.apache.catalina.core.StandardContext.start
(StandardContext.java:4217)
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 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.apache.commons.modeler.BaseModelMBean.invoke
(BaseModelMBean.java:503)
at org.jboss.mx.server.RawDynamicInvoker.invoke
(RawDynamicInvoker.java:164)
at org.jboss.mx.server.MBeanServerImpl.invoke
(MBeanServerImpl.java:659)
at org.apache.catalina.core.StandardContext.init
(StandardContext.java:5052)
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.apache.commons.modeler.BaseModelMBean.invoke
(BaseModelMBean.java:503)
at org.jboss.mx.server.RawDynamicInvoker.invoke
(RawDynamicInvoker.java:164)
at org.jboss.mx.server.MBeanServerImpl.invoke
(MBeanServerImpl.java:659)
at
org.jboss.web.tomcat.tc5.TomcatDeployer.performDeployInternal
(TomcatDeployer.java:297)
at org.jboss.web.tomcat.tc5.TomcatDeployer.performDeploy
(TomcatDeployer.java:103)
at org.jboss.web.AbstractWebDeployer.start
(AbstractWebDeployer.java:371)
at org.jboss.web.WebModule.startModule(WebModule.java:83)
at org.jboss.web.WebModule.startService(WebModule.java:61)
at org.jboss.system.ServiceMBeanSupport.jbossInternalStart
(ServiceMBeanSupport.java:289)
at
org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle
(ServiceMBeanSupport.java:245)
at sun.reflect.GeneratedMethodAccessor3.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.system.ServiceController$ServiceProxy.invoke
(ServiceController.java:978)
at $Proxy0.start(Unknown Source)
at org.jboss.system.ServiceController.start
(ServiceController.java:417)
at sun.reflect.GeneratedMethodAccessor5.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 $Proxy38.start(Unknown Source)
at org.jboss.web.AbstractWebContainer.start
(AbstractWebContainer.java:466)
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.ws.integration.jboss.DeployerInterceptor.start
(DeployerInterceptor.java:92)
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 $Proxy39.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.GeneratedMethodAccessor13.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 $Proxy6.deploy(Unknown Source)
at org.jboss.deployment.scanner.URLDeploymentScanner.deploy
(URLDeploymentScanner.java:421)
at org.jboss.deployment.scanner.URLDeploymentScanner.scan
(URLDeploymentScanner.java:634)
at org.jboss.deployment.scanner.AbstractDeploymentScanner
$ScannerThread.doScan
(AbstractDeploymentScanner.java:263)
at
org.jboss.deployment.scanner.AbstractDeploymentScanner.startService
(AbstractDeploymentScanner.java:336)
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.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.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:
210)
at $Proxy4.start(Unknown Source)
at org.jboss.deployment.SARDeployer.start(SARDeployer.java:302)
at org.jboss.deployment.MainDeployer.start(MainDeployer.java:
1025)
at org.jboss.deployment.MainDeployer.deploy
(MainDeployer.java:819)
at org.jboss.deployment.MainDeployer.deploy
(MainDeployer.java:782)
at org.jboss.deployment.MainDeployer.deploy
(MainDeployer.java:766)
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.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 $Proxy5.deploy(Unknown Source)
at org.jboss.system.server.ServerImpl.doStart
(ServerImpl.java:482)
at org.jboss.system.server.ServerImpl.start(ServerImpl.java:
362)
at org.jboss.Main.boot(Main.java:200)
at org.jboss.Main$1.run(Main.java:490)
at java.lang.Thread.run(Thread.java:613)
Caused by: java.lang.RuntimeException: Error invoking service
contribution method
org.apache.tapestry.services.TapestryModule.contributeInfrastructure
(Configuration, ServiceLocator,
TypeCoercer, PropertyAccess): Error building service proxy for
service 'tapestry.ApplicationGlobals' (at
org.apache.tapestry.services.TapestryModule.buildApplicationGlobals
()): Unable to create class
$ApplicationGlobals_110d2b2dad0: by java.lang.NoClassDefFoundError:
org/apache/tapestry/services/
ApplicationGlobals
at
org.apache.tapestry.ioc.internal.ContributionDefImpl.invokeMethod
(ContributionDefImpl.java:
111)
at
org.apache.tapestry.ioc.internal.ContributionDefImpl.contribute
(ContributionDefImpl.java:60)
at
org.apache.tapestry.ioc.internal.RegistryImpl.addToUnorderedConfiguratio
n(RegistryImpl.java:
405)
at
org.apache.tapestry.ioc.internal.RegistryImpl.getUnorderedConfiguration(
RegistryImpl.java:292)
at
org.apache.tapestry.ioc.internal.ServiceResourcesImpl.getUnorderedConfig
uration
(ServiceResourcesImpl.java:66)
at
org.apache.tapestry.ioc.internal.ServiceBuilderMethodInvoker.addUnordere
dConfigurationParameter
(ServiceBuilderMethodInvoker.java:152)
at
org.apache.tapestry.ioc.internal.ServiceBuilderMethodInvoker.getParamete
rDefaultsWithConfigurations
(ServiceBuilderMethodInvoker.java:114)
at
org.apache.tapestry.ioc.internal.ServiceBuilderMethodInvoker.createObjec
t
(ServiceBuilderMethodInvoker.java:243)
... 151 more
Caused by: java.lang.RuntimeException: Error building service proxy
for service
'tapestry.ApplicationGlobals' (at
org.apache.tapestry.services.TapestryModule.buildApplicationGlobals
()): Unable to create class $ApplicationGlobals_110d2b2dad0: by
java.lang.NoClassDefFoundError: org/
apache/tapestry/services/ApplicationGlobals
at org.apache.tapestry.ioc.internal.ModuleImpl.create
(ModuleImpl.java:244)
at org.apache.tapestry.ioc.internal.ModuleImpl.findOrCreate
(ModuleImpl.java:176)
at org.apache.tapestry.ioc.internal.ModuleImpl.getService
(ModuleImpl.java:96)
at org.apache.tapestry.ioc.internal.RegistryImpl.getService
(RegistryImpl.java:210)
at
org.apache.tapestry.ioc.internal.ServiceLocatorImpl.getService
(ServiceLocatorImpl.java:41)
at org.apache.tapestry.services.TapestryModule.add
(TapestryModule.java:256)
at
org.apache.tapestry.services.TapestryModule.contributeInfrastructure
(TapestryModule.java:479)
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.apache.tapestry.ioc.internal.ContributionDefImpl.invokeMethod
(ContributionDefImpl.java:
99)
... 158 more
Caused by: java.lang.RuntimeException: Unable to create class
$ApplicationGlobals_110d2b2dad0: by
java.lang.NoClassDefFoundError: org/apache/tapestry/services/
ApplicationGlobals
at
org.apache.tapestry.ioc.internal.services.CtClassSource.createClass
(CtClassSource.java:92)
at
org.apache.tapestry.ioc.internal.services.AbstractFab.createClass
(AbstractFab.java:111)
at
org.apache.tapestry.ioc.internal.ModuleImpl.createProxyClass
(ModuleImpl.java:398)
at
org.apache.tapestry.ioc.internal.ModuleImpl.createProxyInstance
(ModuleImpl.java:355)
at org.apache.tapestry.ioc.internal.ModuleImpl.createProxy
(ModuleImpl.java:340)
at org.apache.tapestry.ioc.internal.ModuleImpl.create
(ModuleImpl.java:236)
... 169 more
Caused by: javassist.CannotCompileException: by
java.lang.NoClassDefFoundError: org/apache/
tapestry/services/ApplicationGlobals
at javassist.ClassPool.toClass(ClassPool.java:813)
at javassist.CtClass.toClass(CtClass.java:1011)
at
org.apache.tapestry.ioc.internal.services.ClassFactoryClassPool.toClass
(ClassFactoryClassPool.java:98)
at
org.apache.tapestry.ioc.internal.services.CtClassSource.createClass
(CtClassSource.java:84)
... 174 more
Caused by: java.lang.NoClassDefFoundError: org/apache/tapestry/
services/ApplicationGlobals
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.lang.ClassLoader.defineClass(ClassLoader.java:465)
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 javassist.ClassPool.toClass(ClassPool.java:805)
... 177 more
Yes, javassist is the culprit for that part of the problem. Exchanging
the one that comes with jboss with a newer one ( javassist-3.3.ga.jar
) gets me a little bit further.
But then I get this:
java.lang.RuntimeException: Error invoking service builder method
org.apache.tapestry.services.TapestryModule.buildInfrastructure(Log,
Collection) (for service 'tapestry.Infrastructure'): Error invoking
service contribution method
org.apache.tapestry.services.TapestryModule.contributeInfrastructure(Configuration,
ServiceLocator, TypeCoercer, PropertyAccess): Error building service
proxy for service 'tapestry.ApplicationStateManager' (at
org.apache.tapestry.services.TapestryModule.buildApplicationStateManager(Map,
ApplicationStatePersistenceStrategySource)): Unable to lookup class
org.apache.tapestry.services.ApplicationStateManager:
org.apache.tapestry.services.ApplicationStateManager
at org.apache.tapestry.ioc.internal.ServiceBuilderMethodInvoker.createObject(ServiceBuilderMethodInvoker.java:263)
which is I get when the tapestry jars are inside the war file. I can
dump them in the jboss lib to solve it (but I'm not allowed on my
webhotel), or change the jboss configuration, by setting this line
<attribute name="UseJBossWebLoader">true</attribute>
in deploy/jbossweb-tomcat55.sar/META-INF/jboss-service.xml
That will allow it to actually deploy the war file without errors.
However, there's still a big problem to which I've found no solution,
and that is when actually trying to see a page, I get this error:
java.lang.RuntimeException: java.io.FileNotFoundException:
/usr/local/jboss/server/default/tmp/deploy/tmp29557provis-exp.war/WEB-INF/classes/com/ec/tapfive/pages
(No such file or directory)
org.apache.tapestry.internal.services.ComponentClassLocatorImpl.locateComponentClassNames(ComponentClassLocatorImpl.java:63)
org.apache.tapestry.internal.services.ComponentClassResolverImpl.fillNameToClassNameMap(ComponentClassResolverImpl.java:156)
org.apache.tapestry.internal.services.ComponentClassResolverImpl.rebuild(ComponentClassResolverImpl.java:141)
org.apache.tapestry.internal.services.ComponentClassResolverImpl.rebuild(ComponentClassResolverImpl.java:124)
org.apache.tapestry.internal.services.ComponentClassResolverImpl.locate(ComponentClassResolverImpl.java:236)
org.apache.tapestry.internal.services.ComponentClassResolverImpl.resolvePageNameToClassName(ComponentClassResolverImpl.java:176)
......
This stacktrace is on osx - on windows it actually also says
(permission denied) with the FileNotFoundException.