[Logo] RSF Discussions Forum
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 
Number of things required to make a RSF app a Sakai App  XML
Forum Index -> RSF Help and Problems
Author Message
stevegithens
Request-scope Wrangler

Joined: 04/04/2006 20:34:52
Messages: 84
Location: ooeepooee
Offline

Hello,

I can't seem to get any of the Sakai Example Apps to show up in the registered tools. For example, I can build and install I-SakaiRSFNumberGuess, and access the plain version via http://localhost:8080/SakaiRSFNumberGuess/faces/, but it doesn't show up in the registered tools.

I've examined catalina.out, and it makes no mention of registering tools from sakai.rsfdemo.xml. The only output that immediately seems tied to RSF is:

Apr 5, 2006 7:19:42 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive web.war
37.983: [GC 37.983: [DefNew: 35419K->4032K(36288K), 0.0342403 secs] 93588K->65562K(520256K), 0.0342859 secs]
39.056: [GC 39.057: [DefNew: 36287K->3460K(36288K), 0.0386063 secs] 97818K->68946K(520256K), 0.0386523 secs]
39.418: [Full GC 39.418: [Tenured: 65486K->69358K(483968K), 0.4279584 secs] 82625K->69358K(520256K), 0.4280037 secs]
[0] new thread Thread[main,5,main] detected by Logger with name main
[0] MethodAnalyser found 1 setattr methods for class uk.org.ponder.saxalizer.mapping.SAXalizerMapperEntry
[0] MethodAnalyser found 3 setattr methods for class uk.org.ponder.saxalizer.SAXAccessMethodSpec
2006-04-05 19:19:46,142 INFO (XMLViewResolver.java:142) - <Loading view template from /WEB-INF/producers/showFourDigitAnswer.xml>
2006-04-05 19:19:46,163 INFO (XMLViewResolver.java:142) - <Loading view template from /WEB-INF/producers/enterGuess.xml>
2006-04-05 19:19:46,170 INFO (XMLViewResolver.java:142) - <Loading view template from /WEB-INF/producers/enterFourDigitGuess.xml>
2006-04-05 19:19:46,178 INFO (XMLViewResolver.java:142) - <Loading view template from /WEB-INF/producers/index.xml>
2006-04-05 19:19:46,182 INFO (XMLViewResolver.java:142) - <Loading view template from /WEB-INF/producers/showAnswer.xml>
2006-04-05 19:19:46,260 INFO (EntityResolverStash.java:59) - <Resolved -//SPRING//DTD WEBFLOW//EN to classpath:/dtd/spring-webflow.dtd>
2006-04-05 19:19:46,270 INFO (EntityResolverStash.java:59) - <Resolved -//SPRING//DTD WEBFLOW//EN to classpath:/dtd/spring-webflow.dtd>
40.875: [GC 40.875: [DefNew: 32255K->2019K(36288K), 0.0227409 secs] 101614K->71377K(520256K), 0.0227859 secs]
Apr 5, 2006 7:19:47 PM org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
Apr 5, 2006 7:19:47 PM org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
Apr 5, 2006 7:19:47 PM org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/24 config=null
41.443: [GC 41.443: [DefNew: 34274K->2227K(36288K), 0.0262508 secs] 103633K->73521K(520256K), 0.0262974 secs]
Apr 5, 2006 7:19:47 PM org.apache.catalina.storeconfig.StoreLoader load
INFO: Find registry server-registry.xml at classpath resource
Apr 5, 2006 7:19:47 PM org.apache.catalina.startup.Catalina start


One other interesting thing. When I do run the plain version from the url (not as a registered sakai tool) it throws this error (though the game does work fine):



