9264387

Upload: christina-richardson

Post on 02-Jun-2018

220 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/10/2019 9264387

    1/16

    Behzad Samin

    0

    An End-to-End Overview of a

    RESTful Web Service

  • 8/10/2019 9264387

    2/16

    AgendaOverview (45 minutes)

    jQuery, Jersey, JDO (Behzad)

    Google App Engine (David and Cory)

    Demo (45 minutes)

    Showing a sample application (Behzad).

    Highlighting some of the Google App Enginefeatures to make development and support easier(David and Cory).

    Q&A (30 minutes)

    1

  • 8/10/2019 9264387

    3/16

    Objectives

    This is a presentation to explore a RESTful web

    service end to end leveraging the following

    technologies:

    jQuery (internationalization, list grid, context menu )

    Jersey

    JDO

    Google App Engine (cloud to virtualize application

    server & data store)

    2

  • 8/10/2019 9264387

    4/16

  • 8/10/2019 9264387

    5/16

    internationalizationjQuery.i18n.propertiesis a lightweight jQuery plugin forproviding internationalization to javascript from .propertiesfiles, just like in Java Resource Bundles.

    Include plugin in your main page. Load resource bundles based on browser or user

    choice.

    Get values per keys e.g. $.i18n.prop(title')

    4

  • 8/10/2019 9264387

    6/16

  • 8/10/2019 9264387

    7/16

  • 8/10/2019 9264387

    8/16

    REST vs. SOAP

    7

  • 8/10/2019 9264387

    9/16

    Simple Object Access Protocol (SOAP) Web Service

    8

  • 8/10/2019 9264387

    10/16

    REpresentational State Transfer (REST) Web Service

    9

  • 8/10/2019 9264387

    11/16

    Building RESTful Web Services in

    JerseyJersey is an open source, JAX-RS(JSR 311) Reference

    Implementation for building RESTful Web services.

    Jersey is more than a Reference Implementation because itprovides anAPIso that developers may extend Jersey tosuit their needs.

    Getting Started:

    http://jersey.java.net/nonav/documentation/latest/index.html A Good Example

    http://www.vogella.de/articles/REST/article.html#rest

    10

    http://jsr311.dev.java.net/nonav/releases/1.1/index.htmlhttp://jersey.java.net/nonav/apidocs/latest/jersey/index.htmlhttp://jersey.java.net/nonav/documentation/latest/index.htmlhttp://www.vogella.de/articles/REST/article.htmlhttp://www.vogella.de/articles/REST/article.htmlhttp://jersey.java.net/nonav/documentation/latest/index.htmlhttp://jersey.java.net/nonav/apidocs/latest/jersey/index.htmlhttp://jsr311.dev.java.net/nonav/releases/1.1/index.htmlhttp://jsr311.dev.java.net/nonav/releases/1.1/index.htmlhttp://jsr311.dev.java.net/nonav/releases/1.1/index.html
  • 8/10/2019 9264387

    12/16

  • 8/10/2019 9264387

    13/16

  • 8/10/2019 9264387

    14/16

    Google App EngineRun your web apps on Google's infrastructure:

    Easy to build

    Easy to maintain

    Easy to scale

    Focus on your app, leave the rest to Google Zero to sixty: App Engine enables your application to scale automatically

    without worrying about managing machines.

    You're in control: The simple, web-based dashboard makes it easy tomanage your application without having to babysit it.

    Google offers a Eclipseplugin that provides both Google App Engine

    and GWTdevelopment capabilities. Install theplugins fromhttp://dl.google.com/eclipse/plugin/3.7via the Eclipse updatemanager.

    13

    http://www.vogella.de/articles/Eclipse/article.htmlhttp://www.vogella.de/articles/GoogleAppEngineJava/article.htmlhttp://dl.google.com/eclipse/plugin/3.7http://dl.google.com/eclipse/plugin/3.7http://dl.google.com/eclipse/plugin/3.7http://www.vogella.de/articles/Eclipse/article.htmlhttp://dl.google.com/eclipse/plugin/3.7http://www.vogella.de/articles/Eclipse/article.htmlhttp://www.vogella.de/articles/Eclipse/article.htmlhttp://www.vogella.de/articles/Eclipse/article.htmlhttp://www.vogella.de/articles/Eclipse/article.htmlhttp://dl.google.com/eclipse/plugin/3.7http://www.vogella.de/articles/GWT/article.htmlhttp://www.vogella.de/articles/GoogleAppEngineJava/article.htmlhttp://www.vogella.de/articles/Eclipse/article.html
  • 8/10/2019 9264387

    15/16

    Run Applications LocallyThe Eclipse Plugin allows to run applications for the

    Google App Engine

    locally in an environment which simulates the

    environment on the App Engine.

    You also have a local admin console(http://localhost:8888/_ah/admin/) which

    allows you to see: your local datastore

    the task queue,

    inbound email and XMPP traffic.

    14

    http://localhost:8888/_ah/admin/http://localhost:8888/_ah/admin/
  • 8/10/2019 9264387

    16/16

    Run Applications in Google CloudTo create an application on the Google App Engine, create an

    application on

    the Google App Engine website (https://appengine.google.com/).

    Afterwards you can locally create an web application and uploadthis

    application to the created application on the Google App Engine.

    To create an application on theApp Engine press the button"Create an application" and select an application name. You have to

    choose one which is still available.

    15

    https://appengine.google.com/http://appengine.google.com/http://appengine.google.com/https://appengine.google.com/