Helge, Cyrus, Pascal, I really appreciate the feedback.
The broad issue here seems to be that the RIA domain apparently has relegated HTTP to basic content retrieval and is favoring protocols such as AMF and JSON for data management. WebDAV does not seem to be on their radar. At first I thought this was just a knee-jerk reaction by Adobe to some nefarious activity that was conducted with version 7 of the Flash Player allowing cross-site scripting...I believe that was the problem anyway. But it seems that even Microsoft with Silverlight has reverted back from the full HTTP vocabulary that was supported in the earlier versions to now supporting only GET and POST as well. I'm not sure where OpenLaszlo is on the matter, but both Microsoft and Adobe have been petitioned quite vociferously for full HTTP support and both seem to be remaining steadfast in their positions. The two arguments I have come across are that many HTTP stacks don't support the full vocabulary and that many firewalls block the extended methods. So whether this is silly, I would almost go so far as to say inconceivable, this is the current reality. And whether RIAs are going to be the wave of the future remains to be seen; but the technology seems to be gathering significant momentum and at the moment does provide the most pleasing browser based user experience. Then there is the small matter of a recent investment in the Flex development tools.... As it is quite obvious that the Calendar Server stands head-and-shoulders above the other offerings, I am highly motivated to make this work! Helge, Intriguing idea. Unfortunately the HTTP response header is also unavailable (in Actionscript), they really seem to be insistent on their designs for the use of HTTP. Pascal and Cyrus, the proxy approach crossed my mind too. It seems to me the two obvious approaches to an adapter are: 1. A process on the server that consumes the AMF request and then sends an HTTP request to the Calendar Server. Since I don't have access to the response header, I need the header and body in and out of the server to be in the body of the message in and out of the Flex client. 2. PyAMF's Twisted Gateway which appears to have been developed to address this issue. This would result in a variation on POST Tunneling, as I understand it, but the adapter would be natively plugged into the Calendar Server's Twisted architecture. Which to my thinking is the less complicated approach, but does require exposing the Calendar Service as a remote object to be called. Which if my understanding is correct is basically what happens when the HTTP request hits the server and the callable site object is invoked. Well, as nobody has indicated I am out of my mind, I am going to explore this a bit further. Cyrus, if this does prove to be a viable approach, is it something you would be interested in? Thanks again for the feedback, Mark On 9/5/08 9:39 AM, "Cyrus Daboo" <[EMAIL PROTECTED]> wrote: > Hi Mark, > > --On September 4, 2008 5:34:20 PM -0400 Mark Cockfield > <[EMAIL PROTECTED]> wrote: > >> I am developing an RIA in Flex which needs to be built upon a calendaring >> foundation. After discovering that the CalendarServer is the Holy Grail I >> have not only found my foundation, but a good part of my infrastructure as >> well. Really nice work! > > A little Google'ing indicates that the RIA in Flex seems very limited. > >> Now imagine my disappointment upon realizing that Actionscript has been >> apparently locked down to only allow GET and POST http methods. > > Apparently you can do a little more than that with their proxy service: > > <http://livedocs.adobe.com/flex/2/langref/mx/rpc/http/HTTPService.html> > > However, you really need to be able to do PROPFIND (and possibly PROPPATCH) > and REPORT to work well with CalDAV, so that probably doesn't help. > >> After considerable thrashing about I seem to be faced with the following >> two options: >> >> 1. Code my own HTTP client in Actionscript at the socket level. >> >> 2. Use PyAMF and the Twisted Gateway to hook a Remote Messaging interface >> into the Calendar Service. > > Helge's suggestion of using X-HTTP-Method-Override is probably your best > choice. I am not sure whether we could support such an option. It probably > wouldn't be that big a change. The alternative is to use a proxy that > understands that header and turns the request into the "real" one as it > passes through to the real server. > > I would strongly urge you to file a ticket against RIA/Flex asking for > arbitrary HTTP method support. It seems silly not to provide that when > workarounds such as X-HTTP-Method-Override, and more importantly when more > web services are using "richer" WebDAV protocol elements. _______________________________________________ calendarserver-dev mailing list calendarserver-dev@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/calendarserver-dev