Skip to main content

Rich Internet Application & GWT : Angel of Java Programmers

We all are hearing the buzz about Rich Internet Applications (RIA) about a year or so. But, what the heck is that beast? You may ask. For the user's perspective, it's the desktop like experience delivered over web. Yes, you feel like you are using a real desktop application (well, at least sort of). The richness of desktop controls is transferred to web.

How RIA is build? Arise another question. These all started with that amazing kid called AJAX (Asynchronous JavaScript And XML). Then more and more tools become available, like Java FX, Adobe Air, Adobe Flex (and Adobe Flash), Microsoft Silverlight. But these tools, though it gives rapid and organized web application development, required some kind of plug-ins to be installed on your browser. There is the importance of AJAX based RIAs, because JavaScript is enabled in almost all browsers in use today.

However, It's not a fool proof solution, because there are people who switch off JavaScript for some reason, like me ;-).  But it's still far more effective. To develop a RIA with JavaScript we can use jQuery, Moo-tools, YUI, ExtJS etc., frameworks, if you are a JavaScript ninja . Only because I'm not, but still eager to try my hand on RIA, I looked for another solution. There is GWT.

What is GWT? It's Google Web Toolkit. Another amazing product from Google Inc. It let us write RIA in Java (Yes, Java, Sun's Oracle's) Let GWT compiler do the translation of your beautiful Java code into JavaScript, CSS and bootstrap HTML. That said, a little experience in JavaScript, CSS & HTML will not hurt at all.

Where we are heading to? Great question. I'm glad you asked this. As you see this far this isn't a tutorial or intro (it's too late..) of RIA. I'm here to show you some snaps of my GWT based project done at January 2010. Due to some reason, I forget to post about it.

Why I choose GWT? Sites I love, use GWT, Google Wave, Gmail, new Orkut

Here it's, It uses, GWT, Hibernate JPA, Ext GWT etc.,





Update: Later, I thought I haven't given anything useful. So here it's.
Even though project look(and is) simple, it's a considerable learning experience for me. I learned many things, not to mention GWT and related libraries, I learned bits of web programming in Java. Till then I only coded for desktop, through this project I'm introduced to Java Servelets, bits of JSP, concepts like ORM, Hibernate, JPA, RIA, GAE and ExtJS library. All this within 2-3 months.

Working Demo

URL: http://safelymanage.appspot.com/
User Name: demo
Password: demo

It's a RIA application, so make sure JavaScript is enabled in your browser.
I managed to change code to work partially on GAE. You can see the UI. However, you can't do anything useful. Because, I haven't got time to change Control Layer to work on GAE. (Model and View are functional.
Also,It's a different theme and less aesthetically pleasing than one in above slide show (actual project.)

Comments

Popular posts from this blog

AJAX File Upload with Web2py

It was not that long, since I experienced a problem while trying to upload a file using an ajax  trapped form. I thought, it must be me doing something wrong. I was using web2py  to embed another page into a page via ajax. That is better known to web2py folk as LOADing a component. It's just happened that one of such component contains a file upload form. It was my first time using LOAD function provided by web2py. Basically it make use of jQuery to load the page via ajax into a target div and traps input of any form in that page, so that page doesn't reload. Oh, I forgot to say that web2py is bundled with jQuery. It's always boring and tedious to understand a problem without experiencing it. So, Let's play with an example, (PS: I"m using web2py a full stack python framework, but you can use any language at server side and this problem will be there because, it's a problem with ajax) My mod...

My First Python Program

I am very glad today. Because I finally wrote a python program all by myself. I am programming for about 3 years. Of which 2 are using C++ (Old standard and using Turbo C++ IDE ver 3.0 and yet to master Templates and STL. [:-p]) and After starting python using Dive into Python an excellent book by Mark Pilgrim during my 1st year summer vacation, and I only completed Data Structure section. Then I found an excellent Java tutorial by Sang Shin and obtained a certificate by completing First and basic course in Java. Now I am working with My Friend to develop applications in java. We established a web site already. He started programming when he is in 10, ie. more than 2 years of experience. He has Visual Basic too in his side. Now he is doing with JSP and I am concentrating on Python, Ruby (yet to start) and CSS. Today My pleasure is that I completed a python program myself. Which is asked to do in ' A byte of Python ' by Swaroop.C.H. Which is a command line program; and he...

My Conky Configuration File

Edit :                         (Aug 17, 2013) All my configurations including conky's are now hosted at  https://github.com/kra3/dot_files I've been hearing about this conky for a long time. I think I tried it once in my 5 years of linux experience. But, I haven't experienced it till last day. Conky is a system monitor originally based on torsmo! What the heck is this "torsomo"? Honestly, I don't know. Le me google that for you.... Torsmo is a system monitor that sits in the corner of your desktop. It's very simple, customizable and it renders only text on the desktop (and percentagebars if you want it to ;) and the only lib it uses is Xlib. Torsmo can show various information about your system and it's peripherals, including: Kernel version Uptime System time Network interface information Memory and swap usage Hostname Machine, i686 for example System name, Linux for exampl...