Hi,

I had a component in Pier which included in a rendering message:

html div class: 'grey_copy14'; style: 'background-image:url(img/faq_title.gif);'

If you can ignore my poor style with inline css, when 'img/faq_title.gif' wasn't present, PRPierFrame>>#notFound is called. This then caused a new component to be created and my context to be reset (see my previous post "sessions, continuation keys, restful urls and component state")

Even if we fix the new component creation but it still seems unnecessary that for images #notFound resets the structure and view:

notFound
"This method is called whenever the current request cannot be resolved to a structure."
self context: (self context
structure: self context root
view: PRNotFoundView)

I propose a fix to only redirect if the MimeType is non-binary, something along the lines of

notFound
"This method is called whenever the current request cannot be resolved to a structure."
self requestContext request mimeType isBinary ifTrue: [ self requestContext responseGenerator notFound ] 
self context: (self context
structure: self context root
view: PRNotFoundView)

Assuming others think this is a reasonable idea, a problem arises in that WARequest doesn't implement #mimeType. I'd propose refactoring WAExternalFileLibrary>>#mimetypeForRequest: and WAFileLibrary>>#mimetypeFor: 

Does that seem a reasonable course of action?

Nick