Resource Not Found Exception - Seam and RichFaces
rdc2001 Dec 23, 2008 2:31 AMHello,
I've run into some trouble using RichFaces with my Seam application. The components I attempt to use, such as the Calendar component, don't work- because the browser is unable to retrieve the java script files. The tomcat log files contain Resource Not Registered
exceptions (below). The problem appears to be related to Java 6 Update 10. I am able to reproduce it both on my Linux box and Windows box running 6u10. On the Mac running Java 5 the controls work fine. I cannot definitely say it is 6u10 as it could be random and due to dependency ordering. A standalone RichFaces/JSF application works fine on Java 6 Update 10 which leads me to believe it is some combination of Seam, Rich Faces, and 6u10.
I did see the earlier posts which recommended resetting the browser cache - that did not work and I tried connecting to the application from two different Macs (Safari) as well as Explorer and Firefox without restarting the web app.
I am guessing that the list of registered resources is constructed resources-config.xml in the meta-inf directory. I noticed that the RichFaces had two different copies of these files located in the impl and UI jars respectively. Seam also had a resources-config.xml file in its meta-inf directory except it was empty. How is the list of resources being constructed - are all of the resources-config.xml files loaded into a central resource 'manager' or are there separate resource managers?
I am using RichFaces 3.2.2.SR1 and Seam 2.1.0.CR1.
Has anyone else run into this problem and solved it?
Thanks,
-Ryan
SEVERE: Servlet.service() for servlet Faces Servlet threw exception
org.ajax4jsf.resource.ResourceNotFoundException: Resource not registered : org/richfaces/renderkit/html/scripts/skinning.js.seam
at org.ajax4jsf.resource.ResourceBuilderImpl.getResource(ResourceBuilderImpl.java:397)
at org.ajax4jsf.resource.ResourceBuilderImpl.getResourceForKey(ResourceBuilderImpl.java:341)
at org.ajax4jsf.resource.InternetResourceService.serviceResource(InternetResourceService.java:152)
at org.ajax4jsf.resource.InternetResourceService.serviceResource(InternetResourceService.java:141)
at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:500)
at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:164)
at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:141)
at org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:90)
at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:417)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)