On 6/21/06, Erik Hatcher <[EMAIL PROTECTED]> wrote:
On Jun 21, 2006, at 12:35 PM, Chad Woolley wrote: > "lowercase" web services? What do you use to talk XML on the RoR > side? One of the Ruby SOAP implementations, something homegrown, or > something else? I'm currently using REXML to parse the responses, and its working fine. But I think REXML's performance is not quite as quick as perhaps sending back YAML or even Ruby code to eval. Solr has a custom response handler hook so XML is not required, just the default. By "lowercase" web services I mean it's a service, and it's on the web, but it's not heavy SOAP.
Cool. I checked out the REXML page. This quote is great: ------------------------------------ "Some of the common differences are that the Ruby API relies on block enumerations, rather than iterators. For example, the Java code: for (Enumeration e=parent.getChildren(); e.hasMoreElements(); ) { Element child = (Element)e.nextElement(); // Do something with child } in Ruby becomes: parent.each_child{ |child| # Do something with child } Can't you feel the peace and contentment in this block of code? Ruby is the language Buddha would have programmed in." --------------------------------------- After reading several thousand blogs which argue the pros and cons of RoR and seeing it used in a real shop, I think the benefit does largely come down to the Ruby language itself. Once you learn all the idioms, it's really easy to get stuff done. Of course there's still big cons compared to Java - my main gripes are lack of a real refactoring, intelligent code-completing IDE, and lack of something as nice as Maven to automatically manage your external and cross-project dependencies. Oh, and speaking of XML parsing performance - AJAX is now officially old news. AJAJ (Async Javascript And JSON, Javascript Serialized Object Notation) is the wave of the future. We don't need no stinking XML! -- Chad --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]