WARN: org.sakaiproject.component.legacy.authzGroup.DbAuthzGroupService$DbStorage@6975f3.iallowed(): called with no realms l:content.readu: (2006-04-05 19:20:17,394 http-8080-Processor24_org.sakaiproject.component.framework.log.CommonsLogger)
2006-04-05 19:22:04,414 INFO (ServletEarlyRequestParser.java:2 - <begin parseRequest>
2006-04-05 19:22:04,443 INFO (BasicViewParametersParser.java:99) - <Restoring view from request parameters />
2006-04-05 19:22:04,473 INFO (BasicTemplateResolver.java:56) - <Trying to load view template from path /content/templates/.html>
2006-04-05 19:22:04,483 WARN (RenderHandlerBracketer.java:84) - <Exception rendering view: >
Target class java.io.FileNotFoundException
Error setting dependency viewRender of bean RSFRenderHandler
Error setting dependency renderSystem of bean viewrender
Error setting dependency staticRenderers of bean rendersystem
Error setting dependency staticRenderers of bean staticrenderers
Error setting dependency viewTemplate of bean urlrewritescr
Cannot load template file from path /content/templates/.html
Could not open ServletContext resource [/content/templates/.html]
java.io.FileNotFoundException: Could not open ServletContext resource [/content/templates/.html]
at org.springframework.web.context.support.ServletContextResource.getInputStream(ServletContextResource.java:99)
at uk.org.ponder.rsf.templateresolver.BasicTemplateResolver.tryLoadTemplate(BasicTemplateResolver.java:59)
at uk.org.ponder.rsf.templateresolver.BasicTemplateResolver.locateTemplate(BasicTemplateResolver.java:81)
at uk.org.ponder.rsf.templateresolver.TemplateLoaderBean.getObject(TemplateLoaderBean.java:31)
at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:413)
at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:263)
at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:280)
at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:359)
at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:263)
at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:280)
at uk.org.ponder.rsac.RSACBeanLocator.assembleVectorProperty(RSACBeanLocator.java:302)
at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:379)
at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:263)
at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:280)
at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:359)
at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:263)
at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:280)
at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:359)
at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:263)
at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:280)
at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:359)
at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:263)
at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:280)
at uk.org.ponder.rsac.RSACLazyTargetSource.getTarget(RSACLazyTargetSource.java:45)
at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.getTarget(Cglib2AopProxy.java:669)
at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:620)
at uk.org.ponder.rsf.processor.RSFRenderHandler$$EnhancerByCGLIB$$5f344e1b.handle(<generated>)
at uk.org.ponder.rsf.processor.RenderHandlerBracketer.handle(RenderHandlerBracketer.java:64)
at uk.org.ponder.rsf.processor.RenderHandlerBracketer$$FastClassByCGLIB$$2fdfc810.invoke(<generated>)
at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:635)
at uk.org.ponder.rsf.processor.RenderHandlerBracketer$$EnhancerByCGLIB$$8a2d2a71.handle(<generated>)
at uk.org.ponder.rsf.servlet.RootHandlerBean.handleGet(RootHandlerBean.java:96)
at uk.org.ponder.rsf.servlet.RootHandlerBean.handle(RootHandlerBean.java:7
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:324)
at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:27)
at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:21)
at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:81)
at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:397)
at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:263)
at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:280)
at uk.org.ponder.rsac.PerRequestInfo$1.locateBean(PerRequestInfo.java:46)
at uk.org.ponder.rsf.servlet.ReasonableServlet.service(ReasonableServlet.java:32)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at uk.org.ponder.rsac.servlet.RSACFilter.doFilter(RSACFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:17
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:14
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:552)
2006-04-05 19:22:04,487 WARN (RenderHandlerBracketer.java:8 - <Got target exception of class java.io.FileNotFoundException>
2006-04-05 19:22:04,490 INFO (BasicViewParametersParser.java:99) - <Restoring view index from request parameters /index>
2006-04-05 19:22:04,499 WARN (RenderHandlerBracketer.java:105) - <Error creating view tree - token wY0u6r9TRQo_TaIaAhz_xOjf>
2006-04-05 19:22:04,505 INFO (RootHandlerBean.java:130) - <Redirecting to http://localhost:8080/SakaiRSFNumberGuess/faces/index?errortoken=wY0u6r9TRQo_TaIaAhz_xOjf&errorredirect=1>
2006-04-05 19:22:04,517 INFO (ServletEarlyRequestParser.java:2 - <begin parseRequest>
2006-04-05 19:22:04,521 INFO (BasicViewParametersParser.java:99) - <Restoring view index from request parameters /index?errortoken=wY0u6r9TRQo_TaIaAhz_xOjf&errorredirect=1>
2006-04-05 19:22:04,524 INFO (BasicTemplateResolver.java:56) - <Trying to load view template from path /content/templates/index.html>
2006-04-05 19:22:04,561 WARN (MessageTargetter.java:83) - <Warning: Message GeneralShowError queued for nonexistent component ID No specific target>
2006-04-05 19:22:04,564 INFO (URLRewriter.java:33) - <getResourceURL returning http://localhost:8080/SakaiRSFNumberGuess/content/templates/../style.css for path ../style.css>
2006-04-05 19:22:04,566 INFO (URLUtil.java:1 - <Action link requires extra parameters from errortoken=wY0u6r9TRQo_TaIaAhz_xOjf>
2006-04-05 19:22:04,568 INFO (URLUtil.java:2 - <Added extra parameter key errortoken value wY0u6r9TRQo_TaIaAhz_xOjf to command link>
2006-04-05 19:22:07,333 INFO (ServletEarlyRequestParser.java:2 - <begin parseRequest>
2006-04-05 19:22:07,336 INFO (RenderUtil.java:84) - <Unpacked command link key Submitting control value startNumberGuess>
2006-04-05 19:22:07,338 INFO (RenderUtil.java:84) - <Unpacked command link key Fast track action value numberGuessFlow.flow-start>
2006-04-05 19:22:07,340 INFO (PostDecoder.java:65) - <PostInit: key errortoken value wY0u6r9TRQo_TaIaAhz_xOjf>
2006-04-05 19:22:07,343 INFO (PostDecoder.java:65) - <PostInit: key Fast track action value numberGuessFlow.flow-start>
2006-04-05 19:22:07,344 INFO (PostDecoder.java:65) - <PostInit: key Submitting control value startNumberGuess>
2006-04-05 19:22:07,349 INFO (BasicViewParametersParser.java:99) - <Restoring view index from request parameters /index?errortoken=wY0u6r9TRQo_TaIaAhz_xOjf>
2006-04-05 19:22:07,350 WARN (ErrorStateManager.java:65) - <Client requested error state wY0u6r9TRQo_TaIaAhz_xOjf which has expired from the cache>
2006-04-05 19:22:07,370 INFO (EntityResolverStash.java:59) - <Resolved -//SPRING//DTD WEBFLOW//EN to classpath:/dtd/spring-webflow.dtd>
2006-04-05 19:22:07,376 INFO (BeanCopyPreservationStrategy.java:77) - <BeanCopy saved 0 beans to token defaultBeanCopyPreserverxloP7wdlwLj9Sh_fYl_crW9c>
2006-04-05 19:22:07,379 INFO (BeanCopyPreservationStrategy.java:72) - <BeanCopy preserved to path flowLite-flowIDHolder: Flow ID numberGuess flowStateID enterGuess flowtoken xloP7wdlwLj9Sh_fYl_crW9c requestFlowStateID enterGuess>
2006-04-05 19:22:07,381 INFO (BeanCopyPreservationStrategy.java:77) - <BeanCopy saved 1 beans to token flowScopeFlowStatePreserverxloP7wdlwLj9Sh_fYl_crW9c>
2006-04-05 19:22:07,382 INFO (RootHandlerBean.java:130) - <Redirecting to http://localhost:8080/SakaiRSFNumberGuess/faces/enterGuess?flowtoken=xloP7wdlwLj9Sh_fYl_crW9c&flowstateid=enterGuess>
2006-04-05 19:22:07,397 INFO (ServletEarlyRequestParser.java:2 - <begin parseRequest>
2006-04-05 19:22:07,399 INFO (BasicViewParametersParser.java:99) - <Restoring view enterGuess from request parameters /enterGuess?flowtoken=xloP7wdlwLj9Sh_fYl_crW9c>
2006-04-05 19:22:07,401 INFO (BasicTemplateResolver.java:56) - <Trying to load view template from path /content/templates/enterGuess.html>
2006-04-05 19:22:07,409 INFO (BeanCopyPreservationStrategy.java:82) - <BeanCopy looking for state token defaultBeanCopyPreserverxloP7wdlwLj9Sh_fYl_crW9c>
2006-04-05 19:22:07,410 INFO (BeanCopyPreservationStrategy.java:82) - <BeanCopy looking for state token flowScopeFlowStatePreserverxloP7wdlwLj9Sh_fYl_crW9c>
2006-04-05 19:22:07,417 INFO (URLRewriter.java:33) - <getResourceURL returning http://localhost:8080/SakaiRSFNumberGuess/content/templates/../style.css for path ../style.css>
2006-04-05 19:22:07,417 INFO (URLRewriter.java:33) - <getResourceURL returning http://localhost:8080/SakaiRSFNumberGuess/content/templates/../images/spring-logo.jpg for path ../images/spring-logo.jpg>
2006-04-05 19:22:07,418 INFO (URLRewriter.java:33) - <getResourceURL returning http://localhost:8080/SakaiRSFNumberGuess/content/templates/../images/rsf-logo-small.png for path ../images/rsf-logo-small.png>
2006-04-05 19:22:07,419 INFO (URLUtil.java:1 - <Action link requires extra parameters from flowtoken=xloP7wdlwLj9Sh_fYl_crW9c>
2006-04-05 19:22:07,419 INFO (URLUtil.java:2 - <Added extra parameter key flowtoken value xloP7wdlwLj9Sh_fYl_crW9c to command link>
[WWW]
antranig
Request-scope Wrangler

Joined: 03/04/2006 13:29:55
Messages: 643
Offline

Hi - it's possible I don't have all the packaging necessary to create a fully "registered" tool which I believe needs to be assigned to some kind of category, for example. You should find however the tool shows up in the Admin interface inside "Sites". The route I take is Sites -> (choose your site) ->Pages -> (choose your page) -> Tools -> New Tool - you should see the demo app available from the menu there.

If you can give me any pointers how to package the tool better for Sakai, gratefully received

The other exception you are seeing is perfectly normal - the initial URL with no path is considered "bad" and triggers a redirect onto the default view which the index page - the critical line in all the mess is

2006-04-05 19:22:04,505 INFO (RootHandlerBean.java:130) - <Redirecting to http://localhost:8080/SakaiRSFNumberGuess/faces/index?errortoken=wY0u6r9TRQo_TaIaAhz_xOjf&errorredirect=1>

This redirect happens for any kind of unexpected exception during a render cycle (called a "Level 1" Fault). If a further exception occurs in the default view, you will receive an error page.

You define a view as being the default view by either implementing "DefaultView" in its view producer or setting the "defaultview" field of the view tree.

OK, that's probably more than you wanted to know for now

Hope this helps,
Antranig.
stevegithens
Request-scope Wrangler

Joined: 04/04/2006 20:34:52
Messages: 84
Location: ooeepooee
Offline

It's definately not showing up in the admin sites. The odd thing is, every sakai tool registration file seems to get an INFO line in catalina.out during startup, but there is no mention of the sakai.rsfdemo.xml.

Sakai Tool Registration has always been one of those simple things that always worked for me, regardless of what kind of servlet it was (JSF, Jython, Plain old servlet).

I've tried fiddling with some properties in web.xml but still no luck. I will keep poking around. And since the wiki says it should be possible to browse the RSF code in an afternoon, it may be a good chance to go code splunking.

( The wiki documentation is great too, I'm real excited about RSF! thx)
[WWW]
antranig
Request-scope Wrangler

Joined: 03/04/2006 13:29:55
Messages: 643
Offline

OK, that does sound extremely strange - and as you say, since it usually works for everything, perhaps there's something more basic wrong? This probably sounds stupid, but did you check the build has actually deployed to the right webapps directory?
Again if you're getting stuck, please zip up and mail me your deployed webapp and I will see if I can figure out what has gone wrong with it.

Cheers,
Antranig.
antranig
Request-scope Wrangler

Joined: 03/04/2006 13:29:55
Messages: 643
Offline

Ignore that idiotic suggestion, I see from your first log that the app does appear to be deployed correctly, and those messages look exactly like normal startup for the app's web context. I would have expected plenty of noise if something were wrong with that - so the only possible thing missing might be that sakai.rsfdemo.xml hasn't been deployed for some reason?

What build procedure did you use exactly to build/deploy with?
stevegithens
Request-scope Wrangler

Joined: 04/04/2006 20:34:52
Messages: 84
Location: ooeepooee
Offline

Okey doke, got it working!

2 Things:

1. For some reason it was deploying the web.xml from I-RSFNumberGuess instead of I-SakaiRSFNumberGuess.

To build I-SakaiRSFNumberGuess I've been using:

maven full
rm -R $tomcat/webapps/rsf-numberguess

and now, I've copied the I-RSFNumberGuess/src/webapp/WEB-INF/web.xml to the deployed SakaiRSFNumberGuess. So, it wasn't finding the registration, being there wasn't a Sakai Listener hooked up.

2. After that though, the comment in the attributes of the sakai.rsfdemo.xml file, (Where the url attribute is commented out), was
tripping up the XML parser. After removing the comment, I was able to add the tool to a Sakai site and run it. Awesome!

[WWW]
antranig
Request-scope Wrangler

Joined: 03/04/2006 13:29:55
Messages: 643
Offline

Cool - glad you got it working!

I'm very concerned though that the build hasn't worked right. Could this be a file permissions problem? Maven is often extremely irritating in that if any file operations fail they fail silently. You may have seen that the build procedure for I-SakaiRSFNumberGuess is slightly odd
https://saffron.caret.cam.ac.uk/svn/projects/SakaiRSFNumberGuess/tags/RSF-0.6/maven.xml

in that it
i) invokes war build for RSFNumberGuess
ii) explodes war into its own area
iii) deploys its own artifacts on TOP of exploded image (in particular this should OVERWRITE the old web.xml)
iv) deletes "harmful" jars such as Spring and cglib &c which must not be deployed into a Sakai container
v) finally redeploys the "patched" image.

I did this this way because I wanted to try to exploit the fact that these apps are really the "same" app, with the exception of xml config and deployed Jars, but I think I am stressing the limits of build technology too far with this approach.

If you look at the HibernateCookbook example, you will see a much more straightforward (one-step) build that should not show this problem you are seeing. The downside (certainly for me) is that I have had to FORK the code within this project from the standalone app. I guess the only sensible way round this is to make the standalone app into 2 projects rather than 1 - one that builds an app jar and the other that corresponds to the deploy artifact, but I'm not sure non-Sakai users of RSF would get on with this.

Any ideas you've got about this welcomed, but also it would be great to get to the bottom of why this build isn't working for you. Which version of maven are you using? You're issuing the full build from the Sakai app dir, right? I'm puzzled that you issue the rm -R command, are you getting the "plain" version of the app deployed to tomcat by the build by mistake?

A key variable in the build seems to be ${maven.war.webapp.dir}, is there any chance you've got this set to some strange value?

(Unfortunately I didn't write this build script and our Maven expert Andy is off sick at the moment - if we get lost we may well have to wait for him)

Cheers,
Antranig.

PS, reading the XML spec I see that comments within a start tag are indeed illegal, I'll make sure this is removed for the 0.6.1 release.
stevegithens
Request-scope Wrangler

Joined: 04/04/2006 20:34:52
Messages: 84
Location: ooeepooee
Offline

I don't think there should be any file permission problems, as I'm doing everything myself and there's no sudo'ing going on.

I've learned quite a bit about maven from this. I wonder if you could just create a shell/python/maven script to merge projects, so you don't have to fork everything or resort to esoteric maven functionality.

Anyways, I'm now trying to make my own non-hibernate tool by merging the Sakai and non-Sakai Number Guessing projects together. (Essentially copied all the extra stuff (producers, flows, xml files) to the Sakai one). I am getting the following error during startup now. Any ideas?

Thanks,
Steve

ERROR: Exception sending context initialized event to listener instance of class org.sakaiproject.util.ContextLoaderListener (2006-04-06 00:01:51,544 main_org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/ChemTopics])
org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'messageSource' must be of type [org.springframework.context.MessageSource], but was actually of type [org.springframework.context.support.ReloadableResourceBundleMessageSource]
at org.springframework.beans.factory.support.AbstractBeanFactory.checkMergedBeanDefinition(AbstractBeanFactory.java:76
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:213)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:151)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:559)
at org.springframework.context.support.AbstractApplicationContext.initMessageSource(AbstractApplicationContext.java:419)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:30
at org.springframework.web.context.support.AbstractRefreshableWebApplicationContext.refresh(AbstractRefreshableWebApplicationContext.java:134)
at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:246)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:184)
at org.sakaiproject.component.kernel.component.ContextLoader.initWebApplicationContext(ContextLoader.java:71)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
at org.sakaiproject.util.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:5
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3669)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4104)
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.deployDirectory(HostConfig.java:894)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:857)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:475)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1102)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1020)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:71
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)
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:683)
at org.apache.catalina.startup.Catalina.start(Catalina.java:537)
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:324)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
Apr 6, 2006 12:01:51 AM org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
[WWW]
antranig
Request-scope Wrangler

Joined: 03/04/2006 13:29:55
Messages: 643
Offline

Yeah, you've managed to get the Spring jar into your webapp, always try to make sure not to do that with Sakai

Antranig.
stevegithens
Request-scope Wrangler

Joined: 04/04/2006 20:34:52
Messages: 84
Location: ooeepooee
Offline

Ooops, those pesky jars again.

After removing Spring, aopalliance, and cglib-nodep I've got it working. I guess I'll need to fix up my project.xml.

Thanks!
[WWW]
antranig
Request-scope Wrangler

Joined: 03/04/2006 13:29:55
Messages: 643
Offline

Good oh - in case you hadn't worked it out, you need to specify these in the project.xml without the tag
<war.bundle>true</war.bundle>
after them.
Actually you can do without all except the Spring jar there at all since that is the only compile-time dependency.
 
Forum Index -> RSF Help and Problems
Message Quick Reply
Go to:   
Powered by JForum 2.1.6 © JForum Team