Yahoo YUI integration with GWT

I'm working on this mostly to get familiar with JSNI and structuring in GWT. The sample is far from complete, but it's enough if all you want is the JSNI to interface with YUI's DragDrop. All you need to look at are the Draggables and Droppables classes and the DragDropListener interface.
The code is grossly over-complicated for its intended function, but I don't really care since I'm trying to familiarise myself with a few concepts.

Download the sample app here.

I'm hosting the download on geocities (for the moment) which has a 4MB per hour limit on downloads. I doubt I'll hit that but I figure you should know, just in case...
I'll be posting updates as I work on the code. All the zips are date-time stamped; I guess that'll work just fine as a version number.

You'll also need to download GWT if you want to try it out for yourself. You'll need to change the path in the GWT shell launcher batch file in the sample to point to your GWT install directory.

Update: 20061124, 0200
I created a code.google.com thingie. Pretty painless, compared to Sourceforge. And it uses Subversion (hurray!). Of course, there's no built in distribution mechanism like Sourceforge has - not that I could find anyways. I'll add the date-time stamp to the changelog. Check it out; no pun intended. - http://code.google.com/p/ygwt/

Update: 20061124, 2315
This is in response to Andy's comment:


Andy, here is a shot of how the GWT shell looks after launching the app from the batch file. For me, the 'deprecated hosted mode' message is just a warning, not an error. I've built this example with 1.2.22 too. Is it possible you're getting an exception somewhere further down the line?

Update: 20061129, 0130
I've been checking code into the Google Code repository fairly often. Will produce another downloadable sample when I've finished the contraints for the drop area grid.

Update: 20061218, 2115
I'd been unable to run unit tests on this IDEA project for a while (it would just refuse compile) and it'd been annoying me no end. Well I found the solution buried in the fifth reply to a post on the GWT mailing list a couple of weeks ago... all I had to do was add

<inherits name='com.google.gwt.junit.JUnit'/>

to my gwt.xml - so now I'm chugging away with unit tests! Forgot to post this update earlier. This code sample now seems to also be describing my understanding of MVC and how to implement it in GWT. I'm doing a fair amount of refactoring as my understanding progresses. It's a bit over-designed given the simple nature of the problem, but it's fun to try new ideas out.

4 comments:

Unknown said...

Hi,

Just tried it in hosted mode but get an error about a deprecated servlet path mapping. Says URL is not module-relative /Dbservice. What version of GWT did you use to build the app? I am using 1.2.22.

Thanks,

Andy.

Somebody Else said...

A couple of things:

1) File Storage
There's a couple others like Box.net coming out too.

2) Sweetness
"yui.ext is a set of widgets and utility classes that build on the excellent foundation provided by the Yahoo! UI library."

seba said...

I'm working on http://code.google.com/p/yuigwt/ - a YUI 3 Java API for GWT - see the example gallery with Java sources : http://cancerbero.vacau.com/yuigwt/

seba said...

I'm working on http://code.google.com/p/yuigwt/ - a YUI 3 Java API for GWT - see the example gallery with Java sources : http://cancerbero.vacau.com/yuigwt/