gentoo linux, java, software libre y otras hierbas
Sep, 20 2007 - 1:24 pm

Tutorial de Introducción al Google Web Toolkit

GWT segun yoPara los que no sepan de que va el rollo… Google Web Toolkit es un frame work desarrollado por Google, que nos permitirá crear aplicaciones web en AJAX, programando en Java. AJAX (cuyo significado es Asynchronous JavaScript And XML) es muy popular por estos tiempos, ya que permite crear Webs dinámicas, y asíncronas, esto quiere decir que podemos realizar cambios en la página sin necesidad de recargarla. Un ejemplo de AJAX, es Gmail o Google Reader.
En verdad había oído hablar de GWT en algunas ocasiones, pero no había tenido el tiempo para estudiarlo un poco. Y debo decir que, después de estudiarlo un poco, me deja gratamente sorprendido. Lo único que no me gustó, es que hay muy poco material en español. Es por esto que he escrito un tutorial de Google Web Toolkit en castellano, basándome principalmente en la documentación oficial, y estoy seguro que le será muy útil a las personas que deseen iniciarse en el tema.

De momento no tiene todo el contenido que me hubiera gustado incluir, pero para comenzar está bien; la idea es continuar ampliando su contenido. Además no le he pasado ni una revisada con el corrector ortográfico, y si bien considero que tengo buena ortografía… no soy una máquina y probablemente haya errores. El documento queda licenciado bajo la GFDL, por lo tanto son libres de modificar, copiar y distribuir con o sin ánimo de lucro, siempre y cuando se cumplan las condiciones que la misma licencia exige.

Descargas (versión 1.0)

Etiquetas: hack, java

51 Comentarios | deja el tuyo

2 enlaces entrantes

