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]