[Seaside] iCal feed to Drupal
bobn at rogers.com
bobn at rogers.com
Thu Sep 24 20:58:48 UTC 2009
Turns out our issues with providing an iCal feed to Drupal were caused by Seaside code in VW.
The current one-click Pharo image works fine. I tried it with a simple test...
renderContentOn: html
| response doc string |
string := self iCalText.
doc := string asMIMEDocumentType: 'text/calendar;charset=utf-8'.
response := WAResponse new.
response
contentType: 'text/calendar; charset=UTF-8';
nextPutAll: doc content;
yourself.
response doNotCache.
self session returnResponse: response.
...the same code used in VW causes a one minute delay before the response, for which a retry is sent, and that adds up to a two minute delay before Drupal responds. I'll try more recent Seaside code for VW, but the problem is related to Drupal sending a HTTP/1.0 request.
Eventually, you end up in SeasideHttpBuildHandler>>safelyRead:from:into: which waits on #atEnd sent to Net.BodyStream (which wraps an ExternalReadStream on a 20480 element ByteArray). The browser HTTP/1.1 request does not trigger this code.
It would be interesting to hack this down to the root cause, but I'd rather try the beta 3.0 VW code first. I've burned a bit too much time on this already (it was really nice seeing Pharo work out of the box; nicely done).
Thanks again for everyone's help,
Bob Nemec
Cherniak Software
More information about the seaside
mailing list