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

Reply via email to