Google Web Toolkit
•
• http://twitter.com/kaiseh
• http://d.hatena.ne.jp/kaiseh/
Blogopolis




http://blogopolis.jp/
• GWT
• GWT
• GWT
GWT
Google Web Toolkit


• Google   Web

• Java           Ajax
Ajax

• JavaScript
  • jQuery, Dojo, mootools, ...
•
  • Firebug, IE Developer Toolbar, ...
Ajax

• JavaScript
•
• Eclipse, NetBeans   IDE
GWT
• Java                        JavaScript

• java.lang.*, java.util.*          Java API

• JavaScript
  ✓                          Java
GWT

•
•
•
•
GWT
•
    • CPU
    •
• HTML5
  • Canvas, WebSockets, Web Storage, ...
  • JavaScript     RIA
WebGL + GWT




         Quake II GWT Port
http://code.google.com/p/quake2-gwt-port/
GWT
Google Plugin for Eclipse


• GWT         GAE
    Eclipse

•
Google Plugin
GWT         GAE
Button sendButton = new Button(“send”);
TextBox nameField = new TextBox();
Label errorLabel = new Label();
...
panel.add(nameField);
panel.add(sendButton);
...
sendButton.addClickHandler(
      new ClickHandler() {
        public void onClick(ClickEvent e) {
          //
        }
});
UiBinder New in 2.0
    • XML
<ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder'
    xmlns:g='urn:import:com.google.gwt.user.client.ui'>
  <g:HTMLPanel>
    Hello,
    <g:ListBox ui:field='listBox' visibleItemCount='1'/>.
  </g:HTMLPanel>
</ui:UiBinder>
UI
                       MenuBar
SuggestBox
                                 DatePicker
             RichTextArea
UI


                       Ext GWT
                         Ext JS
                         Look & Feel


http://www.extjs.com/products/gwt/
Google API                 UI
• Google Maps API for GWT
• Google Chart Tools for GWT
• etc
Ajax

•        JavaScript Java
                       -

• Java                     GWT
GWT RPC

  RemoteService      RemoteServiceImpl

          1   1


RemoteServiceAsync
public interface AddService extends RemoteService {
    int add(int a, int b);
}
                                            Google Plugin


public interface AddServiceAsync {
    void add(int a, int b, AsyncCallback<Integer> callback);
}
RPC
service.add(a, b, new AsyncCallback<Integer>() {
      public void onSuccess(Integer result) {
        //
      }
      public void onFailure(Throwable caught) {
        //
      }
});
JSNI (JavaScript Native Interface)

 •   JavaScript

 •   native


 public static native String encode(String s) /*-{
   return encodeURIComponent(s);
 }-*/;
public interface MyMessages extends Messages {
    public String edit();
    public String delete();
}
MyMessages_ja.properties   MyMessages_en.properties

    edit=      ...             edit=Edit...
    delete=                    delete=Delete
New in 2.0

GWT.runAsync(new RunAsyncCallback() {
      public void onSuccess() {
        //
        // JS
      }
      public void onFailure(Throwable caught) {
      }
});
•   Ajax


•   GWT       URL


    http://example.com/foo/Foo.html#state1

•
GWT
New in 2.0


•

• JavaScript
•                  Java
Speed Tracer New in 2.0
•
• Chrome
• GWT      Web
•
  • DOM
  •
  •
Maven

• GWT
•
•
• etc
http://mojo.codehaus.org/gwt-maven-plugin
• GWT       HTML5
    Web

• GWT RPC

•
Google Web Toolkitのすすめ

More Related Content

PDF
UberFire Quick Intro and Overview (early beta Aug 2013)
PDF
UberFire Quick Intro and Overview (early beta Jul 2013)
PDF
EP2016 - Moving Away From Nodejs To A Pure Python Solution For Assets
PDF
GWT Contributor Workshop
PPTX
Hosting your own NuGet private repository
PDF
Deploy in scale with Docker, CoreOS, Kubernetes and Apache Stratos
PDF
How to Contribute to GStreamer
PDF
Git workshop
UberFire Quick Intro and Overview (early beta Aug 2013)
UberFire Quick Intro and Overview (early beta Jul 2013)
EP2016 - Moving Away From Nodejs To A Pure Python Solution For Assets
GWT Contributor Workshop
Hosting your own NuGet private repository
Deploy in scale with Docker, CoreOS, Kubernetes and Apache Stratos
How to Contribute to GStreamer
Git workshop

What's hot (20)

PPTX
NPM, Bower and Gulp Kickstart in Visual Studio
PDF
Backend, app e internet das coisas com NodeJS no Google Cloud Platform
PDF
GWT 2.0 - OSCON 2010
KEY
DevQuiz 2011 の模範解答 Android編
PPTX
JS digest. January 2017
PPT
Introduzione a Gwt
PDF
GWT 2.0 - December 15 2009
PDF
Geospatial web development with GeoEXT
DOCX
Update log
PPT
Drupal 7 Deployment Using Apache Ant. Dmitriy Svetlichniy.
PDF
The myths of deprecating docker in kubernetes
PDF
Geospatial web apps development with OpenGeo Suite Client SDK (GXP)
PDF
JHipster Conf 2019 English keynote
PPTX
Getting started & Hosting your website on GitHub
PPTX
PDF
Google Integration in Android Apps - Mooscon 2013 Cebit
PDF
Micro-datacenter chaos monkeys!
PPTX
Nuget
PDF
MongoDB World 2019 Builder's Fest - Ready, Git set ... Go!
PDF
Solving the Workflow - Building MODX.today with Gitify (2015-05-21, Alkmaar)
NPM, Bower and Gulp Kickstart in Visual Studio
Backend, app e internet das coisas com NodeJS no Google Cloud Platform
GWT 2.0 - OSCON 2010
DevQuiz 2011 の模範解答 Android編
JS digest. January 2017
Introduzione a Gwt
GWT 2.0 - December 15 2009
Geospatial web development with GeoEXT
Update log
Drupal 7 Deployment Using Apache Ant. Dmitriy Svetlichniy.
The myths of deprecating docker in kubernetes
Geospatial web apps development with OpenGeo Suite Client SDK (GXP)
JHipster Conf 2019 English keynote
Getting started & Hosting your website on GitHub
Google Integration in Android Apps - Mooscon 2013 Cebit
Micro-datacenter chaos monkeys!
Nuget
MongoDB World 2019 Builder's Fest - Ready, Git set ... Go!
Solving the Workflow - Building MODX.today with Gitify (2015-05-21, Alkmaar)
Ad

