Advanced Web Technology 5) Google Web Toolkits - GWT, Client Side
|
|
- Branden Charles
- 5 years ago
- Views:
Transcription
1 Advanced Web Technology 5) Google Web Toolkits - GWT, Client Side Emmanuel Benoist Spring Term 2018 Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 1
2 Table of Contents Presentation of GWT Hello World Application Widgets Hello World Event Handling Applying Style Sheets Deployment Internationalization Static String i18n Remote Procedure Code JSON Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 2
3 Presentation of GWT Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 3
4 Motivation What is GWT? A development environment in pure Java for rich web applications Provides Java for programming both client and server sides Advantages of GWT Homogenous environment Testing of a web application (using JUnit) Not integrated in JSF Concurent system developed by google Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 4
5 Principle Write Java code Use Java on Server Side But also on a Client Side Communication is handeled conveniently Tests in a JVM Testing is done using JUnit Plugin in the browser Tests are conducted inside one JVM (based on Java Code) Compile into Javascript Creates different versions for different browsers Each browser receives only the right version Can be deployed on Java Servers Or any other server (if the server part is not Java) Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 5
6 Hello World Application Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 6
7 Hello World Application Download the GWT From Google Code Web site Create an application Execute./webAppCreator -out /home/bie1/test/ ch.bfh.awt.hello A default application is created Includes ant and Eclipse project files Test the Application Go to the directory execute ant devmode Install the plugin in your browser Test the application Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 7
8 Directories created Source files: /src/ Package for client side application : /src/ch/bfh/awt/client Server side classes : /src/ch/bfh/awt/server The file /src/ch/bfh/awt/hello.gwt.xml contains the configurations for the GWT application Web Application: /war/ Contains html, css, javascript, gifs, and the like Contains the WEB-INF/ directory (where the server classes are automatically compiled The directory /war/ will receive the JavaScript files compiled from the client application At the end the content of this directory is copied to the server Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 8
9 Widgets Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 9
10 Hello World Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 10
11 Hello World Hello.html: contains a real HTML Containing layout, References to images, JavaScript, CSS Reference to the script loading the files <script type="text/javascript" language="javascript" src=" hello/hello.nocache.js"></script> And it contains place-holders that will be manipulated from Java. <div id="namefieldcontainer"></div> <div id="sendbuttoncontainer"></div> <div style="color:blue;" id="responsecontainer" ></div> Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 11
12 HTML FIle <!doctype html> <html> <head> <meta http equiv="content type" content="text/html; charset=utf 8"> <link type="text/css" rel="stylesheet" href="hello.css"> <title>web Application Starter Project</title> <script type="text/javascript" language="javascript" src="hello/hello. nocache.js"></script> </head> <body>... <h1>web Application Starter Project</h1> Please enter your name: <div id="namefieldcontainer"></div> <div id="sendbuttoncontainer"></div> <div style="color:blue;" id="responsecontainer"></div> </body> </html> Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 12
13 Java File Contains the definition of the user interface Definition of the Widgets used, Panels, Text fields, buttons Extends the EntryPoint class Defines the onmoduleload() function. Defines the Event Handling Defines functions to be executed when an Event is fired. Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 13
14 Hello.java package ch.bfh.awt.client; import... / Entry point classes define <code>onmoduleload()</code>. / public class Hello implements EntryPoint { public void onmoduleload() { final Button sendbutton = new Button("Send"); final TextBox namefield = new TextBox(); final Label responselabel = new Label(); RootPanel.get("nameFieldContainer").add(nameField); RootPanel.get("sendButtonContainer").add(sendButton); RootPanel.get("responseContainer").add(responseLabel); namefield.setfocus(true);... // Event Handling Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 14
15 Widgets List of default widgets Buttons: Button, PushButton, RadioButton,CheckBox,,, Calendar: DatePicker Lists : ListBox, CellList, Trees: MenuBar, Tree with CellTree, Panels: PopoupPanel, StackPanel, HorizontalPanel, VerticalPanel, latest/refwidgetgallery.html Possibility to write your own widgets: latest/devguideuicustomwidgets.html Composite components (composition of existing components) or from scratch in Java code Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 15
16 Example: StockWatcher 1 An interface to watch stock values Presentation (when deployed on localhost) localhost:8080/stockwatchergwt User Interface: One page One page A list containing the stocks A field to type the stock into A button to add a new stock Back-office No back-office today Communications with the servers are seen in the next course Communication available: Remote Procedure Call (RPC) in Java Call to JSON data on the same server (PHP for instance) Call to JSON data on another server (against the same origin policy). 1 Source:http: //code.google.com/intl/fr-fr/webtoolkit/doc/latest/tutorial/ Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 16
17 The HTML Page 2 <body> <img src="images/bfh.jpg" /> <h1>stock Watcher testing project</h1> <div id="stocklist"></div> <iframe src="javascript: " id=" gwt_historyframe" tabindex= 1 style="position:absolute;width:0;height:0;border:0"></iframe> <noscript> <div style="width: 22em; position: absolute; left: 50%; margin left : 11em; color: red; background color: white; border: 1px solid red; padding: 4px; font family: sans serif"> Your web browser must have JavaScript enabled in order for this application to display correctly. </div> </noscript> </body> 2 /war/stockwatcher.html Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 17
18 Java Files 3 Contains Widgets mainpanel a vertical panel containing components addpanel an horizontal panel containing a textbox and a button stocksflextable a fexible table containing lines and columns newsymboltextbox a text box to enter text into addstockbutton a button that generates an event when clicked on lastupdatedlabel a label contains a text private VerticalPanel mainpanel = new VerticalPanel(); private FlexTable stocksflextable = new FlexTable(); private HorizontalPanel addpanel = new HorizontalPanel(); private TextBox newsymboltextbox = new TextBox(); private Button addstockbutton = new Button("Add"); private Label lastupdatedlabel = new Label(); 3 /src/ch/bfh/awt/client/stockwatcher.java Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 18
19 The Java File public void onmoduleload() { // Create table for stock data. stocksflextable.settext(0, 0, "Symbol"); stocksflextable.settext(0, 1, "Price"); stocksflextable.settext(0, 2, "Change"); stocksflextable.settext(0, 3, "Remove"); // Assemble Add Stock panel. addpanel.add(newsymboltextbox); addpanel.add(addstockbutton); // Assemble Main panel. mainpanel.add(stocksflextable); mainpanel.add(addpanel); mainpanel.add(lastupdatedlabel); // Associate the Main panel with the HTML host page. RootPanel.get("stockList").add(mainPanel); // Move cursor focus to the input box. newsymboltextbox.setfocus(true); Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 19
20 Event Handling Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 20
21 Event Handling Events Handlers are attached to widgets Events in GWT use the event handler interface model similar to other user interface frameworks. To subscribe to an event, you pass a particular event handler interface to the appropriate widget. An event handler interface defines one or more methods that the widget then calls to announce (publish) an event. Example: Hello World Add an event handler for a click on the button Add an event handler when a user types on the Enter key Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 21
22 Event Handlers for Hello World 4 class MyHandler implements ClickHandler, KeyUpHandler { public void onclick(clickevent event) { copyname(); public void onkeyup(keyupevent event) { if (event.getnativekeycode() == KeyCodes.KEY_ENTER) { copyname(); private void copyname() { String texttocopy = namefield.gettext(); responselabel.settext(texttocopy); MyHandler handler = new MyHandler(); sendbutton.addclickhandler(handler); namefield.addkeyuphandler(handler); 4 Inside the definition of the class Hello Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 22
23 Event Handling by Stock Watcher // Listen for mouse events on the Add button. addstockbutton.addclickhandler(new ClickHandler() { public void onclick(clickevent event) { addstock(); ); // Listen for keyboard events in the input box. newsymboltextbox.addkeypresshandler(new KeyPressHandler() { public void onkeypress(keypressevent event) { if (event.getcharcode() == KeyCodes.KEY_ENTER) { addstock(); ); private void addstock() { // TODO Auto generated method stub Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 23
24 Manipulate the content of the Widgets Java can generate an alert(). Window.alert(" " + symbol + " is not a valid symbol."); One can manipulate elements in a list int removedindex = stocks.indexof(symbol); stocks.remove(removedindex); stocksflextable.removerow(removedindex + 1); Or change the text of a label or a text box private void copyname() { // First, we validate the input. String texttocopy = namefield.gettext(); responselabel.settext(texttocopy); or Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 24
25 Applying Style Sheets Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 25
26 Applying Style Sheets Configure the standard theme standard.css : contains the GWT default styles (themes) In GWT config file : Hello.gwt.xml Defines the theme: <inherits name= com.google.gwt.user.theme.standard. Standard /> <! <inherits name="com.google.gwt.user.theme. chrome.chrome"/> > <! <inherits name="com.google.gwt.user.theme.dark. Dark"/> > Associate a CSS file Hello.css : contains the project specific classes Linked inside the Hello.html <link type="text/css" rel="stylesheet" href="hello.css"> Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 26
27 Add Style to the elements Suppose we have the following style: / stock list header row /.watchlistheader { background color: #2062B8; color: white; font style: italic; / stock list flex table /.watchlist { border: 1px solid silver; padding: 2px; margin bottom:6px; Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 27
28 Add Style to the elements (Cont.) We add style to the elements of the first row of the table // Add styles to elements in the stock list table. stocksflextable.getrowformatter().addstylename(0, " watchlistheader"); Format all the elements of a table stocksflextable.addstylename("watchlist"); Or format only one cell stocksflextable.getcellformatter().addstylename(0, 1, " watchlistnumericcolumn"); Or even a panel addpanel.addstylename("addpanel"); Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 28
29 Deployment Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 29
30 Deployment Compile the application into JavaScript Using GWT Compile Project button in Eclipse Or executing ant build Compilation writes all the required files in the War directory Uses the definition files and all the existing files in the war/ (html, gif, images, css,... ) Copy the content of the directory To a servlet engine if you use the server side functionality To any server if using only the client side Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 30
31 Internationalization Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 31
32 Internationalization : I18N Module Core types related to internationalization: LocaleInfo Provides information about the current locale. Constants Useful for localizing typed constant values Messages Useful for localizing messages requiring arguments ConstantsWithLookup Like Constants but with extra lookup flexibility for highly data-driven applications Dictionary Useful when adding a GWT module to existing localized web pages Localizable Useful for localizing algorithms encapsulated in a class or when the classes above don t provide sufficient control DateTimeFormat Formatting dates as strings. See the section on date and number formatting. NumberFormat Formatting numbers as strings. See the section on date and number formatting. Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 32
33 Static String i18n Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 33
34 Interantionalizing Strings Implement the Constant Interface Contains only static strings Very efficient and compiled once. Implement the Messages Interface Allows to insert values in the string For instance numbers or dates Equivalent to the resource bundle in applications. Dynamic String Internationalization The Dictionary class lets your GWT application consume strings supplied by the host HTML page. Convenient if your existing web server has a localization system that you do not wish to integrate with the static string internationalization methods. Implement the Localizable Interface The most powerful technique allows you to go beyond simple string substitution create localized versions of custom types. Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 34
35 Implement the Constants Interface Create the StockWatcherConstants interface Uses annotations for the default translation Implements the Constant interface (GWT) Bound automatically to the StockWatcherConstants*.properties files The java file must contain one method for each of the constants in the properties files The right value is found at runtime, corresponding to the locale Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 35
36 Example: the Constants file package com.google.gwt.sample.stockwatcher.client; import com.google.gwt.i18n.client.constants; public interface StockWatcherConstants extends Constants String String String String String String add(); Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 36
37 Translate it to German Create a file StockWatcherConstants_de.properties stockwatcher = Aktienbeobachter symbol = Symbol price = Kurs change = Änderung remove = Entfernen add = Hinzufügen Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 37
38 Implement the Messages interface For Strings containing information Similar to resource bundles in Java Can contain strings with parameters {0 ist kein gültiges Aktiensymbol. The number is a place holder mystring = First parm is {0, second parm is {1, third parm is {2. Usefull for integrating dates, prices, internationalized results Usefull but less efficient. The strings must be produced at runtime Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 38
39 Messages file package com.google.gwt.sample.stockwatcher.client; import com.google.gwt.i18n.client.messages; import java.util.date; public interface StockWatcherMessages extends Messages {0 is not a valid symbol.") String invalidsymbol(string update: {0,date,medium {0,time, medium") String lastupdate(date timestamp); Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 39
40 The corresponding properties file StockWatcherMessages_de.properties file. lastupdate = Letzte Aktualisierung: {0,date,medium {0,time, medium invalidsymbol = {0 ist kein gültiges Aktiensymbol. Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 40
41 Replace content Replace the texts with place holders <body> <img src="images/googlecode.png"/> <h1 id="apptitle"></h1> Replacing strings set programmatically Create the instances of the classes (internationalized) private ArrayList<String> stocks = new ArrayList<String>(); private StockWatcherConstants constants = GWT.create( StockWatcherConstants.class); private StockWatcherMessages messages = GWT.create( StockWatcherMessages.class); Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 41
42 Replace content (Cont) Set the content: // Set the window title, the header text, and the Add button text. Window.setTitle(constants.stockWatcher()); RootPanel.get("appTitle").add(new Label(constants. stockwatcher())); addstockbutton = new Button(constants.add()); // Create table for stock data. stocksflextable.settext(0, 0, constants.symbol()); stocksflextable.settext(0, 1, constants.price()); stocksflextable.settext(0, 2, constants.change()); stocksflextable.settext(0, 3, constants.remove()); Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 42
43 Add a supported locale: Inside StockWatcher.gwt.xml add the property <entry point class= com.google.gwt.sample.stockwatcher.client.stockwatcher /> <extend property name="locale" values="de"/> </module> Load the german version by adding &locale=de Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 43
44 Client Server Communication Remote Procedure Code From Java To Java Supported by the language Optimized and easy to test JSON For communicating with the same server JSONP For cross server communication Overgoes the Same Origin Policy Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 44
45 Remote Procedure Code Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 45
46 GWT Remote Procedure Call RPC contains: the service that runs on the server the method you are calling the client code that invokes the service the Java data objects that pass between the client and server Both (client and server) must serialize and deserialize the objects You need to write three components Define the interface StockPriceService that extends RemoteService and lists all your RPC methods Create a class StockPriceServiceImpl that extends RemoteServiceServlet and implements the interface you created above. Define an asynchronous interface StockPriceServiceAsync to your service to be called from the client-side code. Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 46
47 GWT Remote Procedure Call 5 5 Source: code.google.com Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 47
48 StockPriceService interface In the package com.google.gwt.sample.stockwatcher.client package com.google.gwt.sample.stockwatcher.client; import com.google.gwt.user.client.rpc.remoteservice; import com.google.gwt.user.client.rpc.remoteservicerelativepath public interface StockPriceService extends RemoteService { StockPrice[] getprices(string[] symbols); Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 48
49 StockPriceServiceImpl class package com.google.gwt.sample.stockwatcher.server; import com.google.gwt.sample.stockwatcher.client.stockprice; import com.google.gwt.sample.stockwatcher.client.stockpriceservice; import com.google.gwt.user.server.rpc.remoteserviceservlet; import java.util.random; public class StockPriceServiceImpl extends RemoteServiceServlet implements StockPriceService { private static final double MAX_PRICE = 100.0; // $ private static final double MAX_PRICE_CHANGE = 0.02; // +/ 2% public StockPrice[] getprices(string[] symbols) { Random rnd = new Random(); StockPrice[] prices = new StockPrice[symbols.length]; for (int i=0; i<symbols.length; i++) { double price = rnd.nextdouble() MAX_PRICE; double change = price MAX_PRICE_CHANGE (rnd.nextdouble () 2f 1f); prices[i] = new StockPrice(symbols[i], price, change); return prices; Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 49
50 Include the server-side code in the GWT module Define new servlets in the web.xml <web app> <welcome file list> <welcome file>stockwatcher.html</welcome file> </welcome file list> <servlet> <servlet name>stockpriceserviceimpl</servlet name> <servlet class>com.google.gwt.sample.stockwatcher.server. StockPriceServiceImpl</servlet class> </servlet> <servlet mapping> <servlet name>stockpriceserviceimpl</servlet name> <url pattern>/stockwatcher/stockprices</url pattern> </servlet mapping> </web app> Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 50
51 Invoking the service from the client Making asynchronous calls to the server package com.google.gwt.sample.stockwatcher.client; import com.google.gwt.user.client.rpc.asynccallback; public interface StockPriceServiceAsync { void getprices(string[] symbols, AsyncCallback<StockPrice[]> callback); Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 51
52 Making the remote procedure call private void refreshwatchlist() { // Initialize the service proxy. if (stockpricesvc == null) { stockpricesvc = GWT.create(StockPriceService.class); // Set up the callback object. AsyncCallback<StockPrice[]> callback = new AsyncCallback< StockPrice[]>() { public void onfailure(throwable caught) { // TODO: Do something with errors. public void onsuccess(stockprice[] result) { updatetable(result); ; // Make the call to the stock price service. stockpricesvc.getprices(stocks.toarray(new String[0]), callback); Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 52
53 Serializing Java objects GWT RPC requires that all service method parameters and return types be serializable. package com.google.gwt.sample.stockwatcher.client; import java.io.serializable; public class StockPrice implements Serializable { private String symbol; private double price; private double change;... Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 53
54 JSON Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 54
55 Retrieving JSON Data JSON stands for JavaScript Object Notation Language independant format Very light Example [ { "symbol": "ABC", "price": 87.86, "change": 0.41, { "symbol": "DEF", "price": 62.79, "change": 0.49 ] Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 55
56 Server part JSON can be generated by a servlet out.println(" {"); out.print(" \"symbol\": \""); out.print(stocksymbol); out.println("\","); out.print(" \"price\": "); out.print(price); out.println(, ); out.print(" \"change\": "); out.println(change); out.println(","); Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 56
57 JSON generated by PHP <?php header( Content Type: text/javascript ); define("max_price", 100.0); // $ define("max_price_change", 0.02); // +/ 2% echo [ ; $q = trim($_get[ q ]); if ($q) { $symbols = explode(, $q); for ($i=0; $i<count($symbols); $i++) { $price = lcg_value() MAX_PRICE; $change = $price MAX_PRICE_CHANGE (lcg_value() ); echo { ; echo "\"symbol\":\"$symbols[$i]\","; echo "\"price\":$price,"; echo "\"change\":$change"; echo ; if ($i < (count($symbols) 1)) { echo, ; Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 57
58 Transform JSON object into JavaScript use the built in JavaScript function eval The function will receive a response.gettext() as a parameter private final native JsArray<StockData> asarrayofstockdata( String json) / { return eval(json); /; Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 58
59 Manipulate JSON objects Create a JavaScriptObject StockData to manipulate the data input in Java package com.google.gwt.sample.stockwatcher.client; import com.google.gwt.core.client.javascriptobject; class StockData extends JavaScriptObject { // Overlay types always have protected, zero argument constructors. protected StockData() { // JSNI methods to get stock data. public final native String getsymbol() / { return this.symbol; /; public final native double getprice() / { return this.price; /; public final native double getchange() / { return this.change; /; // Non JSNI method to return change percentage. public final double getchangepercent() { return getchange() / getprice(); Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 59
60 Connect the Web server Prepare the list of stocks private void refreshwatchlist() { if (stocks.size() == 0) { return; String url = JSON_URL; // Append watch list stock symbols to query URL. Iterator iter = stocks.iterator(); while (iter.hasnext()) { url += iter.next(); if (iter.hasnext()) { url += "+"; url = URL.encode(url); // TODO Send request to server and handle errors. Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 60
61 Connect the Web Server (Cont.) // Send request to server and catch any errors. RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, url); try { Request request = builder.sendrequest(null, new RequestCallback() { public void onerror(request request, Throwable exception) { displayerror("couldn t retrieve JSON"); public void onresponsereceived(request request, Response response ) { if (200 == response.getstatuscode()) { updatetable(asarrayofstockdata(response.gettext())); else { displayerror("couldn t retrieve JSON (" + response. getstatustext() + ")"); ); catch (RequestException e) { displayerror("couldn t retrieve JSON"); Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 61
62 Conclusion GWT: pure Java Web Application Client and Server share one language Testing made easy Testing of Web Application is often a nightmare JUnit testing is possible Debugging inside one JVM : In Eclipse or in devmode Security? What is executed where? What is transfered and can be manipulated? What is tested where? Useful features I18N Client Server Communication Remote Procedure Call JSON Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 62
63 References Tutorial by Google Code fr-fr/webtoolkit/overview.html latest/tutorial/gettingstarted.html Developer Guide by Google Code latest/devguide.html Hello World Example Obtained by executing the create application script. Tutorial for Client Server communication latest/tutorial/clientserver.html Berner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 63
Berner Fachhochschule Haute cole spcialise bernoise Berne University of Applied Sciences 2
Table of Contents Advanced Web Technology 13) Google Web Toolkits 2 - GWT, Communication Emmanuel Benoist Fall Term 2016-17 Internationalization Static String i18n Remote Procedure Code JSON Berner Fachhochschule
More informationBerner Fachhochschule Haute école spécialisée bernoise Berne University of Applied Sciences 2
Table of Contents 6) Overview: web applications Emmanuel Benoist Spring Term 2018 Presentation Server Side Programming Client Side Frameworks JQuery AngularJS Google Web Toolkit - GWT JSON Conclusion Berner
More informationGWT - RPC COMMUNICATION
GWT - RPC COMMUNICATION http://www.tutorialspoint.com/gwt/gwt_rpc_communication.htm Copyright tutorialspoint.com A GWT based application is generally consists of a client side module and server side module.
More informationCreating GWT Applications in Eclipse
Creating GWT Applications in Eclipse By Patrick Canny Abstract This paper describes how to create a Google Web Toolkit ( GWT ) application in Eclipse v. 3.5, a.k.a. Galileo, which implements Runnable User
More informationGoogle Web Toolkit Creating/using external JAR files
Google Web Toolkit Creating/using external JAR files If you develop some code that can be reused in more than one project, one way to create a module is to create an external JAR file. This JAR file can
More informationGoogle Web Toolkit (GWT)
Google Web Toolkit (GWT) What is GWT? GWT is a development toolkit for building and optimizing complex browser-based applications You can develop all code, both client and server in Java (or with a different
More informationwidgets, events, layout loosely similar to Swing test browser, or plugin for testing with real browser on local system
Web [Application] Frameworks conventional approach to building a web service write ad hoc client code in HTML, CSS, Javascript,... by hand write ad hoc server code in [whatever] by hand write ad hoc access
More informationGWT - INTERNATIONALIZATION
GWT - INTERNATIONALIZATION http://www.tutorialspoint.com/gwt/gwt_internationalization.htm Copyright tutorialspoint.com GWT provides three ways to internationalize a GWT application, We'll demonstrate use
More informationAjax and Web 2.0 Related Frameworks and Toolkits. Dennis Chen Director of Product Engineering / Potix Corporation
Ajax and Web 2.0 Related Frameworks and Toolkits Dennis Chen Director of Product Engineering / Potix Corporation dennischen@zkoss.org 1 Agenda Ajax Introduction Access Server Side (Java) API/Data/Service
More informationGoogle Web Toolkit. David Geary. code.google.com/webtoolkit. corewebdeveloper.com
Google Web Toolkit code.google.com/webtoolkit David Geary corewebdeveloper.com clarity.training@gmail.com Copyright Clarity Training, Inc. 2009 Code http://coolandusefulgwt.com 2 Copyright Clarity Training,
More informationGWT - DEBUGGING APPLICATION
GWT - DEBUGGING APPLICATION http://www.tutorialspoint.com/gwt/gwt_debug_application.htm Copyright tutorialspoint.com GWT provides execellent capability of debugging client side as well as server side code.
More informationGWT - FLEXTABLE WIDGET
GWT - FLEXTABLE WIDGET http://www.tutorialspoint.com/gwt/gwt_flextable_widget.htm Copyright tutorialspoint.com Introduction The FlexTable widget represents a flexible table that creates cells on demand.
More informationGoogle Web Toolkit (GWT) Basics. Sang Shin Java Technology Architect & Evangelist Sun Microsystems, Inc.
Google Web Toolkit (GWT) Basics Sang Shin Java Technology Architect & Evangelist Sun Microsystems, Inc. sang.shin@sun.com www.javapassion.com Disclaimer & Acknowledgments Even though Sang Shin is a full-time
More informationThe Google Web Toolkit
The Google Web Toolkit Allen I. Holub Holub Associates www.holub.com allen@holub.com 2010, Allen I. Holub www.holub.com 1 This Talk The point of this talk is to give you an overview of GWT suitable for
More informationDeveloping Ajax Web Apps with GWT. Session I
Developing Ajax Web Apps with GWT Session I Contents Introduction Traditional Web RIAs Emergence of Ajax Ajax ( GWT ) Google Web Toolkit Installing and Setting up GWT in Eclipse The Project Structure Running
More informationPimp My Webapp (with Google Web Toolkit)
(with Google Web Toolkit) Hermod Opstvedt Chief Architect DnB NOR ITUD Common components Hermod Opstvedt (with Google Web Toolkit) Slide 1 What is Google Web Toolkit (GWT)? Pronounced GWiT. An effort to
More informationGWT - CREATE APPLICATION
GWT - CREATE APPLICATION http://www.tutorialspoint.com/gwt/gwt_create_application.htm Copyright tutorialspoint.com As power of GWT lies in Write in Java, Run in JavaScript, we'll be using Java IDE Eclipse
More informationGWT - PUSHBUTTON WIDGET
GWT - PUSHBUTTON WIDGET http://www.tutorialspoint.com/gwt/gwt_pushbutton_widget.htm Copyright tutorialspoint.com Introduction The PushButton widget represents a standard push button with custom styling..
More informationGWT - TOGGLEBUTTON WIDGET
GWT - TOGGLEBUTTON WIDGET http://www.tutorialspoint.com/gwt/gwt_togglebutton_widget.htm Copyright tutorialspoint.com Introduction The ToggleButton widget represents a stylish stateful button which allows
More informationIntegrating Seam and GWT
Integrating Seam and GWT Integrating the JBoss Seam Framework with the GWT Toolkit : Use cases and patterns Ferda Tartanoglu Neox ia 6563 Who we are 2 > Ferda TARTANOGLU, PhD Consultant and Software Architect
More informationgenerates scaffolding/framework for models, views
Django by Adrian Holovaty and Jacob Kaplan-Moss (released July 2005) a collection of Python scripts to create a new project / site generates Python scripts for settings, etc. configuration info stored
More informationThe Google Web Toolkit (GWT): Handling History and Bookmarks
2013 Marty Hall & Yaakov Chaikin The Google Web Toolkit (GWT): Handling History and Bookmarks (GWT 2.5 Version) Originals of Slides and Source Code for Examples: http://courses.coreservlets.com/course-materials/gwt.html
More informationSay goodbye to the pains of Ajax. Yibo
Say goodbye to the pains of Ajax Yibo DOM JavaScript XML CSS Standard Browsers: browser-specific dependencies. d Differences Complexity Exprerience: Minesweeper Google Web Toolkit make Ajax development
More informationWeb and Apps 1) HTML - CSS
Web and Apps 1) HTML - CSS Emmanuel Benoist Spring Term 2017 Berner Fachhochschule Haute cole spcialise bernoise Berne University of Applied Sciences 1 HyperText Markup Language and Cascading Style Sheets
More informationLSI's VMware vcenter Plug-In: A Study in the Use of Open Source Software Erik Johannes Brian Mason LSI Corp
LSI's VMware vcenter Plug-In: A Study in the Use of Open Source Software Erik Johannes Brian Mason LSI Corp Goal The goal for the presentation is to share our experience with open source in the hope that
More informationGoogle Web Toolkit (GWT)
Google Web Toolkit (GWT) St. Louis Java SIG April 12, 2007 Brad Busch Andrew Prunicki What is GWT? GWT is a much different way to develop web applications from
More informationGWT integration with Vaadin. Peter expert & trainer
GWT integration with Vaadin Peter Lehto @peter_lehto expert & trainer Vaadin & GWT GWT Transport mechanisms Web components with Polymer QA Vaadin Connectors Vaadin & GWT Server driven UI framework with
More informationDeveloping Web 2.0 Apps with the Google Web Toolkit
Developing Web 2.0 Apps with the Google Web Toolkit Ajax development hurts, and is not recommended without a bottle of analgesics by your side. Luckily for us there are tools that can make developing Web
More informationGWT: The Technical Advantage. Presenter: Anirudh Dewani Company Name: Google
GWT: The Technical Advantage Presenter: Anirudh Dewani Company Name: Google What is GWT? 2 How it works Google Web Toolkit Weekly Report 09/01/2008-09/08/200 Code against Java UI libraries 3 How it works
More informationGWT - POPUPPANEL WIDGET
GWT - POPUPPANEL WIDGET http://www.tutorialspoint.com/gwt/gwt_popuppanel_widget.htm Copyright tutorialspoint.com Introduction The PopupPanel widget represents a panel that can pop up over other widgets.
More informationGWT - LOGGING FRAMEWORK
GWT - LOGGING FRAMEWORK http://www.tutorialspoint.com/gwt/gwt_logging_framework.htm Copyright tutorialspoint.com The logging framework emulates java.util.logging, so it uses the same syntax and has the
More informationGWT - FORMPANEL WIDGET
GWT - FORMPANEL WIDGET http://www.tutorialspoint.com/gwt/gwt_formpanel_widget.htm Copyright tutorialspoint.com Introduction The FormPanel widget represents a panel that wraps its contents in an HTML
More informationCS506 Web Design & Development Final Term Solved MCQs with Reference
with Reference I am student in MCS (Virtual University of Pakistan). All the MCQs are solved by me. I followed the Moaaz pattern in Writing and Layout this document. Because many students are familiar
More informationGWT - LABEL WIDGET. Following default CSS Style rule will be applied to all the labels. You can override it as per your requirements.
http://www.tutorialspoint.com/gwt/gwt_label_widget.htm GWT - LABEL WIDGET Copyright tutorialspoint.com Introduction The Label can contains only arbitrary text and it can not be interpreted as HTML. This
More informationIBM JZOS Meets Web 2.0
IBM JZOS Meets Web 2.0 Tuesday, August 3 rd 2010 Session 7637 Steve Goetze Kirk Wolf http://dovetail.com info@dovetail.com Copyright 2010, Dovetailed Technologies Abstract The development and deployment
More informationGWT GWT. Label. Java GWT. com.google.gwt.user.client.ui package
GWT wzyang@asia.edu.tw GWT GWT Java HTML GWT (Widget) Java com.google.gwt.user.client.ui package 1 2 GWT Label Constructors: public Label() public Label(String text) public Label(String text, boolean wordwrap)
More informationIn the early days of the Web, designers just had the original 91 HTML tags to work with.
Web Design Lesson 4 Cascading Style Sheets In the early days of the Web, designers just had the original 91 HTML tags to work with. Using HTML, they could make headings, paragraphs, and basic text formatting,
More informationSo far, Wednesday, February 03, :47 PM. So far,
Binding_and_Refinement Page 1 So far, 3:47 PM So far, We've created a simple persistence project with cloud references. There were lots of relationships between entities that must be fulfilled. How do
More informationGWT in Action by Robert Hanson and Adam Tacy
SAMPLE CHAPTER GWT in Action by Robert Hanson and Adam Tacy Chapter 10 Copyright 2007 Manning Publications brief contents PART 1 GETTING STARTED...1 1 Introducing GWT 3 2 Creating the default application
More informationHTML Summary. All of the following are containers. Structure. Italics Bold. Line Break. Horizontal Rule. Non-break (hard) space.
HTML Summary Structure All of the following are containers. Structure Contains the entire web page. Contains information
More informationThe Google Web Toolkit (GWT): Extended GUI Widgets
2013 Marty Hall & Yaakov Chaikin The Google Web Toolkit (GWT): Extended GUI Widgets (GWT 2.5 Version) Originals of Slides and Source Code for Examples: http://courses.coreservlets.com/course-materials/gwt.html
More informationAbout the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. Laravel
About the Tutorial Laravel is a powerful MVC PHP framework, designed for developers who need a simple and elegant toolkit to create full-featured web applications. Laravel was created by Taylor Otwell.
More informationIBM Forms V8.0 Custom Themes IBM Corporation
IBM Forms V8.0 Custom Themes Agenda 2 Overview Class Names How to Use Best Practice Styling Form Items Test Custom CSS Sample Overview 3 To create custom theme you must be familiar with the basic concept
More informationjmaki Overview Sang Shin Java Technology Architect Sun Microsystems, Inc.
jmaki Overview Sang Shin Java Technology Architect Sun Microsystems, Inc. sang.shin@sun.com www.javapassion.com Agenda What is and Why jmaki? jmaki widgets Using jmaki widget - List widget What makes up
More informationTaming AJAX with GWT. Scott Blum. Scott Blum Taming AJAX with GWT Page 1
Taming AJAX with GWT Scott Blum Scott Blum Taming AJAX with GWT Page 1 Overview Why AJAX? Why GWT? How GWT Works Add GWT to your App Advanced Techniques Summary Q & A Scott Blum Taming AJAX with GWT Page
More informationIntroduction to WEB PROGRAMMING
Introduction to WEB PROGRAMMING Web Languages: Overview HTML CSS JavaScript content structure look & feel transitions/animation s (CSS3) interaction animation server communication Full-Stack Web Frameworks
More informationCSCB20 Week 7. Introduction to Database and Web Application Programming. Anna Bretscher Winter 2017
CSCB20 Week 7 Introduction to Database and Web Application Programming Anna Bretscher Winter 2017 Cascading Style Sheets (CSS) Examples of CSS CSS provides a powerful and stillevolving toolkit of style
More informationSession 4. Style Sheets (CSS) Reading & References. A reference containing tables of CSS properties
Session 4 Style Sheets (CSS) 1 Reading Reading & References en.wikipedia.org/wiki/css Style Sheet Tutorials www.htmldog.com/guides/cssbeginner/ A reference containing tables of CSS properties web.simmons.edu/~grabiner/comm244/weekthree/css-basic-properties.html
More informationVarargs Training & Software Development Centre Private Limited, Module: HTML5, CSS3 & JavaScript
PHP Curriculum Module: HTML5, CSS3 & JavaScript Introduction to the Web o Explain the evolution of HTML o Explain the page structure used by HTML o List the drawbacks in HTML 4 and XHTML o List the new
More informationStudy Guide 2 - HTML and CSS - Chap. 6,8,10,11,12 Name - Alexia Bernardo
Study Guide 2 - HTML and CSS - Chap. 6,8,10,11,12 Name - Alexia Bernardo Note: We skipped Study Guide 1. If you d like to review it, I place a copy here: https:// people.rit.edu/~nbbigm/studyguides/sg-1.docx
More informationStamp Builder. Documentation. v1.0.0
Stamp Email Builder Documentation http://getemailbuilder.com v1.0.0 THANK YOU FOR PURCHASING OUR EMAIL EDITOR! This documentation covers all main features of the STAMP Self-hosted email editor. If you
More informationGoogle Wave Client: Powered by GWT. Adam Schuck 28 May, 2009
Google Wave Client: Powered by GWT Adam Schuck 28 May, 2009 Google Wave client search abuse detection saved searches folders authentication access control playback waves attachments gadgets contacts presence
More informationSimplifying GWT RPC with
2012 Yaakov Chaikin Simplifying GWT RPC with Open Source GWT-Tools RPC Service (GWT 2.4 Version) Originals of Slides and Source Code for Examples: http://courses.coreservlets.com/course-materials/gwt.html
More informationIntroduction to using HTML to design webpages
Introduction to using HTML to design webpages #HTML is the script that web pages are written in. It describes the content and structure of a web page so that a browser is able to interpret and render the
More informationFast, Easy, Beautiful: Pick Three Building User Interfaces with Google Web Toolkit. Chris Schalk October 29, 2007
Fast, Easy, Beautiful: Pick Three Building User Interfaces with Google Web Toolkit Chris Schalk October 29, 2007 Today s Topics The potential of Ajax - why we re all here GWT brings software engineering
More informationGoogle Web Toolkit for quick relief of AJAX pain. Kelly Norton & Miguel Méndez
Google Web Toolkit for quick relief of AJAX pain. Kelly Norton & Miguel Méndez Overview the pleasure of using AJAX apps. the pain of creating them. getting some pain relief with GWT. the tutorial part.
More informationIndex LICENSED PRODUCT NOT FOR RESALE
Index LICENSED PRODUCT NOT FOR RESALE A Absolute positioning, 100 102 with multi-columns, 101 Accelerometer, 263 Access data, 225 227 Adding elements, 209 211 to display, 210 Animated boxes creation using
More informationCooking with GWT: Recipes for the perfect dinner. Alberto Mijares Basel, Switzerland
Cooking with GWT: Recipes for the perfect dinner Alberto Mijares alberto.mijares@canoo.com Basel, Switzerland Introduction Who am I? What do I do? What is GWT? What does GWT try to solve? What does GWT
More informationE-Nature Tutorial for Google Web Toolkit. Dominik Erbsland
E-Nature Tutorial for Google Web Toolkit Dominik Erbsland (de@profzone.ch) Version 0.1 November 2, 2006 Contents 1 Preface 1 1.1 Why this tutorial............................. 1 2 Creating A Project 2
More informationIBM Bluemix Node-RED Watson Starter
IBM Bluemix Node-RED Watson Starter Cognitive Solutions Application Development IBM Global Business Partners Duration: 45 minutes Updated: Feb 14, 2018 Klaus-Peter Schlotter kps@de.ibm.com Version 1 Overview
More informationPGT T3CHNOLOGY SCOUTING. Google Webtoolkit. JSF done right?
Google Webtoolkit JSF done right? Session topics Web 2.0, Ajax GWT What is it? Java EE and the Web GWT and Java EE JSF done right? Time for a demo? 2 2008 Dipl.-Wing. P. G. Taboada Web 2.0 Hard to define
More informationGWT and jmaki: Expanding the GWT Universe. Carla Mott, Staff Engineer, Sun Microsystems Greg Murray, Ajax Architect, Sun Microsystems
GWT and jmaki: Expanding the GWT Universe Carla Mott, Staff Engineer, Sun Microsystems Greg Murray, Ajax Architect, Sun Microsystems Learn how to enhance Google Web Toolkit (GWT) to include many Ajax enabled
More informationGoogle Web Toolkit. Google Web Toolkit. by Chris Seddon CRS Enterprises Ltd 1
Google Web Toolkit by Chris Seddon 2000-11 CRS Enterprises Ltd 1 Google Web Toolkit 1. Introduction to GWT 2. Introduction JavaScript and CSS 3. GWT : User Interface 4. Events 5. Internationalization and
More informationIndex. alt, 38, 57 class, 86, 88, 101, 107 href, 24, 51, 57 id, 86 88, 98 overview, 37. src, 37, 57. backend, WordPress, 146, 148
Index Numbers & Symbols (angle brackets), in HTML, 47 : (colon), in CSS, 96 {} (curly brackets), in CSS, 75, 96. (dot), in CSS, 89, 102 # (hash mark), in CSS, 87 88, 99 % (percent) font size, in CSS,
More informationIntroduction Haim Michael. All Rights Reserved.
Architecture Introduction Applications developed using Vaadin include a web application servlet based part, user interface components, themes that dictate the look & feel and a data model that enables
More informationFast, Easy, Beautiful: Pick Three Introducing Google Web Toolkit (GWT)
Fast, Easy, Beautiful: Pick Three Introducing Google Web Toolkit (GWT) Xin Zhou Google, Beijing, China May 31, 2007 Google s APIs Building no-compromise AJAX applications with Java technology using Google
More informationHacking Web Sites 3) Insecure Direct Object Reference
Hacking Web Sites 3) Insecure Direct Object Reference Emmanuel Benoist Spring Term 2017 Berner Fachhochschule Haute cole spcialise bernoise Berne University of Applied Sciences 1 Table of Contents Introduction
More informationFINALTERM EXAMINATION Spring 2009 CS506- Web Design and Development Solved by Tahseen Anwar
FINALTERM EXAMINATION Spring 2009 CS506- Web Design and Development Solved by Tahseen Anwar www.vuhelp.pk Solved MCQs with reference. inshallah you will found it 100% correct solution. Time: 120 min Marks:
More informationGoogle Plugin for Eclipse
Google Plugin for Eclipse Not just for newbies anymore Miguel Mendez Tech Lead - Google Plugin for Eclipse 1 Overview Background AJAX Google Web Toolkit (GWT) App Engine for Java Plugin Design Principles
More informationCascading Style Sheets Level 2
Cascading Style Sheets Level 2 Course Objectives, Session 1 Level 1 Quick Review Chapter 6 Revisit: Web Fonts Chapter 8: Adding Graphics to Web Pages Chapter 9: Sprucing Up Your Site s Navigation Begin
More informationConfiguring Hotspots
CHAPTER 12 Hotspots on the Cisco NAC Guest Server are used to allow administrators to create their own portal pages and host them on the Cisco NAC Guest Server. Hotspots created by administrators can be
More informationApplication Development in JAVA. Data Types, Variable, Comments & Operators. Part I: Core Java (J2SE) Getting Started
Application Development in JAVA Duration Lecture: Specialization x Hours Core Java (J2SE) & Advance Java (J2EE) Detailed Module Part I: Core Java (J2SE) Getting Started What is Java all about? Features
More informationThis course is designed for web developers that want to learn HTML5, CSS3, JavaScript and jquery.
HTML5/CSS3/JavaScript Programming Course Summary Description This class is designed for students that have experience with basic HTML concepts that wish to learn about HTML Version 5, Cascading Style Sheets
More informationHTML + CSS. ScottyLabs WDW. Overview HTML Tags CSS Properties Resources
HTML + CSS ScottyLabs WDW OVERVIEW What are HTML and CSS? How can I use them? WHAT ARE HTML AND CSS? HTML - HyperText Markup Language Specifies webpage content hierarchy Describes rough layout of content
More informationThe Google Web Toolkit (GWT):
2013 Marty Hall & Yaakov Chaikin The Google Web Toolkit (GWT): Introduction to Cell Widgets (GWT 2.5 Version) Originals of Slides and Source Code for Examples: http://courses.coreservlets.com/course-materials/gwt.html
More informationDynamic Product Options extension for Magento2. User Guide
Dynamic Product Options extension for Magento2 User Guide version 2.0 Website: http://www.itoris.com Page 1 Contents 1. Introduction... 4 2. Installation... 5 2.1. System Requirements... 5 2.2. Installation...
More informationIn this exercise we shall be using jsfiddle.net to build a simple data driven web site in HTML5. Building Blocks
Web Building Blocks In this exercise we are going to look at the four building blocks of the web: structure, style, content and action. This methodology forms the basis of a data driven web site. In this
More informationLab Introduction to Cascading Style Sheets
Lab Introduction to Cascading Style Sheets For this laboratory you will need a basic text editor and a browser. In the labs, winedt or Notepad++ is recommended along with Firefox/Chrome For this activity,
More informationCOPYRIGHTED MATERIAL. Contents. Chapter 1: Creating Structured Documents 1
59313ftoc.qxd:WroxPro 3/22/08 2:31 PM Page xi Introduction xxiii Chapter 1: Creating Structured Documents 1 A Web of Structured Documents 1 Introducing XHTML 2 Core Elements and Attributes 9 The
More informationUnveiling the Basics of CSS and how it relates to the DataFlex Web Framework
Unveiling the Basics of CSS and how it relates to the DataFlex Web Framework Presented by Roel Fermont 1 Today more than ever, Cascading Style Sheets (CSS) have a dominant place in online business. CSS
More informationCIS 408 Internet Computing Sunnie Chung
Project #2: CIS 408 Internet Computing Sunnie Chung Building a Personal Webpage in HTML and Java Script to Learn How to Communicate Your Web Browser as Client with a Form Element with a Web Server in URL
More informationyawrap Documentation Release Michal Kaczmarczyk
yawrap Documentation Release 0.4.0 Michal Kaczmarczyk Jul 12, 2018 Contents 1 Features 3 2 Usage Examples 5 3 Contents 11 4 Indices and tables 19 i ii Yawrap is a powerful, lightweight, pythonic pseudo-static
More informationHacking Web Sites Cross Site Scripting
Hacking Web Sites Cross Site Scripting Emmanuel Benoist Spring Term 2018 Berner Fachhochschule Haute cole spcialise bernoise Berne University of Applied Sciences 1 Table of Contents Presentation Stored
More informationIntroduction to Web Application Development Using JEE, Frameworks, Web Services and AJAX
Introduction to Web Application Development Using JEE, Frameworks, Web Services and AJAX Duration: 5 Days US Price: $2795 UK Price: 1,995 *Prices are subject to VAT CA Price: CDN$3,275 *Prices are subject
More informationThe course also includes an overview of some of the most popular frameworks that you will most likely encounter in your real work environments.
Web Development WEB101: Web Development Fundamentals using HTML, CSS and JavaScript $2,495.00 5 Days Replay Class Recordings included with this course Upcoming Dates Course Description This 5-day instructor-led
More informationWriting Servlets and JSPs p. 1 Writing a Servlet p. 1 Writing a JSP p. 7 Compiling a Servlet p. 10 Packaging Servlets and JSPs p.
Preface p. xiii Writing Servlets and JSPs p. 1 Writing a Servlet p. 1 Writing a JSP p. 7 Compiling a Servlet p. 10 Packaging Servlets and JSPs p. 11 Creating the Deployment Descriptor p. 14 Deploying Servlets
More information5.1 Registration and Configuration
5.1 Registration and Configuration Registration and Configuration Apache Wink provides several methods for registering resources and providers. This chapter describes registration methods and Wink configuration
More informationwelcome to BOILERCAMP HOW TO WEB DEV
welcome to BOILERCAMP HOW TO WEB DEV Introduction / Project Overview The Plan Personal Website/Blog Schedule Introduction / Project Overview HTML / CSS Client-side JavaScript Lunch Node.js / Express.js
More informationUser Interaction: jquery
User Interaction: jquery Assoc. Professor Donald J. Patterson INF 133 Fall 2012 1 jquery A JavaScript Library Cross-browser Free (beer & speech) It supports manipulating HTML elements (DOM) animations
More informationImplementing a chat button on TECHNICAL PAPER
Implementing a chat button on TECHNICAL PAPER Contents 1 Adding a Live Guide chat button to your Facebook page... 3 1.1 Make the chat button code accessible from your web server... 3 1.2 Create a Facebook
More informationGWT MOCK TEST GWT MOCK TEST I
http://www.tutorialspoint.com GWT MOCK TEST Copyright tutorialspoint.com This section presents you various set of Mock Tests related to GWT. You can download these sample mock tests at your local machine
More informationCSS: formatting webpages
CSS: formatting webpages Why CSS? separate content from formatting (style) style can be changed easily without rewriting webpages keep formatting consistent across website allows more advanced formatting
More informationGoogle Web Toolkit. Can help you create amazing apps. San Francisco Java User Group Oct 13, 2009
Google Web Toolkit Can help you create amazing apps San Francisco Java User Group Oct 13, 2009 Fred Sauer Developer Advocate fredsa@google.com Twitter: @fredsa 1 Agenda Introduction Selecting a language
More information7) Malicious File Execution
7) Malicious File Execution Emmanuel Benoist Spring Term 2017 Berner Fachhochschule Haute cole spcialise bernoise Berne University of Applied Sciences 1 Table of Contents Examples of Attacks Presentation
More informationCreating a Job Aid using HTML and CSS
Creating a Job Aid using HTML and CSS In this tutorial we will apply what we have learned about HTML and CSS. We will create a web page containing a job aid about how to buy from a vending machine. Optionally,
More informationOverview of Web Application Development
Overview of Web Application Development Web Technologies I. Zsolt Tóth University of Miskolc 2018 Zsolt Tóth (University of Miskolc) Web Apps 2018 1 / 34 Table of Contents Overview Architecture 1 Overview
More informationTHE NEW ERA OF WEB DEVELOPMENT. qooxdoo. Andreas Ecker, Derrell Lipman
THE NEW ERA OF WEB DEVELOPMENT qooxdoo Andreas Ecker, Derrell Lipman The Ajax Experience, 25-27 July 2007 1 Introduction Client-side JavaScript framework Professional application development Comprehensive
More information<body bgcolor=" " fgcolor=" " link=" " vlink=" " alink=" "> These body attributes have now been deprecated, and should not be used in XHTML.
CSS Formatting Background When HTML became popular among users who were not scientists, the limited formatting offered by the built-in tags was not enough for users who wanted a more artistic layout. Netscape,
More informationLab 1: Introducing HTML5 and CSS3
CS220 Human- Computer Interaction Spring 2015 Lab 1: Introducing HTML5 and CSS3 In this lab we will cover some basic HTML5 and CSS, as well as ways to make your web app look and feel like a native app.
More information