GWT-EXT 로 Web application 개발하기

Slides:



Advertisements
Similar presentations
® IBM Software Group Copyright © 2005 IBM Corporation AJAX Toolkit Framework Emerging Internet Technologies Group.
Advertisements

Fawaz Ghali AJAX: Web Programming's Toy.
Web Toolkit Julie George & Ronald Lopez 1. Requirements  Java SDK version 1.5 or later  Apache Ant is also necessary to run command line arguments 
Intro to GWT By Henry Chan Brain Teaser to start the evening… There are 100 houses numbered 1 to 100. During Halloween, House#1 gives.
Getting started with ExtJS Javascript screen library and Catalyst Perl framework – Perl Mova 2008, Kyiv, Ukraine 1 Getting started with ExtJS and Catalyst.
1 GWT Google Web Toolkit Build AJAX apps in the Java language
P&O3: Tools & methodologies Stefaan Ternier. Overview TCP/IP Servlets Google Web Toolkit Google Maps JPDA.
© 2007 IBM Corporation IBM Emerging Technologies Enabling an Accessible Web 2.0 Becky Gibson Web Accessibility Architect.
Google Web Toolkit Dudeanu Ermoghen Ib ă nescu Diana Melinte Laurenţiu-Ionuţ Petrişor Ionuţ C ă t ă lin.
Google Web Toolkit - Gufran Mohammed. Google Web Toolkit (GWT) is an open source Java software development framework that makes writing AJAX applications.
Igor Gershovich Connected Testing, Inc.
Microsoft ASP.NET AJAX - AJAX as it has to be Presented by : Rana Vijayasimha Nalla CSCE Grad Student.
It’s always better live. MSDN Events Developing ASP.NET AJAX Controls with Silverlight.
ICS 665 Jesse Abdul. jQuery UI Overview  jQuery UI javascript library Includes all UI component functionality  jQuery UI CSS framework Includes standard.
UNIT4 BUSINESS ANALYTICS. page WHAT IS THE PRODUCT? 2 A business intelligence tool kit, specializing in Coporate Performance Management An application.
© 2006 by IBM 1 How to use Eclipse to Build Rich Internet Applications With PHP and AJAX Phil Berkland IBM Software Group Emerging.
XML on the Web: is it still relevant? O'Neil D. Delpratt.
Pengantar Teknologi Internet W15: Advanced Scripting.
Definition from Wikipedia.  The Prototype JavaScript Framework  implemented as a single file of JavaScript code  named prototype.js (
RIA Introduce Comparison among several technology.
© 2008 IBM Corporation Emerging Internet Technologies Real World Accessibility with ARIA Becky Gibson Web Accessibility Architect.
1. 2 What’s New in NetBeans IDE What is NetBeans IDE?  Ready to use out of the box  Support for latest Java specifications & standards  Other.
P&O3: Tools & methodologies Stefaan Ternier. Overview TCP/IP Servlets Google Web Toolkit Google Maps JPDA.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
ExtWebDriver Open Source Project Daniel Koo Latha Nagaraj Bryan Robbins 04/23/2014.
1 Web GIS: from Javascript to GWT Pieter De Graef – Community Manager & Lead Developer Geomajas.
ASP.NET + Ajax Jesper Tørresø ITNET2 F08. Ajax Ajax (Asynchronous JavaScript and XML) A group of interrelated web development techniques used for creating.
INNOV-10: Getting Started with Ajax Ken Wilner VP of Technology.
Some essentials difference syntax and concept for jquery developers Roohullah Afzali
Java Mobile Apps with GWT & PhoneGap Josh Marinacci, webOS Developer Advocate.
MOOD FOOD. PROMOTIONAL WEBSITE Front end of a cross-module project between Advanced Rich Internet Applications and Advanced Client Side Scripting. Promotional.
Matrix Mapping Tool Sam Gross Internship at Virtual Technology Corporation.
Google Web Toolkit An Overview By Shauvik Roy Choudhary.
Contrasting styles of Web UI Development: GWT vs Native JavaScript Roland Schweitzer Weathertop Consulting, LLC Jeremy Malczyk JISAO.
Google Web Toolkit Paul Heiniz, Wolfgang Kluth, Jan Marten, Malte Behrendt Web Technologies – Prof. Dr. Ulrik Schroeder – WS 2010/111 The slides are licensed.
JavaScript Framework for Rich Apps in Every Browser Maura Wilder Joan Wortman
GWT In-depth Explained by Rohit Ghatol
Can you write REAL applications with AJAX? Phil Sarin Advanced UI Software April 15, 2009.
Taking Sakai offline with GWT and GG 11 March 2008.
JavaScript Framework for Rich Apps in Every Browser Maura Wilder Joan Wortman
A New Approach to Java Clients Robert Buffone Chief Architect Nexaweb Technologies By
New Selectors Extension Module Webinar March 11th, 2010.
Google Web Toolkit. What is GWT? GWT is a development toolkit for building and optimizing complex Ajax applications Goal is to enable productive development.
GeoGebra on mobile devices GeoGebraMobile, the JavaScript version of GeoGebra. Gabor Ancsin (this man =>)
REAL WORLD AJAX MARCH TIBCO USER CONFERENCE / 2004 Enterprise Rich Internet Applications with AJAX Real World Case Studies with TIBCO General Interface™
RIA and Web2.0 Development with no Coding Juan Camilo Ruiz Senior Product Manager Development Tools.
Weekend MS CS Program Internet and Web Technologies COT 5930 Web Project Development - Ajax Dr. Roy Levow, Associate Chair & Professor
INFSOM-RI The ETICS Web Portal WP5 activity Tomasz Kokoszka CERN/WP5.
Plug-in Architectures Presented by Truc Nguyen. What’s a plug-in? “a type of program that tightly integrates with a larger application to add a special.
1 What is JQuery. jQuery is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling, animating, and Ajax* interactions.
Ajax and the GWT. Ajax  Asynchronous JavaScript And XML  Technology behind interactive web sites  Provide smoother experience than conventional web.
Google Web Toolkit Dynamic web on Java (Script) Jordan Jordanov 6 March 2008.
ZK AJAX FRAMEWORK  R.RAJESH. What is ZK?  ZK is an open-source Ajax Web application framework, written in Java that enables creation of rich graphical.
Prof. James A. Landay University of Washington Spring 2008 Web Interface Design, Prototyping, and Implementation Rich Internet Applications: AJAX, Server.
John Foushee Andrew Hulbert Brian Louden. What is the Hawking Toolbar?  Short Description  Project Goal Allow Users to Access Web Content and Browser.
Morpheus Server 2.0 정기교육 Version 목 차 Morpheus Server 2.0 SpringFramework API 개발 Morpheus Admin 실 습.
Automating Web 2.0 AJAX-based applications with QTP. Fun with GWT apps. Igor Gershovich Connected Testing, Inc.
Google Web Toolkit for Mobile Applications Development INGENUITY AT ITS BEST……………….
INTRODUCING HYBRID APP KAU with MICT PARK IT COMPANIES Supported by KOICA
Building Interactive Web Applications for HEP Using the Google Web Toolkit (GWT) Tony Johnson Scientific Computing Applications.
Technologies For Creating Rich Internet Applications Presenter's name
Google Web Toolkit (GWT) St. Louis Java SIG April 12, 2007 Brad Busch Andrew Prunicki.
Arklio Studija 2007 File: / / Page 1 Automated web application testing using Selenium
INNOV-16: Rich User Interface for the Web???? AJAX to the Rescue Ken Wilner VP of Technology Progress Software.
Building Internet Applications With Mozilla XULRunner
Google Web Toolkit Tutorial
Google Web Toolkit - Gufran Mohammed
Open Source Technologies
DWR: Direct Web Remoting
AJAX Toolkit Framework
Presentation transcript:

GWT-EXT 로 Web application 개발하기 idsTrust ECM 연구소 이정주

목차 What is GWT? GWT Architecture Building User Interface Remote Procedure Call (RPC) JavaScript Native Interface (JSNI) GWT-Ext? GWT-Ext Projects Resources

What is GWT?

What is GWT? GWT (Google Web Toolkit) http://code.google.com/webtoolkit/ AJAX applications 을 쉽게 개발할 수 있는 Java software development framework. Java 개발 툴을 사용한 개발 및 디버깅. Eclipse, NetBeans Cross-Browser를 지원하는 Java-to-JavaScript compiler 를 제공. IE, firefox, mozilla, safari, opera … All GWT source and pre-built binaries are provided under the Apache 2.0 license. 최근 1.5 버전 배포 (Java 1.5 형식의 어노테이션과 제너릭의 사용이 가능) 컴파일된 JavaScript 의 속도 향상

Running GWT Application Hosted mode JVM 내의 Java bytecode 로 실행 매번 서버로 코드를 따로 deploy 하지 않고도 개발 및 디버 그를 지원. Web mode GWTCompiler 를 통하여 컴파일 된 순수 JavaScript 와 HTML 로 실행. Cross-browser 지원으로 browser 별 JavaScript 와 HTML의 생성. 1.4 버전에서는 html 과 js 파일이 생성되었으나 1.5 버전에서는 브라우저별 html 파일만 생성 브라우저에 차이가 없을 경우는 필요한 만큼의 파일만 생성 (ex) safari, opera 의 생성되는 코드의 차이가 없을 경우 한가지만 생성

Why GWT? JavaScript language 의 학습이 필요하지 않음. 브라우저의 호환성을 고려하지 않아도 됨. Java programming 지식만으로 가능. 브라우저의 호환성을 고려하지 않아도 됨. DOM APIs 에 대한 학습이 필요하지 않음 Java APIs 의 사용 일반적으로 사용되는 Widgets 의 제공. 다양한 Java IDE 의 활용 (Debug, Test) Eclipse, NetBeans JUnit testing framework 제공. 다국어 지원 ImageBundle 지원 CSS Sprites 특별한 자바스크립트 지식을 사용하지 않고 AJAX application 의 개발이 가능

GWT Architecture

GWT Architecture GWT는 Java-to-JavaScript compiler, hosted web browser 그리고 두개의 자바 클래스 라이브러리를 가진 4개의 컴포넌트로 이루어진다. Java-to-JavaScript 컴파일러 GWT Java-to-JavaScript 컴파일러는 자바언어로된 프로그램 코드를 JavaScript 프로그램 언어로 변환한다. 이렇게 컴파일된 코드는 웹모드에서 테스트할 수 있다. Hosted Web Broswer Hosted Web 브라우저는 만들어진 GWT응용을 호스트모드에서 테스트할 수 있도록 한다. 이러한 과정은 JVM에서 일어나게 되므로 JavaScript로의 컴파일 없이 테스트할 수 있다. 이를 위해서 JVM에서 작동하는 별도의 웹브라우저를 제공한다. JRE emulation 라이브러리 자주 사용되는 JavaScript 구현을 포함한 자바 클래스 라이브러리로, java.lang 패키지와 java.util패키지를 포함한다. GWT Web UI class 라이브러리 웹브라우저를 통해서 유저에게 보여줄 UI를 위한 wigets을 포함하고 있다. 여기에는 button, text box, images, text 등과 관련된 위젯이 포함된다.

http://www. adempiere. com/wiki/index http://www.adempiere.com/wiki/index.php/Sponsored_Development:_Libero_GWT_ADempiere_Client

Building User Interface

GWT User Interface Classes 기존의 Java UI framework인 swing과 swt와 유사한 개발 방식. 인터넷이 가능하다면 간단하게 보여주거나.. 캡쳐화면을 붙여넣음

Widgets and Panels

Events and Listeners GWT 이벤트는 다른 UI frameworks 와 유사한 “listener interface” 모델을 사용.

Remote Procedure Call (RPC)

What is GWT-RPC? GWT-RPC Mechanism Server 와 client 측에서 많은 노력을 들이지 않고 Java object 를 주고 받을 수 있게 해줌.

MyService extends RemoteService MyServiceImpl extends RemoteServiceServlet MyServiceAsync

JavaScript Native Interface (JSNI)

Native JavaScript Methods 자바스크립트 라이브러리들을 직접 사용하고 싶은 경 우 – prototype, extjs … JSNI 메소드들은 native 와 특정 주석 블록에 작성된 자바스크립트 코드를 통해 선언. /*-{ JavaScript Code }-*/ 자바에서는 메소드를 “native”로 지정해주면 실제 구현에서 사용되는 컴파일러를 해당 선언문에서만 다른 언어의 컴파일러로 바꿀 수 있도록 해준다 이렇게 하면 GWT컴파일러가 native 메소드내 코드작성을 허락하지 않는 자바 문법에 부합하면서도 주석내 실제 자바스크립트를 실행할 수 있도록 한다.

Accessing Java Methods and Fields from JavaScript GWT 로 프로젝트를 진행하면서 느낀 점을 설명 느리고, 기존 웹 프로젝트에서 디자이너들이 던져준 html 가지고 GWT 로 컨버팅 하기가 힘이든다

Tools and Libraries

Tools and Libraries Google API Library Instantiations GWT Designer GWT Widget Library …

Google API Libraries for Google Web Toolkit Google API 를 GWT 에서 사용할 수 있게 도와주는 라이브러리. Gears, Gadgets, AJAX Search, Maps … http://code.google.com/p/gwt-google-apis/

Instantiations GWT Designer 단점은 개발시에 메모리를 많이 잡아먹고 더 느려진다는 점… [그림 출처] http://download.instantiations.com/DesignerDoc/integration/latest/docs/html/gwt/index.html

GWT Widget Library http://gwt-widget.sourceforge.net/ 스프링과 통합을 도와주는 서버 라이브러리와 각종 클라이언트 라이브러리를 제공 http://gwt-widget.sourceforge.net/

GWT-Ext

Weak point of GWT Slow hosted mode Memory leak 디자인 변경의 어려움 느린 호스트 모드 - 변경 후 테스트에는 일반 dhtml/ajax 프로그래밍 보다 시간이 오래 걸린다. 메모리 릭 - GWT 위짓들은 1.4 버전 이하에서 재대로 메모리를 반환 못하는 버그가 있었음 (익스플로러의 메모리가 4~500 MB 를 잡아먹은 적도 있었음) 디자인 변경의 어려움 - 제공되는 위짓들이 투박하며 기존의 웹 프로젝트의 디자이너들이 주는 이미지와 레이아웃을 적용하기가 힘듬

GWT-Ext Hompage Code Project http://gwt-ext.com/ Code Project http://code.google.com/p/gwt-ext/ http://code.google.com/p/gwt-ext-ux/ Gwt-Ext is java wrapper around the base Ext JS javascript library. It is powerful widget library that provides rich widgets like Gri d with sort, paging and filtering, Tree’s with Drag & Drop suppo rt, highly customizable ComboBoxes, Tab Panels, Menus & Tool bars, Dialogs, Forms and a lot more right out of the box with a powerful and easy to use API. It uses GWT and Ext.

Ext JS http://extjs.com Ext JS is a cross-browser JavaScript library for building ric h internet applications. High performance, customizable UI widgets Well designed and extensible Component model An intuitive, easy to use API Commercial and Open Source licenses available

Ext JS Demo – Web Desktop http://www.extjs.com/deploy/dev/examples/desktop/desktop.html

GWT-Ext Showcase Demo http://www.gwt-ext.com/demo

GWT-Ext Projects

Project Structure

GWT Ext Project – memorizing

GWT Ext Project – wiseone 1.5

Resources

Resources http://code.google.com/webtoolkit/ http://gwt-ext.com/ http://extjs.com http://www.instantiations.com/gwtdesigner/ [Book] GWT in Action (Manning, 2007) http://www.javapassion.com/ajax/GWT.pdf http://www.joinc.co.kr/modules/moniwiki/wiki.php/Site/G oogle/Service/GoogleWebToolkit/Overview http://www.adempiere.com/wiki/index.php/Sponsored_De velopment:_Libero_GWT_ADempiere_Client