Viewers also liked (9)

PDF
Blogopolisの裏側
PDF
Newsgraphy - Web 2008 Expo
PDF
S2Swing - Seasar Conference 2008 Autumn
PDF
Blogopolisの裏側 Flex Edition
PDF
ソーシャル・ニュースリーダー「Crowsnest」におけるTwitterのリアルタイム解析と情報整理の未来
PDF
ストリーム処理を支えるキューイングシステムの選び方
PDF
JavaOne 2016総括 #jjug
PDF
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
PDF
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Blogopolisの裏側
Newsgraphy - Web 2008 Expo
S2Swing - Seasar Conference 2008 Autumn
Blogopolisの裏側 Flex Edition
ソーシャル・ニュースリーダー「Crowsnest」におけるTwitterのリアルタイム解析と情報整理の未来
ストリーム処理を支えるキューイングシステムの選び方
JavaOne 2016総括 #jjug
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Ad

Similar to Google Web Toolkitのすすめ (20)

PPTX
Gwt session
PPTX
Gwt session
PDF
Introduction to Google Web Toolkit - part 1
PPT
GWT_Framework
PPT
Google Web Toolkit Introduction - eXo Platform SEA
PDF
What's New in GWT 2.2
PDF
Google Web Toolkit
PDF
Java Web Programming on Google Cloud Platform [3/3] : Google Web Toolkit
ZIP
Google Developer Fest 2010
KEY
Google io bootcamp_2010
PPT
Google Web Toolkits
PDF
Apache James/Hupa & GWT
PDF
Javascript as a target language - GWT KickOff - Part 2/2
PPT
Gwt training presentation
ZIP
Building Web Apps Sanely - EclipseCon 2010
KEY
JBoss World 2010
PDF
Oop2008 RESTful services with GWT and Apache CXF
PDF
Introduction to Google Web Toolkit
PDF
Gwt Presentation
PPTX
GWT = easy AJAX
Gwt session
Gwt session
Introduction to Google Web Toolkit - part 1
GWT_Framework
Google Web Toolkit Introduction - eXo Platform SEA
What's New in GWT 2.2
Google Web Toolkit
Java Web Programming on Google Cloud Platform [3/3] : Google Web Toolkit
Google Developer Fest 2010
Google io bootcamp_2010
Google Web Toolkits
Apache James/Hupa & GWT
Javascript as a target language - GWT KickOff - Part 2/2
Gwt training presentation
Building Web Apps Sanely - EclipseCon 2010
JBoss World 2010
Oop2008 RESTful services with GWT and Apache CXF
Introduction to Google Web Toolkit
Gwt Presentation
GWT = easy AJAX

Recently uploaded (20)

PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PPTX
Modernising the Digital Integration Hub
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
PDF
Hindi spoken digit analysis for native and non-native speakers
PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
PPTX
observCloud-Native Containerability and monitoring.pptx
PDF
August Patch Tuesday
PDF
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
A review of recent deep learning applications in wood surface defect identifi...
PDF
A novel scalable deep ensemble learning framework for big data classification...
PDF
Developing a website for English-speaking practice to English as a foreign la...
PDF
STKI Israel Market Study 2025 version august
PPTX
Chapter 5: Probability Theory and Statistics
PPTX
Tartificialntelligence_presentation.pptx
PDF
WOOl fibre morphology and structure.pdf for textiles
PDF
Taming the Chaos: How to Turn Unstructured Data into Decisions
PDF
Five Habits of High-Impact Board Members
PDF
A contest of sentiment analysis: k-nearest neighbor versus neural network
DOCX
search engine optimization ppt fir known well about this
Group 1 Presentation -Planning and Decision Making .pptx
Modernising the Digital Integration Hub
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
Hindi spoken digit analysis for native and non-native speakers
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
observCloud-Native Containerability and monitoring.pptx
August Patch Tuesday
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
A review of recent deep learning applications in wood surface defect identifi...
A novel scalable deep ensemble learning framework for big data classification...
Developing a website for English-speaking practice to English as a foreign la...
STKI Israel Market Study 2025 version august
Chapter 5: Probability Theory and Statistics
Tartificialntelligence_presentation.pptx
WOOl fibre morphology and structure.pdf for textiles
Taming the Chaos: How to Turn Unstructured Data into Decisions
Five Habits of High-Impact Board Members
A contest of sentiment analysis: k-nearest neighbor versus neural network
search engine optimization ppt fir known well about this

Google Web Toolkitのすすめ