[Dspace-tech] XMLUI PageNotFound errors

3 views
Skip to first unread message

Alan Orth

unread,
Aug 25, 2015, 4:36:20 PM8/25/15
to dspac...@lists.sourceforge.net
Hi,

I'm testing some installations of DSpace 1.7.0 (on Debian / Tomcat 5.5) and I had a headache after making a few seemingly-trivial changes to the out-of-the-box configuration yesterday.  I had changed the default XMLUI theme to Mirage, but after packaging and rebuilding I was getting a "java.lang.ClassNotFoundException:".  The Cocoon stack trace is as follows:
Failed to process pipeline
context:/jndi:/localhost/aspects/aspects.xmap - 115:34    <map:serialize type="xml">
context:/jndi:/localhost/aspects/aspects.xmap - 114:43    <map:transform type="PageNotFound">
context:/jndi:/localhost/aspects/aspects.xmap - 113:22    <map:generate>
context:/jndi:/localhost/themes/Mirage/sitemap.xmap - 161:34    <map:serialize type="xhtml">
context:/jndi:/localhost/themes/Mirage/sitemap.xmap - 155:33    <map:transform type="i18n">
context:/jndi:/localhost/themes/Mirage/sitemap.xmap - 150:51    <map:transform>
context:/jndi:/localhost/themes/Mirage/sitemap.xmap - 137:55    <map:transform type="IncludePageMeta">
context:/jndi:/localhost/themes/Mirage/sitemap.xmap - 132:55    <map:transform type="IncludePageMeta">
context:/jndi:/localhost/themes/Mirage/sitemap.xmap - 124:55    <map:transform type="IncludePageMeta">
context:/jndi:/localhost/themes/Mirage/sitemap.xmap - 118:55    <map:generate type="file">
context:/jndi:/localhost/themes/Mirage/sitemap.xmap - 115:28    <map:match>
context:/jndi:/localhost/themes/themes.xmap - 63:45    <map:mount>
context:/jndi:/localhost/themes/themes.xmap - 62:35    <map:match type="ThemeMatcher">
context:/jndi:/localhost/sitemap.xmap - 588:94    <map:mount>
After staring at diffs of my last-known working configuration (dspace.cfg and xmlui.xconf) I noticed that xmlui.xconf from Peter's DSpace git repository doesn't have an EOL on the last line.  I rewrote the file in vim and rebuilt / redeployed DSpace and XMLUI was working.  I noticed that configs from the dspace-src-release tarballs have proper line endings, so I assumed this line ending stuff was the solution, however on another server I'm still battling to figure out why the same fix doesn't work.

Is there any method to the madness?

Peter's DSpace git repository is here: https://github.com/DSpace/DSpace

Thanks,

-- 
Alan Orth
alan...@gmail.com
http://alaninkenya.org
"I have always wished for my computer to be as easy to use as my telephone; my wish has come true because I can no longer figure out how to use my telephone." -Bjarne Stroustrup, inventor of C++

Alan Orth

unread,
Aug 25, 2015, 4:36:21 PM8/25/15
to dspac...@lists.sourceforge.net
For what it's worth, JSPUI doesn't work either on this particular server (internal error), so maybe it's not just an XMLUI problem.  So here's the full stack trace from the XMLUI error page:

org.apache.cocoon.ProcessingException: Failed to process pipeline
    at <map:serialize type="xml"> - jndi:/localhost/aspects/aspects.xmap:115:34
    at <map:transform type="PageNotFound"> - jndi:/localhost/aspects/aspects.xmap:114:43
    at <map:generate> - jndi:/localhost/aspects/aspects.xmap:113:22
    at <map:serialize type="xhtml"> - jndi:/localhost/themes/Mirage/sitemap.xmap:161:34
    at <map:transform type="i18n"> - jndi:/localhost/themes/Mirage/sitemap.xmap:155:33
    at <map:transform> - jndi:/localhost/themes/Mirage/sitemap.xmap:150:51
    at <map:transform type="IncludePageMeta"> - jndi:/localhost/themes/Mirage/sitemap.xmap:137:55
    at <map:transform type="IncludePageMeta"> - jndi:/localhost/themes/Mirage/sitemap.xmap:132:55
    at <map:transform type="IncludePageMeta"> - jndi:/localhost/themes/Mirage/sitemap.xmap:124:55
    at <map:generate type="file"> - jndi:/localhost/themes/Mirage/sitemap.xmap:118:55
    at <map:match> - jndi:/localhost/themes/Mirage/sitemap.xmap:115:28
    at <map:mount> - jndi:/localhost/themes/themes.xmap:63:45
    at <map:match type="ThemeMatcher"> - jndi:/localhost/themes/themes.xmap:62:35
    at <map:mount> - jndi:/localhost/sitemap.xmap:588:94
    at org.apache.cocoon.ProcessingException.throwLocated(ProcessingException.java:143)
    at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.handleException(AbstractProcessingPipeline.java:923)
    at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.setupPipeline(AbstractProcessingPipeline.java:372)
    at org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.setupPipeline(AbstractCachingProcessingPipeline.java:710)
    at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.preparePipeline(AbstractProcessingPipeline.java:466)
    at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.prepareInternal(AbstractProcessingPipeline.java:480)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:616)
    at org.apache.cocoon.core.container.spring.avalon.PoolableProxyHandler.invoke(PoolableProxyHandler.java:71)
    at $Proxy15.prepareInternal(Unknown Source)
    at org.apache.cocoon.components.source.impl.SitemapSource.init(SitemapSource.java:292)
    at org.apache.cocoon.components.source.impl.SitemapSource.<init>(SitemapSource.java:148)
    at org.apache.cocoon.components.source.impl.SitemapSourceFactory.getSource(SitemapSourceFactory.java:62)
    at org.apache.cocoon.components.source.CocoonSourceResolver.resolveURI(CocoonSourceResolver.java:153)
    at org.apache.cocoon.components.source.CocoonSourceResolver.resolveURI(CocoonSourceResolver.java:183)
    at org.apache.cocoon.generation.FileGenerator.setup(FileGenerator.java:99)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:616)
    at org.apache.cocoon.core.container.spring.avalon.PoolableProxyHandler.invoke(PoolableProxyHandler.java:71)
    at $Proxy16.setup(Unknown Source)
    at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.setupPipeline(AbstractProcessingPipeline.java:343)
    at org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.setupPipeline(AbstractCachingProcessingPipeline.java:710)
    at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.preparePipeline(AbstractProcessingPipeline.java:466)
    at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:411)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:616)
    at org.apache.cocoon.core.container.spring.avalon.PoolableProxyHandler.invoke(PoolableProxyHandler.java:71)
    at $Proxy15.process(Unknown Source)
    at org.apache.cocoon.components.treeprocessor.sitemap.SerializeNode.invoke(SerializeNode.java:147)
    at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:55)
    at org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:87)
    at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:78)
    at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143)
    at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:78)
    at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:81)
    at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:239)
    at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:171)
    at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:247)
    at org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:117)
    at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:55)
    at org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:87)
    at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:78)
    at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143)
    at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:78)
    at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:81)
    at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:239)
    at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:171)
    at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:247)
    at org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:117)
    at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:78)
    at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143)
    at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:78)
    at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:81)
    at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:239)
    at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:171)
    at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:247)
    at org.apache.cocoon.servlet.RequestProcessor.process(RequestProcessor.java:351)
    at org.apache.cocoon.servlet.RequestProcessor.service(RequestProcessor.java:169)
    at org.apache.cocoon.sitemap.SitemapServlet.service(SitemapServlet.java:84)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.cocoon.servletservice.ServletServiceContext$PathDispatcher.forward(ServletServiceContext.java:468)
    at org.apache.cocoon.servletservice.ServletServiceContext$PathDispatcher.forward(ServletServiceContext.java:443)
    at org.apache.cocoon.servletservice.spring.ServletFactoryBean$ServiceInterceptor.invoke(ServletFactoryBean.java:264)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    at $Proxy12.service(Unknown Source)
    at org.apache.cocoon.servletservice.DispatcherServlet.service(DispatcherServlet.java:106)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.dspace.app.xmlui.cocoon.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:111)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.dspace.app.xmlui.cocoon.DSpaceCocoonServletFilter.doFilter(DSpaceCocoonServletFilter.java:246)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.cocoon.servlet.multipart.MultipartFilter.doFilter(MultipartFilter.java:131)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.dspace.utils.servlet.DSpaceWebappServletFilter.doFilter(DSpaceWebappServletFilter.java:78)
    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.core.StandardHostValve.invoke(StandardHostValve.java:127)
    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:298)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    at java.lang.Thread.run(Thread.java:636)