49 Comentarios en “Tutorial de Introducción al Google Web Toolkit”

  1. Mary dice:

    Hola, ya he logrado echar a andar varios ejempos de tutoriales que he encontrado y me han proporcionado con GWT y Eclipse. Cosas sencillas, tareas con widgets, ahora mi tope es la impleemntación de servicios (rpc) en GWT; ya chequé que provee dos mecanismos: GWT-RPC y la clase RequestBuilder. sin embargo he encontrado, leyendo, varios inconvenientes si me decido por GWT-RPC, por lo cual necesito hacerlo implementando la clase RequestBuilder, sin embargo no encuentro suficiente documentación; considerando que soy principiante, ponen los fragmentos de código, pero yo hasta ahora no ubicu bien dónde debo crearlos, dentro de toda la estrucutura del proyecto si los debo manejar por seprado, o dentro de la clase principal, donde implemento Entry-point, puedes sugerime algo, o tienes algún recurso.
    De verdad te lo agradeceré mucho, espero estés mejor, se te extraña mucho

  2. joser dice:

    Hola
    tengo muy poca experiencia y quisiera pedir tu ayuda. Ya descomprimí el archivo y cada vez que lo abro me aparece una ventana con fondo negro y desparece rápidamente y ya
    gracias por la atención saludos

  3. MaryG dice:

    Hola, bienvenido, no sé si aún te sirva la respuesta; parece que don ‘casidiablo’ anda ausente, no s’si te pueda ayudar en algo; tampoco soy experta, pero en mi inexperiencia ya me tocado lidiar con varias dificultades, pero creo que bien vale la pena, empezemos: ¿Qué es lo que estás o estabas intentando abrir exactamente?. Supongo descargaste GWT, tienes la opción de trabajarlo desde CLI (interfaz de línea de comandos), habrás visto ya la parte de lso comandos applicationCreator/projectCreator; o, apoyandote con algún IDE como Eclipse o Netbeans… bueno, eso es sólo para empezar, todavía hay más, pero la dejo aquí hasta el momento, porque por la fecha de tu pregunta no sé si sea aún oportuna esta respuesta… hasta pronto!

  4. Casidiablo dice:

    Gracias por el aporte Mary, a veces no puedo con todo ;)

  5. MaryG dice:

    Hoola-hola!, qué crees ‘casidiablo’, tengo un mínimo problema, que me temo no debería incluir aquí, ya que el espacio está dedicado a GWT, pero dado que no lo compendo y sé que tú puedes ayudarme, me atreveré a continuar.
    Estoy tratando hacer un programita bien sencillo para calcular la distancia entre dos puntos, con la fórmula matemática conocida. Este es el código:

    import java.lang.Math.*;

    public class DistanciaEntrePuntos {
    //variable de la clase DistanciaEntrePuntos, para guardar la distancia:
    static double dist;

    public DistanciaEntrePuntos(){
    }

    //clase interna para el punto1
    public class Punto1{
    //coordenadas para el punto1
    public double X1, Y1;
    //Constructor de la clase Punto1
    public Punto1(double X1, double Y1){
    this.X1 = X1;
    this.Y1 = Y1;
    }
    }

    //clase interna para el punto2
    public class Punto2{
    //coordenadas para el punto2
    public double X2, Y2;
    //Constructor de la clase Punto2
    public Punto2(double X2, double Y2){
    this.X2 = X2;
    this.Y2 = Y2;
    }
    }

    //Este main corresponde a la clase DistanciaEntrePuntos
    public static void main(String[] args) {

    DistanciaEntrePuntos d = new DistanciaEntrePuntos();

    *Punto1 p1 = new Punto1();
    *Punto2 p2 = new Punto2();

    dist = java.lang.Math.sqrt(java.lang.Math.pow(p2.X2-p1.X1, 2d) + (java.lang.Math.pow(p2.Y2-p1.Y1,2d)));

    System.out.println(“La distancia entre los puntos es: ” + d.dist);
    }
    }

    Y este el mensaje que me aparece en el editor de código (sobre las líneas con *):

    No enclosing instance of type DistanciaEntrePuntos is accesible. Must qualify the
    allocation with an enclosing instance of type DistanciaEntrepuntos (e.g. x.new A()
    where x is an instance of DistanciaEntrePuntos).

    No entiendo, cuál es el problema?. Me imagino que debe tratarse de algo relacionado con las clases inner, puedes resonder?

  6. Cristian dice:

    Mary, entre otras cosas, tienes los siguientes problemas: estas intentando iniciar un objeto (Punto1 y Punto2) con un constructor que no existe.

    Checa eso ;)

  7. MaryG dice:

    No pues sí, eso a simple vista, sucede que he estado modificando el archivo, y al parecer no te envié la versión con los problemas, pero para esas líneas tenía:

    Punto1 pt1 = new Punto1(5.0,3.0);
    Punto2 pt2 = new Punto2(2.0,4.0);

    Gracias

  8. Cristian dice:

    Reemplaza:

    public class Punto1

    por:

    public static class Punto1

    Lo mismo para Punto2. A mi me funciona ;)

  9. Sara Garcia añez dice:

    quisiera saber si me puden ayudar sore como puedo hacer que en gwt se muestren los datos de dos tablas diferentes en un mismo grid, como puedo insertar un boton en una columna de ese mismo grid, porfa ayudenmecon un codigode ejemplo o algo.
    Gracias.
    Sara

  10. Sara Garcia añez dice:

    Me puedenn audar??
    Gracias.
    Sara

  11. MaryG dice:

    Hola Sara, yo no sé mucho, por que también me estoy iniciando XD, sin embargo con ayuda de foros –como este–, y un amigo, que precisamente hice preguntando sobre el tópico he estado checando algunas cosas. En primera instancia yo te puedo decir que es complejo GWT, pero bien la pena los resultados… Actualmente yo lo estoy probando usando como IDE Netbeans, porque Eclipse me pareció tedioso, me pedía agregar plug-ins para muuchas cosas… yo te recomiendo Netbeans, y fíjate que hay una biblioteca muy atractiva Gwt-Ext, junto con ext-js que le dan una apariencia aún más atractiva a tus GUI (Interfaz Gráfica de Usuario)…
    Dudo que encuentres un código como el que pides, no por complicado,… ¿qué te parece si empiezas probandolo tú misma?

    Mira te dejo la liga de Gwt-Ext, incluso ahí viene el demo, y para cada widget trae su codigo fuente para que te bases en los ejemplos: http://www.gwt-ext.com/demo/

    Si eres primeriza, lo que te recomiendo es paciencia, así nos pasa… ¡hasta pronto y mucha suerte!

  12. ecg86 dice:

    quetal, MaryG, creo que lo que necesitas es algo como esto:

    public class Distancia {

    static class Punto {
    private double x;
    private double y;
    public Punto (double x, double y) {
    this.setX(x);
    this.setY(y);
    }

    public void setX(double x) {
    this.x = x;
    }
    public double getX() {
    return x;
    }

    public void setY(double y) {
    this.y = y;
    }

    public double getY() {
    return y;
    }
    }

    public static void main (String []args) {
    Punto punto1 = new Punto (2.0, -1.8);
    Punto punto2 = new Punto (2.0, 1.8);
    double dx = punto1.getX() – punto2.getX();
    double dy = punto1.getY() – punto2.getY();
    dx *= dx;
    dy *= dy;
    double distancia = Math.sqrt(Math.abs(dx + dy));
    System.out.println (distancia);
    }
    }

  13. Andres dice:

    mira tengo un sitio construido en gwt,y el problema que tengo es que se demora mucho en carga.

    me puedes colaborar.

    gracias

  14. Cristian dice:

    Puedes intentar depurar tu sitio para ver que es lo que se demora tanto, te recomiendo usar este debugger:

    http://getfirebug.com/

    Un saludo.

  15. Mon dice:

    Hola, me ha surgido un problema a la hora de empezar a trabajar con GWT. En principio no tengo problemas para crear los proyectos, sin embargo no consigo utilizar una librería externa. La librería en cuestión se encuentra en http://code.google.com/p/gwt-gchartjava/ , la añado a mi proyecto en Eclipse sin problemas, pero al ejecutar en modo hosted ocurre un error:

    [ERROR] Line 45: No source code is available for type com.googlecode.client.Data; did you forget to inherit a required module?

    No se exactamente como tengo que indicarle que tiene que cargar la librería.

    Un saludo.

¡Déjanos tu comentario!