Google Data APIs Java Client Eclipse Plug-in : Create projects in seconds
I’m pleased to announce the release of an Eclipse plug-in for new developers using the Java Client Library for Google Data APIs.
This plug-in aims to minimize the overhead involved in setting up external Java dependencies and in getting started with a new API released in Java client library. The plug-in lets you download the external dependencies automatically. It also creates boiler plate code to interact with the API that you are interested in. This provides an easy way for all the newbies to quickly start developing code using many of the Google Data APIs.
Curious how to use this plug-in? What are you waiting for? Checkout the project page and the wikis (especially the usage wiki ).
Note: This is an open source project and contributions are welcome.
(Via Google Data APIs Blog.)
Ojay 0.2: easy keyboarding, a validation DSL, and two new UI widgets
James Coglan has updated Ojay, the chaining wrapper for YUI that we posted on a few months back.
The new release features really simple keyboard and form scripting and couple of new UI widgets, a new event system and a stack of other improvements:
Ojay.Forms. By far the biggest new package, Ojay.Forms sorts out a real pain point for me in terms of app development. It does two things: it provides unobtrusive replacements for the YAHOO.widget.Button family of classes, and it provides a DSL for handling form validation and Ajax submission.
Ojay.Keyboard. The new keyboard package is an abstraction over YAHOO.util.KeyListener that lets you say what mean without worrying about character codes, for example:
Ojay.Keyboard.listen(document, 'ALT SHIFT S', function() { // handle key press });It lets you group sets of keyboard commands together so you can make context-sensitive keyboard controls, and gives you easy access to enable/disable key events and their default browser responses. Not much more to say except that you should check out the documentation.
We have two new UI packages, Ojay.Overlay and Ojay.Paginator. Overlay gives you a bunch of classes for positioning content on top of the document, producing lightbox effects and the like, and Paginator implements the content slider effect that’s got a lot of attention recently, including the ability to lazy-load pages of content via Ajax, and easy integration with Ojay.History. Both packages come with a collection of events to allow your code to react to changes to the components, just like you would for DOM elements.
Speaking of events, this release introduces Ojay.Observable, a JS.Class module that allows any class to support the on() method used for listening to events. This module underlies the custom events published by all the Ojay components. More information and examples are in the documentation.
(Via Ajaxian.)
EclipseLink 1.0 Released
The Eclipse Persistence Services project (EclipseLink) has completed its incubation phase and the 1.0 release is available for download. This release completes the transition of the persistence functionality developed in Oracle TopLink to being fully developed and maintained as an open source project at Eclipse. This also signifies the first release of a project under the recently created top-level Runtime (RT) project at Eclipse.
(Via Eclipse In The News.)
GFX 2.0 Implementation Overview
Hi dojoers,
As mid evaluation comes, I am prepared myself with a document to give brief explanation about my implementation. It is provided class diagram, sequence diagram, some explanation for each component and screenshot about some demonstration.
You can find about:
- Design Document
- Implementation Overview Document
- Simple Class Diagram
- Detailed Class Diagram
- StarUML Project File
- Latest Test Page
- GFX 2.0 Zip File
Note
- For maximum quality, please zoom the PDF document to 150%.
- Opera test page is buggy, pre-defined script does not want to load. Anyone know how to solve this?
- Please right click and choose save target as for downloading StarUML Project File.
I would really appreciate if you can provide me suggestion, opinion or critics! Thanks!
(Via The Dojo Toolkit blogs.)
Dojo, floating on AIR
Today SitePen, Inc. announced the release of a co-sponsored “demo” utilizing Adobe’s AIR runtime and The Dojo Toolkit affectionately named “The Dojo Toolbox“. Don’t let the term “demo” fool you though, this thing is a fully functioning application providing a pluggable API built around the question “what can be done offline to better Dojo?” … As you probably know, AIR provides a plethora of functionality not present in standard browser applications, and Dojo is the perfect toolkit to fully take advantage of the potential. From offline storage to native window interaction (which seems to fall perfectly in line with the idea of templated widgets, especially in “chromeless” mode) to the remote update capabilities of AIR, realizing powerful desktop-based cross-platform applications has never been easier. I can’t begin to confess how excited I am about being to use the stuff I know (html/css/js/Dojo) in the realm of Desktop application, so I won’t even try.
Enough jabbering … on to the good stuff! You can skip my wordiness and view the screencast Kevin Dangoor made up, or read along with the quick-and-dirty rundown from the SitePen press release:
Offline API documentation
The entire Dojo API Documentation has been taken offline and converted into a searchable index. Every piece of the public (and private) API in Dojo is now available on your desktop for browsing. Doc updates come out? No problem,
the application can be remotely updated anytime a new version of Dojo is released.
Build utility
The power of the Dojo build system has been ported to AIR. You can target an existing build profile, define common options, and build your dojo.js and layers all from a simple UI. Upcoming (planned) features include: ShrinkSafe web service (you can’t run Java from within AIR, so no ShrinkSafe is available just yet) to compress your code, as well as a custom Profile maker.
Quick Resources
Many vital resources are found in this simple Toolbox plugin giving you handy access to the most current and most important resources available for Dojo. One oversight in the 1.0 release the absence of a link to DojoCampus, though the automatic updating nature of the application means it will likely appear shortly.
Looking Forward
The application was released under a BSD license and is fully open source. SitePen has setup a dedicated mailing list to discuss any issues or enhancements about the Toolbox, so signup and throw some ideas out. What kind of cool mini tools can you imagine floating around on AIR to make your web-dev experience easier? I’m thinking of a set of pixel calculators/rulers to overlay and inspect layout nitpicking … The potential is endless.
Thanks be to Adobe and SitePen for their support of Dojo and Open Source Software. I can’t wait until other tool ideas start popping up …
(Via The Dojo Toolkit blogs.)
qUIpt: caching JS in window.name

Mario Heiderich has released qUIpt, a library that uses the window.name property to store away useful data, in this case JavaScript.
How does it work?
- It checks for the contents of window.name while your page is being loaded.
- If there’s nothing inside the window.name cache the JS files defined by you are fetched via XHR
- The same happens if the users enters your site for the first time of his current browser session or if document.referrer is off-domain or empty
- After that the contents of window.name are being evaluated
- If the user requests the next page on your domain the JS files are directly taken from window.name – no more requests necessary
You can check out an example of it at work
(Via Ajaxian.)
Orbited 0.5.0
You may have noticed the lack of a 0.4.x release. We tried to make a number of improvements for 0.4.x, but ultimately we never thought that branch was stable enough to release. The 0.5.0 release, on the other hand, is the most stable and feature-rich version of Orbited yet. This is a pre-announcement that should give you a day or two notice and some information about porting your app to 0.5. You can expect the official release announcement over the next couple of days.
While we still support the old orbited protocol, there are a couple of differences when using Orbited 0.5.x with 0.3.x applications:
- orbited.js still contains an Orbited.connect function, but this function now may takes only two arguments: event_cb and token. Orbited connections are now identified by a single token string. If you provide multiple arguments, the javascript client will simply concatanate them with commas in between.
- when you use an orbit client to send data from your web application, the list of recipients should just be strings that exactly match the token used from the javascript
- There is no proxy. Instead, Orbited.connect will just work in all browsers cross-port and cross-subdomain.
- You need to specify where the orbited server is via javascript globals. ORBITED_DOMAIN = ‘127.0.0.1′; ORBITED_PORT = 8000; for example.
Porting an application from the previous version to the new one shouldn’t be hard. They should work out of the box after changes the include from /_/static/orbited.js to /static/orbited.js; adding ORBITED_PORT = 8000; and not using the proxy any more.
This backwards compatibility is a convenience only — Orbited has changed focus away from the 0.3.x architecture. Instead of acting as a simplistic message queue that can route messages to the browser, Orbited is instead a socket proxy. It exposes a TCPConnection to javascript, and relays packets via actual, raw TCP connections on the back end. This way you can use Orbited as a means to talk directly between an out-of-the-box IRC server and the browser. Indeed, in the /static/demos/chat directory you can see an example of connecting directly to an IRC server from javascript.
This new architecture is much better at integrating a browser with arbitrary network servers. Another benefit is that we can connect the browser directly to a message queue, such as ActiveMQ, and use the topic (publish/subscribe) and queue semantics provided out of the box. Furthermore, ActiveMQ comes with a configurable replication strategy out of the box. Take a look at /static/demos/stomp for an example of publish/subscribe with Orbited+ActiveMQ.
(Via Orbited Blog.)
Ext GWT v1.0 Released
The Ext team is proud to announce that the official release of Ext GWT v1.0 is available for download. This is the first release of Ext GWT which is the culmination of many weeks of development from the Ext development team as well as our community of testers and supporters.
(Via Ext JS Blog.)
Google Talk for iPhone
Our busy mobile team is at it again, coming up with cool new iPhone stuff: check out Google Talk for iPhone, now available!
(Via Official Google Mac Blog.)
Flash Player 10 Beta 2 Released on Labs
A new prerelease version of Adobe Flash Player 10, code-named “Astro,” is now available for download on Adobe Labs. Beta 2 includes the following new features:
- Enhanced Sound APIs
- Linux WMODE
- Video4Linux v2 Support
- unloadAndStop
- Limited Fullscreen Keyboard Access
A complete list of features and fixed issues can be found in the updated release notes.
(Via Adobe Labs.)

leave a comment