Hi Carsten,
I still have problems with the sample app. I started with a clean
checkout of the trunk, build the standalone Sling with the full profile
and started sling standalone without problems.

Next I tried to deploy the sample app using the sling maven plugin. This
failed with the ResourceNotFoundException I mentioned previously. After
checking the repository I noticed that no content was loaded, but the
bundle was loaded as it was listed in the Sling console. I uninstalled
the bundle and tried installation again using the sling console. After
that initial content was available.

sling/SamplePage and sling/SampleContent scripts can be resolved now,
but if I access a page that uses these scripts I still get an empty
response (an no exception in the log). If I look into the repository the
JSPs are compiled. So I think the problem has nothing to do with the
ResourceNotFoundExceptions for SamplePage.class/SampleContent.class as
they are used in the scripts and without them compiling would probably fail.

The /org/apache/sling/sample/html.jsp script can not be found in the
repository after deployment of the bundle. This if I access a page that
uses this script, the DefaultServlet is resolved.

I tried to check this behaviour with the webapp distribution. But when I
deploy it I get exceptions that Felix framework classes can not be
found. Is it necessary to add Felix core JARs to the servlets container
classpath?

Regards,
Alex


Carsten Ziegeler schrieb:
> Hi,
>
> I fixed some problems with the location of the scripts and a bug in the
> servlet resolver. Some of the samples are now working for me.
>
> Can you please recheck and report what is not working for you (if any)?
>
> Thanks
> Carsten
>
> Alexander Saar wrote:
>   
>> Hello Sling team,
>> last days I started playing around with the latest Sling trunk. I
>> noticed that after the big changes that happened in the last weeks, the
>> sample application does not work anymore.
>>
>> After some debugging I noticed, that the script resolving looks under
>> different paths than the current sample app stores its scripts. So I
>> corrected the paths according to the locations the script resolver is
>> using. In my instance the scripts are now available at
>> /apps/sling/SampleContent, /apps/sling/SamplePage and
>> /apps/org/apache/sling/sample.
>>
>> Now the script resolver is able to find the right script, but there is
>> still no output returned for my request. The problem is probably that
>> during installation of the sample app the OCM mapping is not able to
>> find the SamplePage and SampleContent classes in the bundle, as
>> indicated by the exceptions I found in the error log (see stack trace
>> below).
>>
>>
>> 02.01.2008 12:44:54 *WARN * System Bundle:
>> org/apache/sling/sample/SamplePage.class
>> (org.apache.felix.moduleloader.ResourceNotFoundException:
>> org/apache/sling/sample/SamplePage.class)
>> org.apache.felix.moduleloader.ResourceNotFoundException:
>> org/apache/sling/sample/SamplePage.class
>>     at
>> org.apache.felix.framework.searchpolicy.R4SearchPolicyCore.findClassOrResource(R4SearchPolicyCore.java:426)
>>     at
>> org.apache.felix.framework.searchpolicy.R4SearchPolicyCore.findResource(R4SearchPolicyCore.java:206)
>>     at
>> org.apache.felix.framework.searchpolicy.R4SearchPolicy.findResource(R4SearchPolicy.java:51)
>>     at
>> org.apache.felix.moduleloader.ModuleImpl.getResource(ModuleImpl.java:168)
>>     at org.apache.felix.framework.Felix.getBundleResource(Felix.java:1334)
>>     at
>> org.apache.felix.framework.BundleImpl.getResource(BundleImpl.java:170)
>>     at
>> org.apache.sling.jcr.resource.internal.mapping.classloader.BundleLoader.loadClass(BundleLoader.java:43)
>>     at
>> org.apache.sling.jcr.resource.internal.mapping.classloader.MapperClassLoader.loadClass(MapperClassLoader.java:121)
>>     at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>>     at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
>>     at java.lang.Class.forName0(Native Method)
>>     at java.lang.Class.forName(Class.java:247)
>>     at
>> org.apache.jackrabbit.ocm.reflection.ReflectionUtils.forName(ReflectionUtils.java:162)
>>     at
>> org.apache.jackrabbit.ocm.mapper.model.ClassDescriptor.validateClassName(ClassDescriptor.java:395)
>>     at
>> org.apache.jackrabbit.ocm.mapper.model.ClassDescriptor.afterPropertiesSet(ClassDescriptor.java:387)
>>     at
>> org.apache.sling.jcr.resource.internal.mapping.ClassDescriptorReader.validateDescriptors(ClassDescriptorReader.java:515)
>>     at
>> org.apache.sling.jcr.resource.internal.mapping.ClassDescriptorReader.validateDescriptors(ClassDescriptorReader.java:517)
>>     at
>> org.apache.sling.jcr.resource.internal.mapping.ClassDescriptorReader.verify(ClassDescriptorReader.java:430)
>>     at
>> org.apache.sling.jcr.resource.internal.mapping.ClassDescriptorReader.getMappingDescriptor(ClassDescriptorReader.java:87)
>>     at
>> org.apache.sling.jcr.resource.internal.mapping.ObjectContentManagerFactory.loadMappings(ObjectContentManagerFactory.java:230)
>>     at
>> org.apache.sling.jcr.resource.internal.mapping.ObjectContentManagerFactory.addBundle(ObjectContentManagerFactory.java:171)
>>     at
>> org.apache.sling.jcr.resource.internal.mapping.ObjectContentManagerFactory.registerMapperClient(ObjectContentManagerFactory.java:147)
>>     at
>> org.apache.sling.jcr.resource.internal.JcrResourceResolverFactoryImpl.activate(JcrResourceResolverFactoryImpl.java:396)
>>     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:597)
>>     at
>> org.apache.felix.scr.impl.ImmediateComponentManager.createImplementationObject(ImmediateComponentManager.java:228)
>>     at
>> org.apache.felix.scr.impl.ImmediateComponentManager.createComponent(ImmediateComponentManager.java:134)
>>     at
>> org.apache.felix.scr.impl.AbstractComponentManager.activateInternal(AbstractComponentManager.java:412)
>>     at
>> org.apache.felix.scr.impl.AbstractComponentManager.access$100(AbstractComponentManager.java:45)
>>     at
>> org.apache.felix.scr.impl.AbstractComponentManager$2.run(AbstractComponentManager.java:121)
>>     at
>> org.apache.felix.scr.impl.ComponentActorThread.run(ComponentActorThread.java:85)
>> 02.01.2008 12:44:54 *WARN * System Bundle:
>> org/apache/sling/sample/SamplePage.class
>> (org.apache.felix.moduleloader.ResourceNotFoundException:
>> org/apache/sling/sample/SamplePage.class)
>> org.apache.felix.moduleloader.ResourceNotFoundException:
>> org/apache/sling/sample/SamplePage.class
>>     at
>> org.apache.felix.framework.searchpolicy.R4SearchPolicyCore.findClassOrResource(R4SearchPolicyCore.java:426)
>>     at
>> org.apache.felix.framework.searchpolicy.R4SearchPolicyCore.findResource(R4SearchPolicyCore.java:206)
>>     at
>> org.apache.felix.framework.searchpolicy.R4SearchPolicy.findResource(R4SearchPolicy.java:51)
>>     at
>> org.apache.felix.moduleloader.ModuleImpl.getResource(ModuleImpl.java:168)
>>     at org.apache.felix.framework.Felix.getBundleResource(Felix.java:1334)
>>     at
>> org.apache.felix.framework.BundleImpl.getResource(BundleImpl.java:170)
>>     at
>> org.apache.sling.jcr.resource.internal.mapping.classloader.BundleLoader.loadClass(BundleLoader.java:43)
>>     at
>> org.apache.sling.jcr.resource.internal.mapping.classloader.MapperClassLoader.loadClass(MapperClassLoader.java:121)
>>     at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>>     at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
>>     at java.lang.Class.forName0(Native Method)
>>     at java.lang.Class.forName(Class.java:247)
>>     at
>> org.apache.jackrabbit.ocm.reflection.ReflectionUtils.forName(ReflectionUtils.java:162)
>>     at
>> org.apache.jackrabbit.ocm.mapper.model.ClassDescriptor.validateClassName(ClassDescriptor.java:395)
>>     at
>> org.apache.jackrabbit.ocm.mapper.model.ClassDescriptor.afterPropertiesSet(ClassDescriptor.java:387)
>>     at
>> org.apache.sling.jcr.resource.internal.mapping.ClassDescriptorReader.validateDescriptors(ClassDescriptorReader.java:515)
>>     at
>> org.apache.sling.jcr.resource.internal.mapping.ClassDescriptorReader.validateDescriptors(ClassDescriptorReader.java:517)
>>     at
>> org.apache.sling.jcr.resource.internal.mapping.ClassDescriptorReader.verify(ClassDescriptorReader.java:430)
>>     at
>> org.apache.sling.jcr.resource.internal.mapping.ClassDescriptorReader.getMappingDescriptor(ClassDescriptorReader.java:87)
>>     at
>> org.apache.sling.jcr.resource.internal.mapping.ObjectContentManagerFactory.loadMappings(ObjectContentManagerFactory.java:230)
>>     at
>> org.apache.sling.jcr.resource.internal.mapping.ObjectContentManagerFactory.addBundle(ObjectContentManagerFactory.java:171)
>>     at
>> org.apache.sling.jcr.resource.internal.mapping.ObjectContentManagerFactory.registerMapperClient(ObjectContentManagerFactory.java:147)
>>     at
>> org.apache.sling.jcr.resource.internal.JcrResourceResolverFactoryImpl.activate(JcrResourceResolverFactoryImpl.java:396)
>>     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:597)
>>     at
>> org.apache.felix.scr.impl.ImmediateComponentManager.createImplementationObject(ImmediateComponentManager.java:228)
>>     at
>> org.apache.felix.scr.impl.ImmediateComponentManager.createComponent(ImmediateComponentManager.java:134)
>>     at
>> org.apache.felix.scr.impl.AbstractComponentManager.activateInternal(AbstractComponentManager.java:412)
>>     at
>> org.apache.felix.scr.impl.AbstractComponentManager.access$100(AbstractComponentManager.java:45)
>>     at
>> org.apache.felix.scr.impl.AbstractComponentManager$2.run(AbstractComponentManager.java:121)
>>     at
>> org.apache.felix.scr.impl.ComponentActorThread.run(ComponentActorThread.java:85)
>>
>>
>> This exception probably leads to the problem that the script can not be
>> compiled as indicated by the next exception that occured when I try to
>> access the page at
>> http://localhost:8080/sample/home/moreinfojsp/content.html:
>>
>>
>> 02.01.2008 12:41:16 *WARN * System Bundle: *** Class
>> 'org.apache.jsp.apps.org.apache.sling.sample.html_jsp' was not found.
>> Bundle 28 does not import package
>> 'org.apache.jsp.apps.org.apache.sling.sample', nor is the package
>> exported by any other bundle or available from the system class loader.
>> *** (java.lang.ClassNotFoundException: *** Class
>> 'org.apache.jsp.apps.org.apache.sling.sample.html_jsp' was not found.
>> Bundle 28 does not import package
>> 'org.apache.jsp.apps.org.apache.sling.sample', nor is the package
>> exported by any other bundle or available from the system class loader. ***)
>> java.lang.ClassNotFoundException: *** Class
>> 'org.apache.jsp.apps.org.apache.sling.sample.html_jsp' was not found.
>> Bundle 28 does not import package
>> 'org.apache.jsp.apps.org.apache.sling.sample', nor is the package
>> exported by any other bundle or available from the system class loader. ***
>>     at
>> org.apache.felix.framework.searchpolicy.R4SearchPolicyCore.findClass(R4SearchPolicyCore.java:194)
>>     at
>> org.apache.felix.framework.searchpolicy.R4SearchPolicy.findClass(R4SearchPolicy.java:45)
>>     at
>> org.apache.felix.moduleloader.ModuleImpl.getClass(ModuleImpl.java:152)
>>     at org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1454)
>>     at org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:341)
>>     at
>> org.apache.sling.jcr.classloader.internal.BundleProxyClassLoader.findClass(BundleProxyClassLoader.java:61)
>>     at
>> org.apache.sling.jcr.classloader.internal.BundleProxyClassLoader.loadClass(BundleProxyClassLoader.java:69)
>>     at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
>>     at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>>     at
>> org.apache.sling.jcr.classloader.internal.RepositoryClassLoaderFacade.loadClass(RepositoryClassLoaderFacade.java:105)
>>     at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>>     at
>> org.apache.sling.scripting.jsp.jasper.JspCompilationContext.load(JspCompilationContext.java:644)
>>     at
>> org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:144)
>>     at
>> org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.getDependants(JspServletWrapper.java:263)
>>     at
>> org.apache.sling.scripting.jsp.jasper.compiler.Compiler.isOutDated(Compiler.java:417)
>>     at
>> org.apache.sling.scripting.jsp.jasper.compiler.Compiler.isOutDated(Compiler.java:343)
>>     at
>> org.apache.sling.scripting.jsp.jasper.JspCompilationContext.compile(JspCompilationContext.java:608)
>>     at
>> org.apache.sling.scripting.jsp.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
>>     at
>> org.apache.sling.scripting.jsp.JspServletWrapperAdapter.service(JspServletWrapperAdapter.java:49)
>>     at
>> org.apache.sling.scripting.jsp.JspScriptEngineFactory.callJsp(JspScriptEngineFactory.java:126)
>>     at
>> org.apache.sling.scripting.jsp.JspScriptEngineFactory.access$000(JspScriptEngineFactory.java:71)
>>     at
>> org.apache.sling.scripting.jsp.JspScriptEngineFactory$JspScriptEngine.eval(JspScriptEngineFactory.java:268)
>>     at
>> org.apache.sling.scripting.resolver.impl.DefaultSlingScript.eval(DefaultSlingScript.java:85)
>>     at
>> org.apache.sling.servlet.resolver.helper.SlingScriptServlet.service(SlingScriptServlet.java:72)
>>     at
>> org.apache.sling.core.impl.request.RequestData.service(RequestData.java:417)
>>     at
>> org.apache.sling.core.impl.SlingMainServlet.processRequest(SlingMainServlet.java:286)
>>     at
>> org.apache.sling.core.impl.filter.RequestSlingFilterChain.render(RequestSlingFilterChain.java:48)
>>     at
>> org.apache.sling.core.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:54)
>>     at
>> org.apache.sling.core.impl.filter.ThemeResolverFilter.doFilter(ThemeResolverFilter.java:76)
>>     at
>> org.apache.sling.core.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:52)
>>     at
>> org.apache.sling.core.impl.filter.LocaleResolverFilter.doFilter(LocaleResolverFilter.java:85)
>>     at
>> org.apache.sling.core.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:52)
>>     at
>> org.apache.sling.core.impl.log.RequestLoggerFilter.doFilter(RequestLoggerFilter.java:206)
>>     at
>> org.apache.sling.core.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:52)
>>     at
>> org.apache.sling.core.impl.SlingMainServlet.service(SlingMainServlet.java:186)
>>     at
>> org.apache.sling.core.impl.SlingMainServlet.service(SlingMainServlet.java:158)
>>     at
>> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:358)
>>     at
>> org.mortbay.jetty.servlet.OsgiServletHolder.handle(OsgiServletHolder.java:93)
>>     at
>> org.mortbay.jetty.servlet.ServletHandler.dispatch(ServletHandler.java:657)
>>     at
>> org.mortbay.jetty.servlet.OsgiServletHandler.dispatch(OsgiServletHandler.java:69)
>>     at
>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
>>     at org.mortbay.http.HttpContext.handle(HttpContext.java:1807)
>>     at org.mortbay.http.HttpContext.handle(HttpContext.java:1757)
>>     at org.mortbay.http.HttpServer.service(HttpServer.java:879)
>>     at org.mortbay.http.HttpConnection.service(HttpConnection.java:789)
>>     at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:960)
>>     at org.mortbay.http.HttpConnection.handle(HttpConnection.java:806)
>>     at
>> org.mortbay.http.SocketListener.handleConnection(SocketListener.java:218)
>>     at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:331)
>>     at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:520)
>> Caused by: java.lang.ClassNotFoundException:
>> org.apache.jsp.apps.org.apache.sling.sample.html_jsp
>>     at
>> org.apache.felix.framework.searchpolicy.R4SearchPolicyCore.findClassOrResource(R4SearchPolicyCore.java:422)
>>     at
>> org.apache.felix.framework.searchpolicy.R4SearchPolicyCore.findClass(R4SearchPolicyCore.java:185)
>>     ... 49 common frames omitted
>>
>> Regards,
>> Alex
>>
>>
>>     
>
>
>   

Reply via email to