[Hypercontent-users] another worthwhile patch in CVS
Brought to you by:
alexvigdor
From: Alex V. <al...@bi...> - 2006-08-03 16:12:14
|
Hi all, I have just committed a patch to CVS that addresses a bug in IE, which displays its cached data instead of fresh HTTP 200 response data received in response to a forced conditional request if the last modified header is not more recent than what's in the cache. Other browsers don't do this, and I believe it could be a violation of the HTTP 1.1 specification in regards to cache control, but anyway it makes sense for HyperContent to return the current time in the last- modified header of a dynamic response, so I'm not going to pick a fight with Microsoft on this one. The user-facing symptom of this bug would be while using a recent version of IE, after opening a file for editing, discarding the changes, then opening it for editing again, the submission of the first editing form would NOT change the underlying data, as the form was pulled from IE's cache with expired form bindings, and thus the inputs were not recognized by HyperContent. Subsequent attempts to submit that or other editing forms while the file is open would then succeed, due to the user's temp file modification date being updated, perhaps leading the user to think it was an anomaly or their own error. They might not even notice, for example if they immediately switch to another editor without using the first one. This bug may also affect HyperContent 2.0 users who are not using current CVS code; you can manually apply the patch to org.hypercontent.server.ContentServer Search for the line: final Date assetMod = asset.lastModified(); And replace it with: final Date assetMod = isModal ? new Date(time1) : asset.lastModified(); HC 2.0 users should NOT try to use the current CVS version of ContentServer without using the rest of the latest CVS code as well! Cheers, Alex |