I really need to get byte range support working in Cocoon 2 with the ResourceReader as it appears that some audio players just will not accept MP3 files if the server does not provide byte-range support (e.g. Windows Media Player) even after I patched Cocoon 2.0.2 to no longer advertise byte-range support (e.g. change the Accept-Ranges:bytes header to Accept-Ranges:none). I have a site which is using Cocoon based access control mechanisms to deliver the files so I can't easily serve the files from a non-Cocoon based server.
I would appreciate some advice on how best to tackle this... I presume that I could try adding support directly into ResourceReader, but I would have to disable the CachingStreamPipeline or add the range data into the cache key - otherwise a partial output would be cached rather than the whole file. However, adding the range to the cache key might significantly reduce the hit rate and rapidly fill the cache. The more favorable approach, assuming that I'm on the write track, would be to add support to the Pipeline so that the generator (the ResourceReader in this case) would act as normal, and the CachingOutputStream would cache the entire Resource, but the CachingStreamPipeline and StreamPipeline would both be altered to return only the request byte ranges. Do any of these suggestions seem sensible or is this more complex than I'm imagining? (I would prefer to change 2.0.2 rather than move the live site to a more recent non-release version.) Thanks, Stuart. Public Key - 1024D/88DD65AF 2001-11-23 Stuart Roebuck (Adolos) Key fingerprint = 89D9 E405 F8B1 9B22 0FA2 F2C1 9E57 5AB1 88DD 65AF ------------------------------------------------------------------------- Stuart Roebuck [EMAIL PROTECTED] Systems Architect Java, XML, MacOS X, XP, etc. ADOLOS <http://www.adolos.com/> --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]