Caused by: java.sql.SQLException: java.lang.ClassNotFoundException:
    at org.dspace.app.xmlui.cocoon.AbstractDSpaceTransformer.handleException(AbstractDSpaceTransformer.java:109)
    at org.dspace.app.xmlui.cocoon.AbstractDSpaceTransformer.setup(AbstractDSpaceTransformer.java:93)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:616)
    at org.apache.cocoon.core.container.spring.avalon.PoolableProxyHandler.invoke(PoolableProxyHandler.java:71)
    at $Proxy20.setup(Unknown Source)
    at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.setupPipeline(AbstractProcessingPipeline.java:356)
    ... 95 more
Caused by: java.sql.SQLException: java.lang.ClassNotFoundException:
    at org.dspace.storage.rdbms.DataSourceInit.getDatasource(DataSourceInit.java:149)
    at org.dspace.storage.rdbms.DatabaseManager.initialize(DatabaseManager.java:1513)
    at org.dspace.storage.rdbms.DatabaseManager.getConnection(DatabaseManager.java:585)
    at org.dspace.core.Context.<init>(Context.java:95)
    at org.dspace.app.xmlui.utils.ContextUtil.obtainContext(ContextUtil.java:72)
    at org.dspace.app.xmlui.utils.ContextUtil.obtainContext(ContextUtil.java:53)
    at org.dspace.app.xmlui.cocoon.AbstractDSpaceTransformer.setup(AbstractDSpaceTransformer.java:78)
    ... 102 more
Caused by: java.lang.ClassNotFoundException:
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:186)
    at org.dspace.storage.rdbms.DataSourceInit.getDatasource(DataSourceInit.java:38)
    ... 108 more

At the bottom I see SQL and data source errors, which leads me to think it's a database problem, but I CAN connect using the parameters in the config file:
psql -U dspace -d dspace -W -h localhost
Password for user dspace:
psql (8.4.7)
SSL connection (cipher: DHE-RSA-AES256-SHA, bits: 256)
Type "help" for help.

dspace=>
Thanks!

Alan

Peter Dietz

unread,
Aug 25, 2015, 4:36:30 PM8/25/15
to Alan Orth, dspac...@lists.sourceforge.net
Hi Alan,

Best of luck using the git repo, but full disclaimer that github is an unofficial clone of the SVN repo. Official svn repo is http://scm.dspace.org/svn/repo/dspace/, we're still using svn for the foreseeable future.
Since I used a tool to copy the svn to git (ruby gem svn2git), something "could" have been lost in translation, as I tried as best I could to preserve history.

The safest route is to use git for the time being is probably:
cd dspace-1.7.0
git init
git add .
git commit -a -m "Initial Import"


Otherwise to try to persevere through the cloned repo sitting up in github, you might want to jump off of master (which corresponds to trunk which is our precursor to 1.8 development), and instead use the tag 1.7.0.
git checkout --track -b dspace-local-1.7.0 dspace-1.7.0

The command above will check out a local branch called dspace-local-1.7.0 which starts from tags/dspace-1.7.0

So... perhaps your pipeline/page-not-found issues are related to you sitting on trunk/1.8.dev as opposed to tag/1.7.0 if not, then I'll look into the error log you have.



Peter Dietz



------------------------------------------------------------------------------
Free Software Download: Index, Search & Analyze Logs and other IT data in
Real-Time with Splunk. Collect, index and harness all the fast moving IT data
generated by your applications, servers and devices whether physical, virtual
or in the cloud. Deliver compliance at lower cost and gain new business
insights. http://p.sf.net/sfu/splunk-dev2dev
_______________________________________________
DSpace-tech mailing list
DSpac...@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dspace-tech


Alan Orth

unread,
Aug 25, 2015, 4:36:34 PM8/25/15
to Peter Dietz, dspac...@lists.sourceforge.net
Peter,

Thanks for looking into this for me.  I thought it was cool there was a git repository but I understand it might be a bumpy ride ;).  For what it's worth, I was working on a local branch of the dspace-1.7.0 tag in git, but had possibly copied a config (and maybe more, can't remember) from another machine which very well could have been off master @ 1.8 dev...

I ended up starting a fresh branch from 1.7.0 and introducing configuration changes one by one until I got my test box working again.  I was trying to test XMLUI / Mirage / custom themes, so I was changing xmlui.xconf and copying theme files to the local modules overlay.  I haven't investigated into this any further, but still have a hunch it was a file format issue!

Thanks again,

Alan
Reply all
Reply to author
Forward
0 new messages