The DSpace "Page Not Found" page is rendered from the main sitemap, here: https://github.com/DSpace/DSpace/blob/master/dspace-xmlui/src/main/webapp/sitemap.xmap#L673
- Tim On 12/13/2012 4:56 PM, Ian Boston wrote: > Hi Tim, > Thank you. > Could you give me a pointer to where the DSpace page is rendered? > > Looking at the Coocon code it should be done by [1], but in DSpace > that doesnt take the blindest bit of notice of the setting > org.apache.cocoon.manageexceptions, which if set to false should just > set the status. > > Incidentally, in the code I am looking at the status is set correctly > when managed, at least in the cocoon codebase. If a > ResourceNotFoundException appears as a 404 with html content, see [2], > and the log message is issued at warn level. > > I am looking at the section of the stack below where think the > ResourceNotFoundException is handled (line 189 in > org.apache.cocoon.servlet.RequestProcessor ) > > > 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) > > > Thanks > Ian > > > > 1 org.apache.cocoon.servlet.RequestUtil.manageException(HttpServletRequest, > HttpServletResponse, Environment, String, int, String, String, String, > Exception, ServletSettings, boolean, Object) > > 2 org.apache.cocoon.servlet.RequestProcessor line 200: > > RequestUtil.manageException(request, res, env, uri, > HttpServletResponse.SC_NOT_FOUND, > "Resource Not Found", > "Resource Not Found", > "The requested resource \"" + > request.getRequestURI() + "\" could not be found", > e, > this.servletSettings, > getLogger(), this); > return; > > On 14 December 2012 02:21, Tim Donohue <[email protected]> wrote: >> Hi Ian, >> >> Just now saw this thread about the ugly 404 error page & logs in DSpace >> XMLUI / Cocoon. >> >> You may already be aware of when/why this came about. But, I figured I'd >> fill in some "history" just in case you (or others) are not. >> >> Essentially, prior to DSpace 1.8.x, DSpace XMLUI actually had a nicer >> looking XMLUI "Page Not Found" Error page. It just simply said "page not >> found" and looked like every other page in your XMLUI theme. >> >> However, then we discovered that Apache Cocoon was responding with "200 OK" >> on *every error page* in the XMLUI, see this ticket >> https://jira.duraspace.org/browse/DS-768 >> >> Essentially, the only resolution we were able to come up with was to >> actually patch Apache Cocoon to throw the proper 404 error. So we created a >> patched copy of the Cocoon code which was throwing 200 instead of 404. That >> patched code is maintained here: >> https://github.com/DSpace/dspace-cocoon-servlet-service-impl >> >> Unfortunately though, in our patching of this Cocoon bug, we were not able >> to get our nicer looking "Page Not Found" error page to display >> again...instead, we were left with the ugly error page you see now. That >> patch to Cocoon may have also been the cause of the messages you are seeing >> in the Cocoon.log. >> >> There may be ways to fix this & clean up both the "Page Not Found" error >> page and limit the output in the Cocoon.log. I haven't looked into it in >> some time. But, if you find anything that works for you, I'd highly >> encourage you to send us a Pull Request or a patch -- I think this is >> something we'd all like to see fixed. >> >> Not sure if this info will be of help. But, at least know you know the full >> story of where this issue began. >> >> - Tim >> >> >> On 12/12/2012 3:42 AM, Ian Boston wrote: >>> >>> On 12 December 2012 20:15, helix84 <[email protected]> wrote: >>>> >>>> Hi Ian, >>>> >>>> I don't know about shortening the stacktrace, but that's a pretty >>>> generic Java question so you may try googling around. >>> >>> >>> I dont think there is a way other than changing the Cocoon code, >>> blocking the logger or not throwing the exception and setting a 404 >>> status code in the Dspace code. I might just do the latter. >>> >>>> >>>> To answer at least a part of your question, this is where 404s are >>>> handled in Cocoon. You may want to edit the XSL to filter what you >>>> send to the user for specific exceptions and leave the rest (the >>>> unexpected ones) as stacktraces. >>>> >>>> >>>> https://github.com/DSpace/DSpace/blob/dspace-3_x/dspace-xmlui/src/main/webapp/sitemap.xmap#L673 >>>> >>> >>> Ok, thanks for the pointer. >>> >>> Ian >>> >>> >>>> >>>> Regards, >>>> ~~helix84 >>>> >>>> Compulsory reading: DSpace Mailing List Etiquette >>>> https://wiki.duraspace.org/display/DSPACE/Mailing+List+Etiquette >>> >>> >>> >>> ------------------------------------------------------------------------------ >>> LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial >>> Remotely access PCs and mobile devices and provide instant support >>> Improve your efficiency, and focus on delivering more value-add services >>> Discover what IT Professionals Know. Rescue delivers >>> http://p.sf.net/sfu/logmein_12329d2d >>> _______________________________________________ >>> DSpace-tech mailing list >>> [email protected] >>> https://lists.sourceforge.net/lists/listinfo/dspace-tech >>> List Etiquette: >>> https://wiki.duraspace.org/display/DSPACE/Mailing+List+Etiquette >>> >> ------------------------------------------------------------------------------ LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d _______________________________________________ DSpace-tech mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/dspace-tech List Etiquette: https://wiki.duraspace.org/display/DSPACE/Mailing+List+Etiquette

