Forgot your password?
typodupeerror

Google Releases AJAX Framework 327

Posted by CmdrTaco
from the well-isn't-that-special dept.
maquina writes "Google released a new AJAX framework based on Java. From Google's mouth: "Google Web Toolkit (GWT) is a Java software development framework that makes writing AJAX applications like Google Maps and Gmail easy for developers who don't speak browser quirks as a second language." This impressive framework promises to make AJAX available to the masses and is one more step towards Google becoming the de facto Internet platform provider."
This discussion has been archived. No new comments can be posted.

Google Releases AJAX Framework

Comments Filter:
  • Google: (Score:5, Interesting)

    by Trigun (685027) <evil.evilempire@ath@cx> on Wednesday May 17, 2006 @08:38AM (#15349862)
    Your source of, vangaurd of and now creator of all your information.
  • ...is by far and above the fact that you are coding your website in Java, using their API and SWT-like objects, and the Javascript/Ajax is then generated from your classes.

    I think Google is mostly responsible for launching the AJAX trend, and now they're moving in a brand new direction? Beautiful.

    Oh and they even distributed half of the source code for the project in the JAR files.
    • by Ingolfke (515826) on Wednesday May 17, 2006 @08:56AM (#15349961) Journal
      Just because the AJAX code is not hand coded doesn't mean Google is moving in a new direction. In fact they're moving forward more agressively in the same direction, and are just releasing tools to help everyone go the same way (especially the Google way).
    • by seizer (16950) on Wednesday May 17, 2006 @08:57AM (#15349968) Homepage
      It's not quite a "brand new direction" - Microsoft's Atlas product has been offering something along these lines for a while now (albeit still as a beta). You lay out controls visually in Visual Studio (or Express), and control them programmatically from .NET. It takes care of rendering them down to HTML + Javascript, and it's pretty much cross platform friendly.
    • by Anonymous Coward on Wednesday May 17, 2006 @08:57AM (#15349970)
      I personally find the way it handles remote prodecure calls to the server [google.com] the most interesting. Just define a serializable java class, you say? And GWT handles the rest, you say? Sign me up!

      This is sexy stuff, people. :-)
    • by Bogtha (906264) on Wednesday May 17, 2006 @08:57AM (#15349973)

      ...is that it's a closed-source, binary-only executable. Download page [google.com]:

      The GWT Java-to-JavaScript compiler and hosted web browser are shipped binary-only and subject to the license below.

    • Another downside... (Score:5, Interesting)

      by Bogtha (906264) on Wednesday May 17, 2006 @09:00AM (#15349995)

      ...is that it phones home [google.com] to Google.

      When you use the Google Web Toolkit's hosted web browser, the application sends a request back to Google's servers to check to see if you are using the most recent version of the product. As a part of this request, Google will log usage data including a timestamp of the date and time you downloaded the Google Web Toolkit and the IP address for your computer. We won't log cookies or personal information about you, and we will use any data we log only in the aggregate to operate and improve the Google Web Toolkit and other Google Services. Please see the Google Privacy Policy for more information.

      • by avdp (22065) * on Wednesday May 17, 2006 @09:13AM (#15350065)
        As opposed to Firefox (and right about every modern application I've used), which doesn't? It's just checking if there is an update to download. And only in the "hosted web browser" which you don't even need to use. Jeez. Paranoid.
        • As opposed to Firefox (and right about every modern application I've used), which doesn't?

          The apps I use do not (this includes Firefox). I'm doing "apt-get update" to check for new versions ;)

          Oh, you meant "applications for MS-Windows" :)
          That's what happens when you don't have a package management system. ;)

          Seriously, why isn't MS doing that : when you install an app (MS or 3rd party), it writes somewhere a link to an internet repository, that will be checked when going to Control Panel -> Add/remove app
          • Seriously, why isn't MS doing that : when you install an app (MS or 3rd party), it writes somewhere a link to an internet repository, that will be checked when going to Control Panel -> Add/remove apps.

            Application developers can add links and version info in Add/Remove Programs.

            Also, Active Directory admins can publish packages to clients on the domain. The packages will auto-install or show up in Add/Remove Programs, depending on how it's configured.

            This would be similar to the internal RPM repositories

          • by amliebsch (724858) on Wednesday May 17, 2006 @10:06AM (#15350432) Journal
            It must be because Microsoft adheres to the "bazaar" notion of third-party software, rather than the "cathedral" of a centrally-managed package maintainer.
          • The apps I use do not (this includes Firefox)

            It still checks, you just aren't using the results of that check.

          • Well, ok - let's address the Linux world as well.

            There are those that check repositories manually on a regular basis (or never!) for updates. The repositories (in some case run by the vendor) will have similar anonymous information about you that Google logs. However this method is a potential problem - you may have a vulnerable machine/software if you don't get your patches fast enough (or not at all).

            Then there are those that run tools like RHN in the background (similar to Automatic Updates in Windows
        • by orasio (188021) on Wednesday May 17, 2006 @10:32AM (#15350651) Homepage
          It phones home, and you don't have the source, that's enough to be paranoid.
          • by avdp (22065) *
            Well, you've got a point there. You only have Google's word that they're only sending what they clearly state they're sending. Even if you don't explicitely trust Google (and many don't) - people inspect these network packets all the time to keep the vendor honest. It's been a while since I've seen a report of a vendor being sneaky and doing more than advertise. I think most reputable vendors have learned the lesson that the PR hit is just not worth it.

            But again, what Google is doing is very common pr
    • by Anonymous Coward on Wednesday May 17, 2006 @09:03AM (#15350007)
      "I think Google is mostly responsible for launching the AJAX trend"
       
      Er, nope. Hard as it is to believe, Microsoft were there first with the awesome Outlook Web Access which mimics Outlook, on a web page really, really well. This used their XMLHTTP ActiveX object which is also used extensively in Windows Update.
       
      The rest happened from there really. Google is probably the best known current implementer of AJAX, but good as they are I certainly wouldn't say they launched it... and I certainly wish world + dog would stop releasing AJAX frameworks!
      • by mgkimsal2 (200677) on Wednesday May 17, 2006 @09:06AM (#15350026) Homepage
        Sorry, but I have to give it to someone other than Microsoft. While they did essentially invent the tech behind Ajax, the only major project they used it on was basically something that was closed. I don't mean source, but not open to the public. You only saw it if you had an organization using Outlook/Exchange in the first place, which still excluded a huge majority of people using the web. Had they ported hotmail to the OWA interface, that would have been a major revolution far greater than google maps or anything else. But they didn't.
        • I have to agree with you on this.... this is why we run exchange server because of the Outlook 2003 cached exchange mode and OWA.. the ablility to have multi desktops and your web mail fully synced and even your pda connected directly to the server.

          If ms would take the time to improve OWA's abilitys with other browsers they would have the most powerful web mail out there.

          on the up side if you are willing to rip your hair out you can fix most of the cross browser issues your self - it isn't that bad
      • by Bogtha (906264) on Wednesday May 17, 2006 @09:15AM (#15350083)

        Microsoft might have provided the first XMLHttpRequest implementation and used it first, but it was Google that made it popular. Before Google Suggest (and later GMail) caught everybody's attention, it languished relatively unknown to most developers for years. Now you can't get away from it.

        Sure, browser compatibility played a large part too, but even after Mozilla implemented XMLHttpRequest, I didn't see many people talking about it until Google started using it. So Microsoft might have launched XMLHttpRequest, but it was Google that launched the trend, which is what xbrownx said.



        • To be fair I think the progression to AJAX was an evolution of which the last breaking point was web service and the ability to easily (I use that term lightly) transmit simple objects across the wire. When MS built their web outlook they where passing raw XML back and forth across the wire, with all the nastiness that comes along with it. With the push towards web services, and the XmlHttpRequest laying in obscurity it was only natural that it someone would (re)figure out the coupling of these technologie
        • Besides XMLHttpRequest, there is a way to transfer data between Java and Javascript. An embedded Java applet can communicate with the server which passes values to Javascript. I was using this technique back in ~ 1997 to populate a select box based on input from an input box. I'm in a rush so can't track references to this down, but it should be considered in this history - the AJAX concept has been around for a while. Anyway, I'm only mentioning this because many people don't know about it and the original
    • by badfish99 (826052) on Wednesday May 17, 2006 @09:20AM (#15350116)
      Here's a much better implementation of the same idea that's been available for some time now: http://zk1.sourceforge.net/ [sourceforge.net]

      It's not "beta" like this half-baked "me-too" from google, and it's open-source.Also commercial support is available it you want to pay for it.


    • I think Google is mostly responsible for launching the AJAX trend,
      ...and when you say AJAX trend, you mean the use of XmlHttpRequest, first thought of and implemented by Microsoft, to create responsive web applications that update only the necessary UI elements rather than the whole page, like Microsoft's Outlook Web, for which AJAX was invented.

      Thank goodness there are true innovators like Google to prevent technology from suffocating under the Microsoft Blanket.

      I guess I'm old fashioned enough to focus o
    • > you are coding your website in Java, using their API and SWT-like objects, and the Javascript/Ajax is then generated from your classes.

      Which is also the greatest danger of such toolkits. Once you learn something like this, you know the framework but you know less and less about the underlying technologies. You can learn this framework, or you can learn ASP.NET, or Ruby on Rails, or whatever, which are all very different ways of accomplishing the same thing. I'm not saying that this is bad overall, sinc
      • The problem in this area is that the whole Javascript/AJAX technology is such a ghastly mess: partly due to the web just not being designed to work that way, and partly due to the need to work around the various "features" in various browsers.

        The effect of this is that, if AJAX could only be used by people who understood all the issues of the underlying implementation, then it would hardly get used at all. Toolkits like this will allow 100% of developers to use 90% of the technology, instead of 5% of deve

  • by thealsir (927362) on Wednesday May 17, 2006 @08:45AM (#15349898) Homepage
    Developers are tired of having to reinvent the wheel every time with dynamic components on web pages, and things like PEAR do not have all their component lib. in one centralized location like this. A developer framework for AJAX is definitely a revolutionary. It marks the move toward using web-based platforms for a greater and greater percentage of common computing functions.
  • by ABoerma (941672) on Wednesday May 17, 2006 @08:50AM (#15349924)
    ...welcome our new buzzword-compliant overlords. MFG, all I read these days is Google, Java and/or AJAX.
    • Re:I, for one... (Score:5, Insightful)

      by Ingolfke (515826) on Wednesday May 17, 2006 @08:59AM (#15349990) Journal
      Yeah, lets bring back the good ole' days when Linx, Internet, world wide web, or microcomputer were the buzzwords of the day.

      You people are look old farts complaining about the kids and their music today. Sure there are buzzwords and there is hype, but there always is, so just deal with it.
  • 'cause i'm with this [metawrap.com] blog [metawrap.com] and I won't use it. I've already taken it (and ajaxtags) out of my current project and replaced it with js code based on DWR that won't conflict.
  • by HighOrbit (631451) * on Wednesday May 17, 2006 @08:58AM (#15349979)
    Prohibited Actions

    Except for distributions for internal business and/or personal use to your employees or contractors in compliance with these Terms and Conditions, you may not distribute Google Web Toolkit Development Tools or any services or software associated with or derived from them, or modify, copy, license, or create derivative works from Google Web Toolkit Development Tools, unless you obtain Google's written permission in advance. If you wish to do any of the above, please contact us by emailing apis@google.com. You may not use the Google Web Toolkit Development Tools to develop or distribute products that violate the law or legal rights of third parties.


    No, I'm not looking a gift horse in the mouth and why does this matter? Because I happen to prefer PHP for web development (just a personal preference). It would be nice to be able to move the JavaScript components off from the Java framework into a PHP based framework. Well, apparantly you can't do that without special permission.

    BTW, the Yahoo UI Library [yahoo.com] is BSD licensed.
    • Prohibited Actions

      Except for distributions for internal business and/or personal use to your employees or contractors in compliance with these Terms and Conditions, you may not distribute Google Web Toolkit Development Tools or any services or software associated with or derived from them, or modify, copy, license, or create derivative works from Google Web Toolkit Development Tools, unless you obtain Google's written permission in advance. If you wish to do any of the above, please contact us by emaili

    • by Dorktrix (148287) on Wednesday May 17, 2006 @11:30AM (#15351222) Homepage
      Have your attorney review the terms -- I think you are misunderstanding them. You may not redistribute GWT itself (the actual zip files containing the GWT compiler, among other things), but you own all output from the tools. We even released the source code to the class libraries under the Apache 2.0 open source license.

      GWT is available for commercial, non-commercial, and enterprise use with almost no strings attached. Please review the complete terms for details:

      http://code.google.com/webtoolkit/terms.html [google.com]

      Bret Taylor
      Product Manager, Google Web Toolkit
      • First I want to say "Thank you" for releasing the project for free use and a double "Thank you" for having large portions under the Apache license.

        I figured that the output would be owned by the user, but the terms initially looked like the toolkit itself was restricted except for the parts you got from other projects.

        I opened the tarball and the two jars and have been reviewing some of the files. I see that substantial numbers of the .java files have an Apache license prefixed. Excellent!
  • Wow (Score:3, Interesting)

    by astralbat (828541) on Wednesday May 17, 2006 @09:02AM (#15350001)
    I'm not into fanboyism but this is very very impressive. I took a look at the demos. The Desktop App Clone is particularly very impressive and it shows you what can be achieved with this stuff! I've never liked web development for the compatibility nightmare and plus the fact that it's a very messy business. Java with it's object oriented goodness will allow feature full applications to be developed extremely quickly!
  • by mgkimsal2 (200677) on Wednesday May 17, 2006 @09:03AM (#15350011) Homepage
    The oft-copied 'google suggest' dropdown stuff. It's not something demoed in the 'kitchensink' app they provide at http://code.google.com/webtoolkit/documentation/ex amples/kitchensink/ [google.com].

    I agree with someone else that the Yahoo UI (yui) toolkit seems to get ignored a bit, but I think this plays to a different crowd.

    1) This is a java-based thing only it seems. People writing .net can use atlas for most of these features, people using Ruby or other scripting langauges probably have bindings to scriptaculous and other libraries to handle most of this. There were/are probably Java bindings already for scriptaculous, but this makes it easier for java people already used to swing/awt stuff.

    2) The YUI stuff was more javascript oriented, and, from my experience, difficult to use in some settings. I had a hard time getting the slider stuff to work as needed based solely on their code and one example page, for example. Perhaps that makes me not as l33t as some others who can debug others' javascript in their sleep - I dunno. I do know that if Google makes this easy for people to adopt, it'll take off. Partially because there's a lot of google love amongst early-adopters in the tech community, and partially because making things easy is just a good way to attract people. :)

    3) With the YUI stuff, Yahoo was/is seeming to cater to the scripting crowd more (witness the native serialized PHP responses you can get back). If google is going after the "I write Java apps" crowd, they may be able to bring in a new set of people to web-app development who before now were not in the web space.

    I interviewed one of the Yahoo engineers who worked on the YUI widgets release at my podcast - http://webdevradio.com [webdevradio.com] - you can get some more perspective on what Yahoo was/is doing and trying to achieve with that move.

    Just some random thoughts...
  • Take notes all.. (Score:3, Interesting)

    by boxxa (925862) on Wednesday May 17, 2006 @09:03AM (#15350012) Homepage
    This is great news for all the developers out there. Google by doing this has proved once again that smart business practices and investments make a company, now how much software they patent and lock down. They specfically say that you can create applications like Google Maps and Gmail using their framework. Is someone gonna create a new Gmail or seach engine and take over Google? Prolly not, but Google has shown that not only can it develop high power applications and set the footprints for following developers, but they can also help the community advance just as they have. Just one of the many reasons I love Google.
  • YUI (Score:3, Interesting)

    by mattwarden (699984) on Wednesday May 17, 2006 @09:12AM (#15350053) Homepage

    This impressive framework promises to make AJAX available to the masses and is one more step towards Google becoming the de facto Internet platform provider."

    Erm, actually they're playing catch up. From what I can tell, GWT is rather inferior to YUI [yahoo.net].

  • Already Been Done (Score:2, Interesting)

    by TedCHoward (920331)
    This is an impressive toolkit and a nice approach, but Google is not the first to do this. Has anyone heard of ThinWire (http://www.thinwire.com/ [thinwire.com])? There are already production applications in place built on this framework.
  • Google a Java shop? (Score:4, Interesting)

    by lonesometrainer (138112) <vanlil@NOsPAm.yahoo.com> on Wednesday May 17, 2006 @09:30AM (#15350176)
    I didn't know Google was a Java shop. Do they mainly code serverside stuff in Java these days? If so, which technology are they using (O/R mapper, servlet container, tricks & quirks). Would be interesting to know.

    Any infos?
  • Go google (Score:2, Funny)

    by SoulRider (148285)
    It's really nice to see a company releasing new products to stay competitive instead of using litigation to destroy their competitors. I hope they can keep it up.
  • This is a lot of code to pick apart -- can someone post a concise summary of what can be done with the Apache licensed gwt-user.jar part [google.com], versus the "You may not redistribute" parts?

    --
    Slashcode bug # 497457 - unfixed since December 2001 - Go look it up [sourceforge.net]!

  • I was all excited to start learning to do AJAX the Google way (Because I really don't have time to navigate the browser incompatibility minefield). I pulled up a demo in IE7... Blammo, error on page.

    I'm excited for this tool, but I can't use it yet. Bummer.

    ~D
  • Genius (Score:2, Insightful)

    by el_womble (779715)
    There is a certain amount of genius in this. For years I've wondered what the best way to combine HTML/Javascript and OO language is, and now it seems obvious: create a tool kit that structures and generates the HTML for you, just as a window toolkit handles it for you. Genius.

    I've never been a big fan of % languages. Mixing HTML and anything always looks, bad and fails misrably at seperating code from presentation. Seperating code from presentation on a dynamic page is impossible, but sticking the code in
  • by neveragain4181 (800519) on Wednesday May 17, 2006 @09:57AM (#15350364)
    From: http://code.google.com/webtoolkit/faq.html [google.com]

    "What's the catch? Does Google own my GWT application? Do I have to run AdSense? Do I have to give Google my first-born child?

            There's no catch, we promise. See the Terms of Use for the nitty gritty details."

    I checked the ToU, apparently you have to make Adsense space on your *second* born child. Premium crib space is up to eCPM of $0.42 cents too, diapers down to under 10 cents.

    Very clever of them, I bet most people wouldn't check...
  • by Kent Brewster (324037) on Wednesday May 17, 2006 @09:58AM (#15350372) Homepage Journal
    From the top paragraph of the Google Web Toolkit [google.com] page:

    JavaScript's lack of modularity makes sharing, testing, and reusing AJAX components difficult and fragile.


    Beg to differ. JavaScript has just as much "modularity" as any other object-oriented language; methods like JSON [json.org] and libraries like Dojo [dojotoolkit.org], Prototype [conio.net], and the aforementioned Yahoo! Web Services APIs [yahoo.com] are proof.

    Every few years there comes along Yet Another Initiative to fire all the webdevs. No disrepect to Google's engineers, who are clearly brilliant, but we've been there [microsoft.com] and done that [adobe.com]. For a good time, open up Firefox's DOM Inspector, crack into their Kitchen Sink demo [google.com], and boggle over the iframes and tables and embedded JavaScript, oh my!
  • by yagu (721525) * <yayagu.gmail@com> on Wednesday May 17, 2006 @09:58AM (#15350374) Journal

    I haven't heard anyone comment about what I think is a great feature in this toolkit:

    Browser history management:

    No, AJAX applications don't need to break the browser's back button. GWT lets you make your site more usable by easily adding state to the browser's back button history.

    I know this is something you can hack together if you're writing your own hand-crafted js, but this will be a nice feature -- I haven't looked at the toolkit yet, but I wonder how easy to use this will be.

    Have any of the other frameworks provided this mechanism?

  • by mogrify (828588) on Wednesday May 17, 2006 @10:01AM (#15350393) Homepage
    I wonder how difficult it will be to write degradable applications with this toolkit. The demo applications I played with do nothing at all with javascript disabled... they're just a script tag in a body tag, so they make no attempt to render the application using plain HTML. I know they're just demos, but it won't save any time if you have to develop the non-js version separately... which is a problem particularly for those of us who have to develop to accessibility standards.

    Also, this is coming right on the heels of the buzz about Oracle's AJAX Framework [slashdot.org]... and of course there's the Eclipse AJAX Toolkit Framework [eclipse.org], which uses Dojo [dojotoolkit.org], Zimbra [zimbra.com], and OpenRico [openrico.org] (which in turn uses prototype [conio.net])... others have mentioned Yahoo!'s toolkit and Atlas, as well, not to mention Rails... My point is that there are suddenly a ton of frameworks that all have slightly different approaches to the whole AJAX idea. Some are higher-level, some lower; some target a specific server backend; some offer UI libraries... Any or all of these might merge or die off or be made irrelevant at any time. It's almost harder to develop AJAXy applications now than back when you had to write your own HTTP request code... sure, you can knock one out in ten minutes now, but you spend the time you saved choosing the toolset beforehand.

    I think I'll wait a bit... we've put the scorpions in the box and shaken it, so let's see who survives.
    • ... Any or all of these might merge or die off or be made irrelevant at any time...

      That's true but as long as you choose an OpenSource framework (I prefer Dojo) you can support it yourself at least long enough until you've converted all your code to a new framework. If you choose any proprietary framework (like Google's) even if it doesn't cost anything you don't have this way.

      O. Wyss
  • by MartinG (52587) on Wednesday May 17, 2006 @10:01AM (#15350396) Homepage Journal
    Coding your UI in java and having it translated into javascript and html without having to worry about cross browser compatibility?

    Sounds familiar. It's rather like the echo framework [nextapp.com]

    The big differences I see are:

    1) Google toolkit advantages:
    - No load on the server to render the UI. All ui code runs on the browser, so this may help server scalability.

    2) Echo advantages:
    - Fully open source.
    - Richer set of ui components (IMO - see the demo at http://demo.nextapp.com/Demo/app [nextapp.com] )

  • by IamTheRealMike (537420) <mike@plan99.net> on Wednesday May 17, 2006 @10:02AM (#15350403) Homepage
    Are they using this for their own webapps?
  • by QuantGuy (654249) on Wednesday May 17, 2006 @10:08AM (#15350451)
    ...when Google started vacuuming up a lot of stray Java talent? I'm thinking of folks like Josh Bloch (author of Effective Java, one of the best books I've ever read on Java) and Adam Bosworth (former CTO of BEA). I was always sort of curious about what Google was up to. I've got no proof that either of these gentlemen we involved in GWT, but I'd be surprised if they weren't. Good job, Google.
  • by Jugalator (259273) on Wednesday May 17, 2006 @10:21AM (#15350551) Journal
    Note that this toolkit primarly seem to try solve the problems of browser quirks, more efficiently design web sites using AJAX, and do remote procedure calls, not really to leverage the power of Java development and its language to web developers and Javascript.

    The Google Web Toolkit supports only a small fraction of the Java Standard Library and seem to be able to replicate the functionality of only a few classes through its emulation library.

    This is the stuff from the Java libraries that you can use and have it be able to "translate" your work: java.lang classes [google.com] and java.util classes [google.com].
  • I haven't dug all the way through this yet, but I'd assume you can't just turn any old Java app into HTML+JS web app. I doubt there's support for the Swing API or even the SWT (though it looks at first glance to be based more off of SWT?). Am I right to assume you have to use their UI classes to get this to work? Other than that does it support using the rest of the API?
  • I keep seeing the phrase "Internet platform". Is there a coherent definition of this phrase? Or is it another of those phrases like "Web 2.0" that means whatever the writer wants it to mean, and is just used to impress the newbies with something that sound technical but isn't?

  • by drew (2081) on Wednesday May 17, 2006 @10:40AM (#15350729) Homepage
    I suppose that's nice if you actually like programming in Java.

    I'll stick to rolling my own, thanks. I suspect I wouldn't be able to use a tool like this for more than a half hour without finding something I want to do that the toolkit doesn't support. What then? Can you edit the JavaScript output by hand or is it totally obfuscated?
  • Lisp Macros (Score:3, Interesting)

    by psicode (857306) on Wednesday May 17, 2006 @11:08AM (#15350985) Homepage
    I am surprised that no one has yet brought up lisp macros which can be used to develop a similar framework. Code can be written in Lisp and compiles/generates to javascript. See http://www.cliki.net/Parenscript [cliki.net] and http://www.cliki.net/jsgen [cliki.net] for implementations in common lisp. The problem I see with any form of generated javascript is that it will be hard to debug should something unexpectedly go wrong.

"Our reruns are better than theirs." -- Nick at Nite

Working...